Example usage for com.google.common.collect ImmutableMap containsKey

List of usage examples for com.google.common.collect ImmutableMap containsKey

Introduction

In this page you can find the example usage for com.google.common.collect ImmutableMap containsKey.

Prototype

@Override
    public boolean containsKey(@Nullable Object key) 

Source Link

Usage

From source file:org.cspoker.client.common.gamestate.modifiers.NewDealState.java

public NewDealState(NewDealEvent newDealEvent, GameState previousGame) {
    this.previousGame = previousGame;
    this.event = newDealEvent;
    this.tableConfiguration = previousGame.getTableConfiguration();
    this.seatMap = previousGame.getSeatMap();

    ImmutableMap.Builder<PlayerId, PlayerState> playerStateBuilder = ImmutableMap.builder();

    for (final SeatedPlayer player : newDealEvent.getPlayers()) {
        if (player.isSittingIn()) {
            AbstractPlayerState playerState = new AbstractPlayerState() {

                @Override/* ww w.  j  a v  a 2 s  .c  om*/
                public String getName() {
                    return player.getName();
                }

                public int getBet() {
                    return 0;
                }

                @Override
                public int getTotalInvestment() {
                    return 0;
                }

                public EnumSet<Card> getCards() {
                    return EnumSet.noneOf(Card.class);
                }

                public int getStack() {
                    return player.getStackValue();
                }

                public boolean hasFolded() {
                    return false;
                }

                public PlayerId getPlayerId() {
                    return player.getId();
                }

                public SeatId getSeatId() {
                    return player.getSeatId();
                }

                @Override
                public boolean hasChecked() {
                    return false;
                }

                @Override
                public boolean hasBeenDealt() {
                    return true;
                }

                @Override
                public List<Integer> getBetProgression() {
                    return new ArrayList<Integer>();
                }

            };
            playerStateBuilder.put(player.getId(), playerState);
        }
    }
    //also add players that are not being dealt a card.
    ImmutableMap<PlayerId, PlayerState> playerStatesInEvent = playerStateBuilder.build();
    for (PlayerState p : previousGame.getAllSeatedPlayers()) {
        if (!playerStatesInEvent.containsKey(p.getPlayerId())) {
            playerStateBuilder.put(p.getPlayerId(), new ForwardingPlayerState(p) {

                @Override
                public boolean hasBeenDealt() {
                    return false;
                }

            });
        }
    }
    playerStates = playerStateBuilder.build();
}

From source file:org.locationtech.geogig.plumbing.merge.DiffMergeFeaturesOp.java

private Map<ObjectId, RevObject> getObjects() {

    final ObjectId ancestorMetadataId = commonAncestor.getMetadataId();
    final ObjectId mergetIntoMetadataId = mergeInto.getMetadataId();
    final ObjectId toMergeMetadataId = toMerge.getMetadataId();

    final ObjectId ancestorFeatureId = commonAncestor.getObjectId();
    final ObjectId featureAId = mergeInto.getObjectId();
    final ObjectId featureBId = toMerge.getObjectId();

    Set<ObjectId> ids = Sets.newHashSet(ancestorMetadataId, mergetIntoMetadataId, toMergeMetadataId,
            ancestorFeatureId, featureAId, featureBId);

    Iterator<RevObject> objsit = objectDatabase().getAll(ids, BulkOpListener.NOOP_LISTENER);

    ImmutableMap<ObjectId, RevObject> map = Maps.uniqueIndex(objsit, (o) -> o.getId());

    if (ids.size() != map.size()) {
        ids.forEach((id) -> checkState(map.containsKey(id), "Invalid reference: %s", id));
    }/*  ww w. java2s.c om*/
    return map;
}

From source file:com.facebook.buck.rules.modern.impl.DefaultClassInfo.java

