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

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

Introduction

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

Prototype

V get(Object key);

Source Link

Document

Returns the value to which the specified key is mapped, or null if this map contains no mapping for the key.

Usage

From source file:com.google.idea.blaze.cpp.BlazeConfigurationResolver.java

@Nullable
private MapEntry createResolveConfiguration(TargetIdeInfo target,
        ImmutableMap<TargetKey, CToolchainIdeInfo> toolchainLookupMap,
        ImmutableMap<File, VirtualFile> headerRoots,
        ConcurrentMap<CToolchainIdeInfo, File> compilerWrapperCache, BlazeProjectData blazeProjectData) {
    TargetKey targetKey = target.key;//from  ww w .  java 2 s. c o  m

    CToolchainIdeInfo toolchainIdeInfo = toolchainLookupMap.get(targetKey);
    if (toolchainIdeInfo != null) {
        File compilerWrapper = findOrCreateCompilerWrapperScript(compilerWrapperCache, toolchainIdeInfo,
                blazeProjectData.workspacePathResolver, targetKey);
        if (compilerWrapper != null) {
            BlazeResolveConfiguration config = BlazeResolveConfiguration.createConfigurationForTarget(project,
                    blazeProjectData.workspacePathResolver, headerRoots,
                    blazeProjectData.targetMap.get(targetKey), toolchainIdeInfo, compilerWrapper);
            if (config != null) {
                return new MapEntry(targetKey, config);
            }
        }
    }
    return null;
}

From source file:org.apache.rya.indexing.entity.model.Entity.java

/**
 * Does a lookup to see if the {@link Entity} contains the specified
 * property for the specified type.//  w  w  w.  ja v a 2  s .co m
 * @param typeRyaUri the type {@link RyaURI}. (not {@code null})
 * @param propertyRyaUri the property {@link RyaURI}. (not {@code null})
 * @return the {@link Property} or an empty {@link Optional} if it could not
 * be found in the {@link Entity}.
 */
public Optional<Property> lookupTypeProperty(final RyaURI typeRyaUri, final RyaURI propertyRyaUri) {
    requireNonNull(typeRyaUri);
    requireNonNull(propertyRyaUri);
    final ImmutableMap<RyaURI, Property> typePropertyMap = properties.get(typeRyaUri);
    Optional<Property> property = Optional.empty();
    if (typePropertyMap != null) {
        property = Optional.ofNullable(typePropertyMap.get(propertyRyaUri));
    }
    return property;
}

From source file:dagger.internal.codegen.MembersInjectorGenerator.java

/**
 * Returns the parameters for injecting a member.
 *
 * @param passValue if {@code true}, each parameter code block will be the result of converting
 *     the field from the framework type ({@link Provider}, {@link Producer}, etc.) to the real
 *     value; if {@code false}, each parameter code block will be just the field
 *///from   w w w.  j  ava 2s  .  c  o  m
private ImmutableList<CodeBlock> parameterCodeBlocks(ImmutableMap<BindingKey, FieldSpec> dependencyFields,
        ImmutableSet<DependencyRequest> dependencies, boolean passValue) {
    ImmutableList.Builder<CodeBlock> parameters = ImmutableList.builder();
    for (DependencyRequest dependency : dependencies) {
        CodeBlock fieldCodeBlock = CodeBlock.of("$L", dependencyFields.get(dependency.bindingKey()).name);
        parameters.add(
                passValue ? frameworkTypeUsageStatement(fieldCodeBlock, dependency.kind()) : fieldCodeBlock);
    }
    return parameters.build();
}

From source file:com.github.steveash.typedconfig.resolver.ProxyValueResolver.java

