Example usage for com.google.common.collect Iterators filter

List of usage examples for com.google.common.collect Iterators filter

Introduction

In this page you can find the example usage for com.google.common.collect Iterators filter.

Prototype

@SuppressWarnings("unchecked") 
@GwtIncompatible("Class.isInstance")
@CheckReturnValue
public static <T> UnmodifiableIterator<T> filter(Iterator<?> unfiltered, Class<T> desiredType) 

Source Link

Document

Returns all elements in unfiltered that are of the type desiredType .

Usage

From source file:org.jgrades.lic.service.MacRule.java

@Override
public boolean isValid(Licence licence) {
    LOGGER.debug("Start checking MacRule for licence with uid {}", licence.getUid());
    List<LicenceProperty> properties = licence.getProperties();
    UnmodifiableIterator<LicenceProperty> macPropertyIterator = Iterators.filter(properties.iterator(),
            licenceProperty -> licenceProperty.getName().equals(MAC_PROPERTY_NAME));
    LicenceProperty property = null;/*  ww w.  j a  v a  2 s .  c o  m*/
    if (macPropertyIterator.hasNext()) {
        property = macPropertyIterator.next();
    }

    if (Optional.ofNullable(property).isPresent()) {
        return performValidation(licence, property);
    } else {
        LOGGER.debug("Mac property not found for licence with uid {}", licence.getUid());
    }
    return true;
}

From source file:org.locationtech.geogig.data.FindFeatureTypeTrees.java

@Override
protected List<NodeRef> _call() {
    Preconditions.checkNotNull(refSpec, "refSpec was not provided");
    Iterator<NodeRef> allTrees;
    try {// w ww . java2  s . c  o  m
        allTrees = context.command(LsTreeOp.class).setReference(refSpec)
                .setStrategy(LsTreeOp.Strategy.DEPTHFIRST_ONLY_TREES).call();
    } catch (IllegalArgumentException noWorkHead) {
        return ImmutableList.of();
    }
    Iterator<NodeRef> typeTrees = Iterators.filter(allTrees, new Predicate<NodeRef>() {
        @Override
        public boolean apply(NodeRef input) {
            ObjectId metadataId = input.getMetadataId();
            return !metadataId.isNull();
        }
    });

    return ImmutableList.copyOf(typeTrees);
}

From source file:org.richfaces.ui.select.AbstractSelectManyComponent.java

public Iterator<UIColumn> columns() {
    return Iterators.filter(getChildren().iterator(), UIColumn.class);
}

From source file:com.analog.lyric.dimple.model.core.EdgeStateList.java

@Override
public Iterator<EdgeState> iterator() {
    // Skip over null entries
    return Iterators.filter(super.iterator(), Predicates.notNull());
}

From source file:eu.numberfour.n4js.analysis.ExceptionAnalyser.java

@Override
protected List<Diagnostic> getScriptErrors(Script script) {
    EcoreUtil.resolveAll(script.eResource());
    List<Diagnostic> diagnostics = super.getScriptErrors(script);
    Iterator<Expression> expressions = Iterators.filter(EcoreUtil2.eAll(script), Expression.class);
    List<Diagnostic> result = Lists
            .<Diagnostic>newArrayList(Iterables.filter(diagnostics, ExceptionDiagnostic.class));
    while (expressions.hasNext()) {
        Expression expression = expressions.next();
        RuleEnvironment ruleEnvironment = RuleEnvironmentExtensions.newRuleEnvironment(expression);
        Result<TypeRef> type = typeSystem.type(ruleEnvironment, expression);
        if (type.getRuleFailedException() != null) {
            Throwable cause = Throwables.getRootCause(type.getRuleFailedException());
            if (!(cause instanceof RuleFailedException)) {
                if (cause instanceof Exception) {
                    result.add(new ExceptionDiagnostic((Exception) cause));
                } else {
                    throw new RuntimeException(cause);
                }/*  w  w  w .  ja v a 2 s .  c  o  m*/
            }
        }
    }
    validator.validate(script.eResource(), CheckMode.ALL, CancelIndicator.NullImpl);
    return result;
}

From source file:org.bonitasoft.builder.artifact.ModelSearchEngine.java

@SuppressWarnings("unchecked")
public <T extends EObject> List<T> findAll(EObject container, Class<T> type) {
    return (List<T>) ImmutableList.copyOf(Iterators.filter(container.eAllContents(), instanceOf(type)))
            .asList();//from w  w w . j  av a2s.c o  m
}