private ImmutableMap<Field, Method> findMethodsForFields(Iterable<Field> parameterFields, Class<?> clazz) {
    Map<String, Field> possibleNamesMap = new LinkedHashMap<>();
    for (Field field : parameterFields) {
        String name = field.getName();
        String ending = name.substring(1);
        Character first = name.charAt(0);
        possibleNamesMap.put("get" + Character.toUpperCase(first) + ending, field);
        possibleNamesMap.put("is" + Character.toUpperCase(first) + ending, field);
        possibleNamesMap.put(name, field);
    }//from  w ww.j  ava2  s .  co m
    ImmutableMap.Builder<Field, Method> builder = ImmutableMap.builder();
    Queue<Class<?>> workQueue = new LinkedList<>();
    Set<Class<?>> seen = new HashSet<>();
    // Collect the superclasses first so that they are added before interfaces. That seems more
    // aesthetically pleasing to me.
    for (Class<?> current = clazz; !Object.class.equals(current); current = current.getSuperclass()) {
        workQueue.add(current);
    }
    while (!workQueue.isEmpty()) {
        Class<?> cls = workQueue.poll();
        if (seen.add(cls)) {
            workQueue.addAll(Arrays.asList(cls.getInterfaces()));
            if (cls != clazz) {
                for (final Method method : cls.getDeclaredMethods()) {
                    Field match = possibleNamesMap.remove(method.getName());
                    if (match != null) {
                        builder.put(match, method);
                    }
                }
            }
        }
    }
    ImmutableMap<Field, Method> result = builder.build();
    List<Field> badFields = new ArrayList<>();
    for (Field field : parameterFields) {
        if (result.containsKey(field)) {
            // Found a match.
            continue;
        }
        if (field.getName().equals("hashCode")) {
            // From prehash=true.
            continue;
        }
        badFields.add(field);
    }

    Preconditions.checkState(badFields.isEmpty(), new Object() {
        @Override
        public String toString() {
            return String.format("Could not find methods for fields of class %s: <%s>", clazz.getName(),
                    Joiner.on(", ").join(badFields.stream().map(Field::getName).iterator()));
        }
    });
    return result;
}

From source file:springfox.documentation.builders.OperationBuilder.java

private Set<ResponseMessage> mergeResponseMessages(Set<ResponseMessage> responseMessages) {
    //Add logic to consolidate the response messages
    ImmutableMap<Integer, ResponseMessage> responsesByCode = Maps.uniqueIndex(this.responseMessages,
            byStatusCode());//  w  w w  .ja  va  2  s  .  c om
    Set<ResponseMessage> merged = newHashSet(this.responseMessages);
    for (ResponseMessage each : responseMessages) {
        if (responsesByCode.containsKey(each.getCode())) {
            ResponseMessage responseMessage = responsesByCode.get(each.getCode());
            String message = defaultIfAbsent(emptyToNull(each.getMessage()), responseMessage.getMessage());
            ModelReference responseWithModel = defaultIfAbsent(each.getResponseModel(),
                    responseMessage.getResponseModel());
            merged.remove(responseMessage);
            merged.add(new ResponseMessageBuilder().code(each.getCode()).message(message)
                    .responseModel(responseWithModel).headersWithDescription(each.getHeaders()).build());
        } else {
            merged.add(each);
        }
    }
    return merged;
}

From source file:nl.vumc.biomedbridges.examples.AllExamplesCheck.java

/**
 * Run all examples on a specific Galaxy server.
 *
 * @param serverUrl      the URL of the Galaxy server.
 * @param exampleClasses the example classes to run.
 * @param skipExamples   the examples to skip for specific servers.
 * @return the server report: [server URL]: [successful example count] '/' [attempt count] " [" failures "]".
 *///from   ww  w . java 2  s  .  c  o  m
private String runExamplesOnServer(final String serverUrl,
        final List<Class<? extends AbstractBaseExample>> exampleClasses,
        final ImmutableMap<String, List<Class<? extends AbstractBaseExample>>> skipExamples) {
    logger.warn("Running examples:");
    int successCount = 0;
    int skipCount = 0;
    final List<String> failures = new ArrayList<>();
    for (final Class<? extends AbstractBaseExample> exampleClass : exampleClasses) {
        if (!skipExamples.containsKey(serverUrl) || !skipExamples.get(serverUrl).contains(exampleClass)) {
            if (runExampleOnServer(serverUrl, exampleClass))
                successCount++;
            else
                failures.add(exampleClass.getSimpleName());
        } else {
            logger.warn("- The example {} is skipped for server {}.", exampleClass.getSimpleName(), serverUrl);
            skipCount++;
        }
    }
    logger.warn("");
    final String successRate = String.format("%d/%d", successCount, exampleClasses.size() - skipCount);
    logger.warn("Success rate: {}.", successRate);
    logger.warn("");
    logger.warn("");

    return serverUrl + ": " + successRate + " [" + Joiner.on(", ").join(failures) + "]";
}