@SuppressWarnings("unchecked")
private <T> T makeProxyForResolvers(final Class<?> interfaze,
        final ImmutableMap<Method, ValueResolver> propertyResolvers) throws NoSuchMethodException {

    final ImmutableMap<Method, ValueResolver> allResolvers = addInternalResolvers(interfaze, propertyResolvers);
    final Method equalsMethod = Object.class.getDeclaredMethod("equals", Object.class);

    InvocationHandler handler = new InvocationHandler() {

        @Override/* www .j  a v  a 2 s .c  o m*/
        public Object invoke(final Object proxy, final Method method, final Object[] args) throws Throwable {

            ValueResolver valueResolver = allResolvers.get(method);
            if (valueResolver != null)
                return valueResolver.resolve();
            if (equalsMethod.equals(method))
                return proxyEquals(interfaze, propertyResolvers, args[0]);

            throw new IllegalStateException("no method is known for " + method);
        }
    };
    return (T) Proxy.newProxyInstance(getClass().getClassLoader(),
            new Class<?>[] { interfaze, ProxiedConfiguration.class }, handler);
}

From source file:org.apache.bigtop.datagenerators.locations.LocationReader.java

public ImmutableList<Location> readData() throws FileNotFoundException {

    ImmutableMap<String, Double> incomes = readIncomeData(getResource(LocationConstants.INCOMES_FILE));
    ImmutableMap<String, Long> populations = readPopulationData(getResource(LocationConstants.POPULATION_FILE));
    ImmutableMap<String, ZipcodeLocationRecord> coordinates = readCoordinates(
            getResource(LocationConstants.COORDINATES_FILE));

    Set<String> zipcodeSubset = new HashSet<String>(incomes.keySet());
    zipcodeSubset.retainAll(populations.keySet());
    zipcodeSubset.retainAll(coordinates.keySet());

    List<Location> table = new Vector<Location>();
    for (String zipcode : zipcodeSubset) {
        Location record = new Location(zipcode, coordinates.get(zipcode).coordinates,
                coordinates.get(zipcode).city, coordinates.get(zipcode).state, incomes.get(zipcode),
                populations.get(zipcode));
        table.add(record);//from   w w w . j av a2  s.  c o  m
    }

    return ImmutableList.copyOf(table);
}

From source file:dagger2.internal.codegen.MembersInjectorGenerator.java