From source file:org.polarsys.reqcycle.traceability.table.handlers.DeleteLinkHandler.java

@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
    ISelection currentSelection = HandlerUtil.getCurrentSelection(event);
    IWorkbenchPart activePart = HandlerUtil.getActivePart(event);
    if (activePart instanceof TraceabilityTableView) {
        TableController controller = ((TraceabilityTableView) activePart).getController();
        Iterator<?> iterator = ((IStructuredSelection) currentSelection).iterator();
        UnmodifiableIterator<TransverseLink> links = Iterators.filter(iterator, TransverseLink.class);
        controller.deleteTraceabilityLinks(links);
    }/*  w ww. j  av  a2  s  .com*/
    return null;
}

From source file:net.opentsdb.contrib.tsquare.support.DataPointsAsDoubles.java

/**
 * Iterates over data points, returning only those with the given timestamp.
 * //  ww w  . j  a va2s  .co m
 * @param points
 * @param withinMillisecondsRange timestamp range <i>in milliseconds</i>.
 */
public DataPointsAsDoubles(final DataPoints points, final Range<Long> withinMillisecondsRange) {
    this.timeRange = withinMillisecondsRange;

    Predicate<DataPoint> pred = new Predicate<DataPoint>() {
        public boolean apply(final DataPoint input) {
            return timeRange.contains(input.timestamp());
        }
    };

    this.iterator = Iterators.filter(points.iterator(), pred);
}

From source file:org.eclipse.xtext.parser.ParseResult.java

@Override
public Iterable<INode> getSyntaxErrors() {
    if (rootNode == null || !hasSyntaxErrors())
        return Collections.emptyList();
    return new Iterable<INode>() {
        @Override/*from w ww  .j  av  a  2  s .  c  o m*/
        @SuppressWarnings("unchecked")
        public Iterator<INode> iterator() {
            Iterator<? extends INode> result = Iterators.filter(((CompositeNode) rootNode).basicIterator(),
                    new Predicate<AbstractNode>() {
                        @Override
                        public boolean apply(AbstractNode input) {
                            return input.getSyntaxErrorMessage() != null;
                        }
                    });
            return (Iterator<INode>) result;
        }
    };
}

From source file:de.sanandrew.mods.turretmod.client.event.RenderForcefieldHandler.java