From source file:org.apache.flume.source.SNMPQuerySource.java

@Override
public void configure(Context context) {
    ImmutableMap<String, String> parameters;
    String baseString = "oid";
    boolean notFound = true;
    int i = 0;/*from   w  w  w  . ja  v  a 2  s.c  o  m*/

    parameters = context.getParameters();
    logger.info("v1");
    logger.info("parameters: " + parameters);

    pdu = new PDU();

    do {
        i++;
        if (!parameters.containsKey(baseString + i)) {
            notFound = false;
        } else {
            logger.info("parameter: " + parameters.get(baseString + i));
            pdu.add(new VariableBinding(new OID(parameters.get(baseString + i))));
        }
    } while (notFound);

    bindAddress = context.getString("host");
    bindPort = context.getInteger("port", DEFAULT_PORT);
    delayQuery = context.getInteger("delay", DEFAULT_DELAY);
}

From source file:com.isotrol.impe3.pms.core.impl.PortalConfigurationManagerImpl.java

private void setValues(ConfigurationDefinition<?> cd, ConfigurationEntity entity,
        Collection<ConfigurationItemDTO> configuration) throws PMSException {
    checkNotNull(configuration);//from ww w.j a  va2  s. c o m
    checkArgument(!configuration.isEmpty() || cd.getMBPParameters().isEmpty());
    final Map<String, ConfigurationValue> values = entity.getValues();
    values.clear();
    final ImmutableMap<String, Item> parameters = cd.getParameters();
    for (final ConfigurationItemDTO itemDTO : configuration) {
        final String name = itemDTO.getKey();
        checkNotNull(name);
        checkArgument(!values.containsKey(name));
        checkArgument(parameters.containsKey(name));
        final Item item = parameters.get(name);
        final String value = itemDTO.getCurrentValue();
        if (value == null) {
            if (item.isMVP()) {
                logger.error("Configuration [{}] type [{}]: Required item [{}].",
                        new Object[] { entity.getId().toString(), cd.getType().getName(), name });
                throw new IllegalArgumentException(); // TODO
            }
            continue;
        }
        final ConfigurationValue configValue = new ConfigurationValue();
        final Class<?> type = item.getType();
        if (item.isEnum()) {
            configValue.setStringValue(((Enum<?>) item.fromString(value)).name());
        } else if (String.class == type) {
            configValue.setStringValue(value);
        } else if (Integer.class == type) {
            configValue.setIntegerValue(Integer.valueOf(value));
        } else if (FileId.class == type) {
            FileEntity file = load(FileEntity.class, value, NotFoundProviders.FILE);
            if (file.getPurpose() == FilePurpose.UNKNOWN) {
                file.setPurpose(FilePurpose.CONFIG);
            }
            NotFoundProviders.FILE.checkCondition(file.getPurpose() == FilePurpose.CONFIG, value);
            if (item.isCompressed()) {
                file.compress();
            }
            file.setBundle(item.isBundle());
            file.setDownloadable(item.isDownloadable());
            configValue.setFileValue(file);
        } else if (Category.class == type) {
            configValue.setCategoryValue(load(CategoryEntity.class, value, NotFoundProviders.CATEGORY));
        } else if (ContentType.class == type) {
            configValue
                    .setContentTypeValue(load(ContentTypeEntity.class, value, NotFoundProviders.CONTENT_TYPE));
        } else if (Boolean.class == type) {
            configValue.setBooleanValue(Boolean.valueOf(value));
        } else {
            logger.error("Configuration [{}] type [{}] item [{}] Invalid type.",
                    new Object[] { entity.getId().toString(), cd.getType().getName(), name });
            // TODO: other types.
            throw new IllegalStateException();
        }
        values.put(name, configValue);
    }
    for (final Item item : parameters.values()) {
        checkState(!item.isMVP() || values.containsKey(item.getParameter()));
    }
}