@Override
ImmutableSet<JavaWriter> write(ClassName generatedTypeName, MembersInjectionBinding binding) {
    // We don't want to write out resolved bindings -- we want to write out the generic version.
    checkState(!binding.hasNonDefaultTypeParameters());

    TypeName injectedTypeName = TypeNames.forTypeMirror(binding.key().type());
    JavaWriter writer = JavaWriter.inPackage(generatedTypeName.packageName());

    ClassWriter injectorWriter = writer.addClass(generatedTypeName.simpleName());
    List<TypeVariableName> typeParameters = Lists.newArrayList();
    for (TypeParameterElement typeParameter : binding.bindingTypeElement().getTypeParameters()) {
        typeParameters.add(TypeVariableName.fromTypeParameterElement(typeParameter));
    }/*from  ww w.j  a v  a  2s .com*/
    injectorWriter.addTypeParameters(typeParameters);
    injectorWriter.annotate(Generated.class).setValue(ComponentProcessor.class.getCanonicalName());
    injectorWriter.addModifiers(PUBLIC, FINAL);
    TypeName implementedType = ParameterizedTypeName.create(MembersInjector.class, injectedTypeName);
    injectorWriter.addImplementedType(implementedType);

    ConstructorWriter constructorWriter = injectorWriter.addConstructor();
    constructorWriter.addModifiers(PUBLIC);
    MethodWriter injectMembersWriter = injectorWriter.addMethod(VoidName.VOID, "injectMembers");
    injectMembersWriter.addModifiers(PUBLIC);
    injectMembersWriter.annotate(Override.class);
    injectMembersWriter.addParameter(injectedTypeName, "instance");
    injectMembersWriter.body().addSnippet(Joiner.on('\n').join("if (instance == null) {",
            "  throw new NullPointerException(\"Cannot inject members into a null reference\");", "}"));

    Optional<DeclaredType> supertype = MoreTypes.nonObjectSuperclass(types, elements,
            MoreTypes.asDeclared(binding.key().type()));
    if (supertype.isPresent()) {
        ParameterizedTypeName supertypeMemebersInjectorType = ParameterizedTypeName
                .create(MembersInjector.class, TypeNames.forTypeMirror(supertype.get()));
        injectorWriter.addField(supertypeMemebersInjectorType, "supertypeInjector").addModifiers(PRIVATE,
                FINAL);
        constructorWriter.addParameter(supertypeMemebersInjectorType, "supertypeInjector");
        constructorWriter.body().addSnippet("assert supertypeInjector != null;")
                .addSnippet("this.supertypeInjector = supertypeInjector;");
        injectMembersWriter.body().addSnippet("supertypeInjector.injectMembers(instance);");
    }

    ImmutableMap<BindingKey, FrameworkField> fields = SourceFiles.generateBindingFieldsForDependencies(
            dependencyRequestMapper, ImmutableSet.copyOf(binding.dependencies()));

    ImmutableMap.Builder<BindingKey, FieldWriter> dependencyFieldsBuilder = ImmutableMap.builder();

    for (Entry<BindingKey, FrameworkField> fieldEntry : fields.entrySet()) {
        FrameworkField bindingField = fieldEntry.getValue();
        TypeName fieldType = bindingField.frameworkType();
        FieldWriter field = injectorWriter.addField(fieldType, bindingField.name());
        field.addModifiers(PRIVATE, FINAL);
        constructorWriter.addParameter(field.type(), field.name());
        constructorWriter.body().addSnippet("assert %s != null;", field.name());
        constructorWriter.body().addSnippet("this.%1$s = %1$s;", field.name());
        dependencyFieldsBuilder.put(fieldEntry.getKey(), field);
    }

    // We use a static create method so that generated components can avoid having
    // to refer to the generic types of the factory.
    // (Otherwise they may have visibility problems referring to the types.)
    MethodWriter createMethodWriter = injectorWriter.addMethod(implementedType, "create");
    createMethodWriter.addTypeParameters(typeParameters);
    createMethodWriter.addModifiers(Modifier.PUBLIC, Modifier.STATIC);
    Map<String, TypeName> params = constructorWriter.parameters();
    for (Map.Entry<String, TypeName> param : params.entrySet()) {
        createMethodWriter.addParameter(param.getValue(), param.getKey());
    }
    createMethodWriter.body().addSnippet("  return new %s(%s);",
            parameterizedMembersInjectorNameForMembersInjectionBinding(binding),
            Joiner.on(", ").join(params.keySet()));

    ImmutableMap<BindingKey, FieldWriter> depedencyFields = dependencyFieldsBuilder.build();
    for (InjectionSite injectionSite : binding.injectionSites()) {
        switch (injectionSite.kind()) {
        case FIELD:
            DependencyRequest fieldDependency = Iterables.getOnlyElement(injectionSite.dependencies());
            FieldWriter singleField = depedencyFields.get(fieldDependency.bindingKey());
            injectMembersWriter.body().addSnippet("instance.%s = %s;", injectionSite.element().getSimpleName(),
                    frameworkTypeUsageStatement(Snippet.format(singleField.name()), fieldDependency.kind()));
            break;
        case METHOD:
            ImmutableList.Builder<Snippet> parameters = ImmutableList.builder();
            for (DependencyRequest methodDependency : injectionSite.dependencies()) {
                FieldWriter field = depedencyFields.get(methodDependency.bindingKey());
                parameters.add(
                        frameworkTypeUsageStatement(Snippet.format(field.name()), methodDependency.kind()));
            }
            injectMembersWriter.body().addSnippet("instance.%s(%s);", injectionSite.element().getSimpleName(),
                    Snippet.makeParametersSnippet(parameters.build()));
            break;
        default:
            throw new AssertionError();
        }
    }
    return ImmutableSet.of(writer);
}

From source file:com.sk89q.worldguard.domains.DefaultDomain.java

public String toPlayersString(@Nullable ProfileCache cache) {
    StringBuilder str = new StringBuilder();
    List<String> output = new ArrayList<>();

    for (String name : playerDomain.getPlayers()) {
        output.add("name:" + name);
    }//  w w  w .  j a v  a 2s. c om

    if (cache != null) {
        ImmutableMap<UUID, Profile> results = cache.getAllPresent(playerDomain.getUniqueIds());
        for (UUID uuid : playerDomain.getUniqueIds()) {
            Profile profile = results.get(uuid);
            if (profile != null) {
                output.add(profile.getName() + "*");
            } else {
                output.add("uuid:" + uuid);
            }
        }
    } else {
        for (UUID uuid : playerDomain.getUniqueIds()) {
            output.add("uuid:" + uuid);
        }
    }

    output.sort(String.CASE_INSENSITIVE_ORDER);
    for (Iterator<String> it = output.iterator(); it.hasNext();) {
        str.append(it.next());
        if (it.hasNext()) {
            str.append(", ");
        }
    }
    return str.toString();
}

