List of usage examples for com.google.common.collect Multimaps forMap
public static <K, V> SetMultimap<K, V> forMap(Map<K, V> map)
From source file:com.palantir.atlasdb.table.generation.ColumnValues.java
public static <T extends Persistable> Entry<Cell, byte[]> toCellValue(T key, ColumnValue<?> value) { Multimap<T, ? extends ColumnValue<?>> singletonMultimap = Multimaps .forMap(Collections.singletonMap(key, value)); Map<Cell, byte[]> cellValues = toCellValues(singletonMultimap); return Iterables.getOnlyElement(cellValues.entrySet()); }
From source file:org.jclouds.jenkins.v1.binders.BindMapToOptionalParams.java
@SuppressWarnings("unchecked") @Override//from www . j a v a 2s . c om public <R extends HttpRequest> R bindToRequest(R request, Object input) { checkArgument(checkNotNull(input, "input") instanceof Map, "this binder is only valid for Maps!"); Map<String, String> map = (Map<String, String>) input; return (R) request.toBuilder().replaceQueryParams(Multimaps.forMap(map)).build(); }
From source file:at.ac.univie.isc.asio.jaxrs.MediaTypeConverter.java
@Override protected com.google.common.net.MediaType doForward(@Nonnull final javax.ws.rs.core.MediaType input) { return com.google.common.net.MediaType.create(input.getType(), input.getSubtype()) .withParameters(Multimaps.forMap(input.getParameters())); }
From source file:org.jclouds.atmos.binders.BindUserMetadataToHeaders.java
@SuppressWarnings("unchecked") @Override//from w w w. j a v a2s.c o m public <R extends HttpRequest> R bindToRequest(R request, Object input) { checkArgument(checkNotNull(input, "input") instanceof UserMetadata, "this binder is only valid for UserMetadatas!"); checkNotNull(request, "request"); return (R) request.toBuilder().replaceHeaders(Multimaps.forMap(apply(UserMetadata.class.cast(input)))) .build(); }
From source file:org.jclouds.aws.ec2.binders.BindLaunchSpecificationToFormParams.java
@SuppressWarnings("unchecked") @Override// w ww. j av a 2 s . c o m public <R extends HttpRequest> R bindToRequest(R request, Object input) { checkArgument(input instanceof LaunchSpecification, "this binder is only valid for LaunchSpecifications!"); LaunchSpecification launchSpec = LaunchSpecification.class.cast(input); return (R) request.toBuilder().replaceFormParams(Multimaps.forMap(apply(launchSpec))).build(); }
From source file:org.jclouds.blobstore.binders.BindMapToHeadersWithPrefix.java
@SuppressWarnings("unchecked") @Override//from w ww . j av a2 s . c om public <R extends HttpRequest> R bindToRequest(R request, Object input) { checkArgument(checkNotNull(input, "input") instanceof Map<?, ?>, "this binder is only valid for Maps!"); checkNotNull(request, "request"); Map<String, String> userMetadata = Maps2.transformKeys((Map<String, String>) input, FN); return (R) request.toBuilder().replaceHeaders(Multimaps.forMap(userMetadata)).build(); }
From source file:org.jclouds.ec2.util.IpPermissions.java
/** * don't rely on this being here.. it will move *//* ww w.j av a 2 s . c om*/ @Beta public static Multimap<String, String> buildFormParametersForIndex(final int index, IpPermission permission) { Map<String, String> headers = Maps.newLinkedHashMap(); headers.put("IpPermissions.%d.IpProtocol", permission.getIpProtocol().toString()); headers.put("IpPermissions.%d.FromPort", permission.getFromPort() + ""); headers.put("IpPermissions.%d.ToPort", permission.getToPort() + ""); String prefix = "IpPermissions.%d.IpRanges."; int i = 0; for (String cidrIp : checkNotNull(permission.getCidrBlocks(), "cidrIps")) { headers.put(prefix + i++ + ".CidrIp", cidrIp); } prefix = "IpPermissions.%d.Groups."; i = 0; for (String groupId : checkNotNull(permission.getGroupIds(), "groupIds")) { headers.put(prefix + i++ + ".GroupId", groupId); } prefix = "IpPermissions.%d.Groups."; i = 0; for (Entry<String, String> tenantIdGroupNamePair : checkNotNull(permission.getTenantIdGroupNamePairs(), "tenantIdGroupNamePairs").entries()) { headers.put(prefix + i + ".UserId", tenantIdGroupNamePair.getKey()); headers.put(prefix + i + ".GroupId", tenantIdGroupNamePair.getValue()); i++; } prefix = "IpPermissions.%d.IpRanges."; i = 0; for (String cidrIp : checkNotNull(permission.getCidrBlocks(), "cidrIps")) { headers.put(prefix + i++ + ".CidrIp", cidrIp); } return Multimaps.forMap(Maps2.transformKeys(headers, new Function<String, String>() { @Override public String apply(String arg0) { return String.format(arg0, index); } })); }
From source file:org.zalando.logbook.spring.MockHttpRequest.java
@Override public Multimap<String, String> getHeaders() { return Multimaps.forMap(headers); }
From source file:org.jclouds.joyent.sdc.v6_5.options.CreateMachineOptions.java
@Override public Multimap<String, String> buildQueryParameters() { Multimap<String, String> params = super.buildQueryParameters(); if (name != null) params.put("name", name); if (pkg != null) params.put("package", pkg); params.putAll(Multimaps.forMap(Maps2.transformKeys(metadata, new Function<String, String>() { @Override/* w w w .j av a 2 s .com*/ public String apply(String input) { return "metadata." + input; } }))); return params; }
From source file:org.jclouds.aws.binders.BindMapToIndexedFormParams.java
@SuppressWarnings("unchecked") @Override//from w w w. j a va 2 s .c o m public <R extends HttpRequest> R bindToRequest(R request, Object input) { if (checkNotNull(input, "input") instanceof Iterable) input = Maps.uniqueIndex((Iterable<String>) input, new Function<String, String>() { int index = 1; @Override public String apply(String input) { return index++ + ""; } }); checkArgument(checkNotNull(input, "input") instanceof Map, "this binder is only valid for Map"); Map<String, String> mapping = (Map<String, String>) input; ImmutableMap.Builder<String, String> builder = ImmutableMap.builder(); int amazonOneBasedIndex = 1; // according to docs, counters must start // with 1 for (Entry<String, String> entry : mapping.entrySet()) { // not null by contract builder.put(format(keyPattern, amazonOneBasedIndex), entry.getKey()); builder.put(format(valuePattern, amazonOneBasedIndex), entry.getValue()); amazonOneBasedIndex++; } Multimap<String, String> forms = Multimaps.forMap(builder.build()); return forms.size() == 0 ? request : (R) request.toBuilder().replaceFormParams(forms).build(); }