From source file:com.isotrol.impe3.pms.core.impl.ConfigurationManagerImpl.java

private void setValues(PortalConfigurationDefinition<?> cd, ConfigurationEntity entity,
        Collection<ConfigurationItemDTO> configuration) throws PMSException {
    checkNotNull(configuration);/*from ww  w  .  ja  v a  2 s  . c  om*/
    checkArgument(!configuration.isEmpty() || cd.getMBPParameters().isEmpty());
    final Map<String, ConfigurationValue> values = entity.getValues();
    values.clear();
    final ImmutableMap<String, Item> parameters = cd.getParameters();
    for (final ConfigurationItemDTO itemDTO : configuration) {
        final String name = itemDTO.getKey();
        checkNotNull(name);
        checkArgument(!values.containsKey(name));
        checkArgument(parameters.containsKey(name));
        final Item item = parameters.get(name);
        final String value = itemDTO.getCurrentValue();
        if (value == null) {
            if (item.isMVP()) {
                logger.error("Configuration [{}] type [{}]: Required item [{}].",
                        new Object[] { entity.getId().toString(), cd.getType().getName(), name });
                throw new IllegalArgumentException(); // TODO
            }
            continue;
        }
        final ConfigurationValue configValue = new ConfigurationValue();
        final Class<?> type = item.getType();
        if (item.isEnum()) {
            configValue.setStringValue(((Enum<?>) item.fromString(value)).name());
        } else if (String.class == type) {
            configValue.setStringValue(value);
        } else if (Integer.class == type) {
            configValue.setIntegerValue(Integer.valueOf(value));
        } else if (FileId.class == type) {
            FileEntity file = load(FileEntity.class, value, NotFoundProviders.FILE);
            if (file.getPurpose() == FilePurpose.UNKNOWN) {
                file.setPurpose(FilePurpose.CONFIG);
            }
            NotFoundProviders.FILE.checkCondition(file.getPurpose() == FilePurpose.CONFIG, value);
            if (item.isCompressed()) {
                file.compress();
            }
            file.setBundle(item.isBundle());
            file.setDownloadable(item.isDownloadable());
            configValue.setFileValue(file);
        } else if (Category.class == type) {
            configValue.setCategoryValue(load(CategoryEntity.class, value, NotFoundProviders.CATEGORY));
        } else if (ContentType.class == type) {
            configValue
                    .setContentTypeValue(load(ContentTypeEntity.class, value, NotFoundProviders.CONTENT_TYPE));
        } else if (Boolean.class == type) {
            configValue.setBooleanValue(Boolean.valueOf(value));
        } else {
            logger.error("Configuration [{}] type [{}] item [{}] Invalid type.",
                    new Object[] { entity.getId().toString(), cd.getType().getName(), name });
            // TODO: other types.
            throw new IllegalStateException();
        }
        values.put(name, configValue);
    }
    for (final Item item : parameters.values()) {
        checkState(!item.isMVP() || values.containsKey(item.getParameter()));
    }
}

From source file:com.facebook.buck.rage.UserInput.java

public boolean confirm(String question) throws IOException {
    ImmutableMap<String, Boolean> supportedResponses = ImmutableMap.of("", true, "y", true, "n", false);
    for (;;) {// w  ww .  j  a  v a  2s .c om
        output.println();
        output.println(question + " (Y/n)?");
        output.flush();

        String line = reader.readLine();
        // Stdin was closed.
        if (line == null) {
            return false;
        }
        String response = line.trim().toLowerCase();
        if (supportedResponses.containsKey(response)) {
            return supportedResponses.get(response);
        } else {
            output.println("Please answer 'y' or 'n'.");
        }
    }
}

From source file:edu.mit.streamjit.impl.compiler2.ActorGroup.java

public void setSchedule(ImmutableMap<Actor, Integer> schedule) {
    checkState(this.schedule == null, "already initialized schedule");
    for (Actor a : actors())
        checkArgument(schedule.containsKey(a), "schedule doesn't contain actor " + a);
    this.schedule = schedule;
}