From source file:com.facebook.buck.apple.project_generator.XCodeProjectCommandHelper.java

private boolean canPrompt(ImmutableMap<String, String> environment) {
    String nailgunStdinTty = environment.get("NAILGUN_TTY_0");
    if (nailgunStdinTty != null) {
        return nailgunStdinTty.equals("1");
    } else {/*www.  ja v a2 s  .  c om*/
        return System.console() != null;
    }
}

From source file:org.mule.module.oauth2.AbstractOAuthAuthorizationTestCase.java

private void configureWireMockToExpectTokenPathRequestForClientCredentialsGrantTypeWithMapResponse(
        String accessToken, ImmutableMap customParameters) {
    customParameters = new ImmutableMap.Builder().putAll(customParameters)
            .put(OAuthConstants.ACCESS_TOKEN_PARAMETER, accessToken)
            .put(OAuthConstants.EXPIRES_IN_PARAMETER, EXPIRES_IN).build();
    final ImmutableMap.Builder bodyParametersMapBuilder = new ImmutableMap.Builder();
    for (Object customParameterName : customParameters.keySet()) {
        bodyParametersMapBuilder.put(customParameterName, customParameters.get(customParameterName));
    }//from   www.j  av  a 2 s  .  com
    final String body = HttpParser.encodeString("UTF-8", bodyParametersMapBuilder.build());
    wireMockRule.stubFor(post(urlEqualTo(TOKEN_PATH)).willReturn(aResponse().withBody(body)
            .withHeader(HttpHeaders.Names.CONTENT_TYPE, HttpHeaders.Values.APPLICATION_X_WWW_FORM_URLENCODED)));
}

From source file:net.sf.e4ftrace.ui.model.TraceModelImplFactory.java

public TraceImpl[] createFTraces(TraceService traceService, URI uri) throws ExecutionException {

    ImmutableTable<Integer, Short, ITrace> data = traceService.fetch(uri, 0);

    UnmodifiableIterator<Integer> it = data.rowKeySet().iterator();

    ArrayList<TraceImpl> rList = Lists.<TraceImpl>newArrayList();

    Random random = new Random();

    /* While Tasks */
    while (it.hasNext()) {

        int atomId = it.next();

        String name = TraceBiMap.getStringValue(atomId);

        ImmutableMap<Short, ITrace> traces = data.row(atomId);

        UnmodifiableIterator<Short> ck = traces.keySet().iterator();

        /* While Cores */
        while (ck.hasNext()) {

            short cpuid = ck.next();
            ITrace trace = traces.get(cpuid);

            TraceImpl traceImpl = new TraceImpl(name, name);

            Iterator<IEvent> ei = trace.getEventsIterator();

            long prevStamp = 0;
            EventImpl prevEventImpl = null;
            TreeSet<Long> tsSet = Sets.<Long>newTreeSet();

            /* While Events */
            while (ei.hasNext()) {

                IEvent event = ei.next();

                long timestamp = event.getTime();

                tsSet.add(timestamp);/*from   w w w.java  2  s .co  m*/

                int type = random.nextInt(8) % 7;

                EventImpl eventImpl = new EventImpl(timestamp, traceImpl, getEventType(type));

                if (prevStamp != 0) {

                    long duration = timestamp - prevStamp;

                    prevEventImpl.setDuration(duration);

                    traceImpl.addTraceEvent(prevEventImpl);
                }

                prevStamp = timestamp;
                prevEventImpl = eventImpl;

            }

            long timeStart = tsSet.first();
            long timeEnd = tsSet.last();
            traceImpl.setStartTime(timeStart);
            traceImpl.setStopTime(timeEnd);

            rList.add(traceImpl);
        }
    }

    TraceImpl[] ra = rList.toArray(new TraceImpl[rList.size()]);

    return ra;

}