@SubscribeEvent
public void onRenderWorldLast(RenderWorldLastEvent event) {
    List<Entity> ffEntities = SAPUtils.getCasted(Minecraft.getMinecraft().theWorld.loadedEntityList);
    ffEntities = Lists.newArrayList(/*  w  w w .  j a va  2 s  .c o  m*/
            Iterators.filter(Iterators.forArray(ffEntities.toArray(new Entity[ffEntities.size()])),
                    PredicateRenderedEntities.INSTANCE));

    EntityLivingBase renderEntity = Minecraft.getMinecraft().renderViewEntity;
    double renderX = renderEntity.lastTickPosX
            + (renderEntity.posX - renderEntity.lastTickPosX) * event.partialTicks;
    double renderY = renderEntity.lastTickPosY
            + (renderEntity.posY - renderEntity.lastTickPosY) * event.partialTicks;
    double renderZ = renderEntity.lastTickPosZ
            + (renderEntity.posZ - renderEntity.lastTickPosZ) * event.partialTicks;

    ArrayList<ForcefieldCube> cubes = new ArrayList<>();

    int worldTicks = (int) (Minecraft.getMinecraft().theWorld.getTotalWorldTime() % Integer.MAX_VALUE);

    for (Entity entity : ffEntities) {
        ForcefieldProvider ffProvider = (ForcefieldProvider) entity;

        double entityX = entity.lastTickPosX + (entity.posX - entity.lastTickPosX) * event.partialTicks;
        double entityY = entity.lastTickPosY + (entity.posY - entity.lastTickPosY) * event.partialTicks;
        double entityZ = entity.lastTickPosZ + (entity.posZ - entity.lastTickPosZ) * event.partialTicks;

        ForcefieldCube cube = new ForcefieldCube(
                Vec3.createVectorHelper(entityX - renderX, entityY - renderY, entityZ - renderZ),
                ffProvider.getShieldBoundingBox(), SAPUtils.getRgbaFromColorInt(ffProvider.getShieldColor()));

        if (!entity.isEntityAlive() || !ffProvider.hasShieldActive()) {
            continue;
        }

        if (!this.currFfEntities.contains(entity)) {
            this.currFfEntities.add(entity);
        }

        for (ForcefieldCube intfCube : cubes) {
            cube.interfere(intfCube, false);
            intfCube.interfere(cube, true);
        }

        cubes.add(cube);
    }

    Iterator<Entity> currFfEntitiesIterator = this.currFfEntities.iterator();
    while (currFfEntitiesIterator.hasNext()) {
        Entity entity = currFfEntitiesIterator.next();
        ForcefieldProvider ffProvider = (ForcefieldProvider) entity;
        if (!entity.isEntityAlive() || !ffProvider.hasShieldActive() || !ffEntities.contains(entity)) {
            ForcefieldFadeOut ffFadedOut = new ForcefieldFadeOut(entity.posX, entity.posY, entity.posZ,
                    SAPUtils.getRgbaFromColorInt(ffProvider.getShieldColor()),
                    ffProvider.getShieldBoundingBox());
            this.fadeOutFfields.add(ffFadedOut);
            currFfEntitiesIterator.remove();
        }
    }

    Iterator<ForcefieldFadeOut> fadeOutFfieldsIterator = this.fadeOutFfields.iterator();
    while (fadeOutFfieldsIterator.hasNext()) {
        ForcefieldFadeOut shield = fadeOutFfieldsIterator.next();
        if (shield.rgbaValues.getAlpha() <= 0) {
            fadeOutFfieldsIterator.remove();
        } else {
            ForcefieldCube cube = new ForcefieldCube(Vec3.createVectorHelper(shield.posX - renderX,
                    shield.posY - renderY, shield.posZ - renderZ), shield.shieldBB, shield.rgbaValues);

            cubes.add(cube);

            shield.rgbaValues = new RGBAValues(shield.rgbaValues.getRed(), shield.rgbaValues.getGreen(),
                    shield.rgbaValues.getBlue(), Math.max(0, shield.rgbaValues.getAlpha() - 10));
        }
    }

    Tessellator tess = Tessellator.instance;
    for (int pass = 1; pass <= 5; pass++) {
        tess.startDrawingQuads();

        for (ForcefieldCube cube : cubes) {
            cube.draw(tess);
        }

        GL11.glEnable(GL11.GL_BLEND);
        OpenGlHelper.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA, GL11.GL_ONE, GL11.GL_ZERO);
        GL11.glDepthMask(false);
        GL11.glDisable(GL11.GL_CULL_FACE);

        float transformTexAmount = worldTicks + event.partialTicks;
        float texTranslateX = 0.0F;
        float texTranslateY = 0.0F;

        switch (pass) {
        case 1:
            texTranslateX = transformTexAmount * -0.011F;
            texTranslateY = transformTexAmount * 0.011F;
            Minecraft.getMinecraft().renderEngine.bindTexture(Textures.TURRET_FORCEFIELD_P1.getResource());
            break;
        case 2:
            texTranslateX = transformTexAmount * 0.009F;
            texTranslateY = transformTexAmount * 0.009F;
            Minecraft.getMinecraft().renderEngine.bindTexture(Textures.TURRET_FORCEFIELD_P2.getResource());
            break;
        case 3:
            texTranslateX = transformTexAmount * -0.007F;
            texTranslateY = transformTexAmount * 0.007F;
            Minecraft.getMinecraft().renderEngine.bindTexture(Textures.TURRET_FORCEFIELD_P1.getResource());
            break;
        case 4:
            texTranslateX = transformTexAmount * 0.005F;
            texTranslateY = transformTexAmount * 0.005F;
            Minecraft.getMinecraft().renderEngine.bindTexture(Textures.TURRET_FORCEFIELD_P2.getResource());
            break;
        case 5:
            texTranslateX = transformTexAmount * 0.00F;
            texTranslateY = transformTexAmount * 0.00F;
            Minecraft.getMinecraft().renderEngine.bindTexture(Textures.TURRET_FORCEFIELD_P3.getResource());
            break;
        }

        GL11.glMatrixMode(GL11.GL_TEXTURE);
        GL11.glLoadIdentity();
        GL11.glTranslatef(texTranslateX, texTranslateY, 0.0F);
        GL11.glMatrixMode(GL11.GL_MODELVIEW);

        tess.draw();

        GL11.glMatrixMode(GL11.GL_TEXTURE);
        GL11.glLoadIdentity();
        GL11.glMatrixMode(GL11.GL_MODELVIEW);

        GL11.glDisable(GL11.GL_BLEND);
        GL11.glDepthMask(true);
        GL11.glEnable(GL11.GL_CULL_FACE);
    }
}