private static Map<String, String> versions(Function<Predicate<String>, Map<String, String>> filterStringsBoundByName) { Map<String, String> stringBoundWithApiVersionPrefix = filterStringsBoundByName .apply(startsWith(API_VERSION_PREFIX)); return transformKeys(stringBoundWithApiVersionPrefix, new Function<String, String>() { public String apply(String input) { return input.replaceFirst(API_VERSION_PREFIX, ""); } }); } }
private static Map<String, String> versions(Function<Predicate<String>, Map<String, String>> filterStringsBoundByName) { Map<String, String> stringBoundWithApiVersionPrefix = filterStringsBoundByName .apply(startsWith(API_VERSION_PREFIX)); return transformKeys(stringBoundWithApiVersionPrefix, new Function<String, String>() { public String apply(String input) { return input.replaceFirst(API_VERSION_PREFIX, ""); } }); } }
/** * override timeout by values configured in properties(in ms) */ static Map<String, Long> timeouts(Function<Predicate<String>, Map<String, String>> filterStringsBoundByName) { Map<String, String> stringBoundWithTimeoutPrefix = filterStringsBoundByName .apply(startsWith(PROPERTY_TIMEOUTS_PREFIX)); Map<String, Long> longsByName = transformValues(stringBoundWithTimeoutPrefix, new Function<String, Long>() { public Long apply(String input) { return Long.valueOf(String.valueOf(input)); } }); return transformKeys(longsByName, new Function<String, String>() { public String apply(String input) { return input.replaceFirst(PROPERTY_TIMEOUTS_PREFIX, ""); } }); } }
/** * override timeout by values configured in properties(in ms) */ static Map<String, Long> timeouts(Function<Predicate<String>, Map<String, String>> filterStringsBoundByName) { Map<String, String> stringBoundWithTimeoutPrefix = filterStringsBoundByName .apply(startsWith(PROPERTY_TIMEOUTS_PREFIX)); Map<String, Long> longsByName = transformValues(stringBoundWithTimeoutPrefix, new Function<String, Long>() { public Long apply(String input) { return Long.valueOf(String.valueOf(input)); } }); return transformKeys(longsByName, new Function<String, String>() { public String apply(String input) { return input.replaceFirst(PROPERTY_TIMEOUTS_PREFIX, ""); } }); } }
/** * override timeout by values configured in properties(in ms) */ static Map<String, Long> timeouts(Function<Predicate<String>, Map<String, String>> filterStringsBoundByName) { Map<String, String> stringBoundWithTimeoutPrefix = filterStringsBoundByName .apply(startsWith(PROPERTY_TIMEOUTS_PREFIX)); Map<String, Long> longsByName = transformValues(stringBoundWithTimeoutPrefix, new Function<String, Long>() { public Long apply(String input) { return Long.valueOf(String.valueOf(input)); } }); return transformKeys(longsByName, new Function<String, String>() { public String apply(String input) { return input.replaceFirst(PROPERTY_TIMEOUTS_PREFIX, ""); } }); } }
/** * override timeout by values configured in properties(in ms) */ static Map<String, Long> timeouts(Function<Predicate<String>, Map<String, String>> filterStringsBoundByName) { Map<String, String> stringBoundWithTimeoutPrefix = filterStringsBoundByName .apply(startsWith(PROPERTY_TIMEOUTS_PREFIX)); Map<String, Long> longsByName = transformValues(stringBoundWithTimeoutPrefix, new Function<String, Long>() { public Long apply(String input) { return Long.valueOf(String.valueOf(input)); } }); return transformKeys(longsByName, new Function<String, String>() { public String apply(String input) { return input.replaceFirst(PROPERTY_TIMEOUTS_PREFIX, ""); } }); } }
/** * override timeout by values configured in properties(in ms) */ static Map<String, Long> timeouts(Function<Predicate<String>, Map<String, String>> filterStringsBoundByName) { Map<String, String> stringBoundWithTimeoutPrefix = filterStringsBoundByName .apply(startsWith(PROPERTY_TIMEOUTS_PREFIX)); Map<String, Long> longsByName = transformValues(stringBoundWithTimeoutPrefix, new Function<String, Long>() { public Long apply(String input) { return Long.valueOf(String.valueOf(input)); } }); return transformKeys(longsByName, new Function<String, String>() { public String apply(String input) { return input.replaceFirst(PROPERTY_TIMEOUTS_PREFIX, ""); } }); } }
@SuppressWarnings("unchecked") @Override 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(); }
/** * override timeout by values configured in properties(in ms) */ static Map<String, Long> timeouts(Function<Predicate<String>, Map<String, String>> filterStringsBoundByName) { Map<String, String> stringBoundWithTimeoutPrefix = filterStringsBoundByName .apply(startsWith(PROPERTY_TIMEOUTS_PREFIX)); Map<String, Long> longsByName = transformValues(stringBoundWithTimeoutPrefix, new Function<String, Long>() { public Long apply(String input) { return Long.valueOf(String.valueOf(input)); } }); return transformKeys(longsByName, new Function<String, String>() { public String apply(String input) { return input.replaceFirst(Pattern.quote(PROPERTY_TIMEOUTS_PREFIX), ""); } }); } }
@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 public String apply(String input) { return "metadata." + input; } }))); return params; }
@SuppressWarnings("unchecked") @Override 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(); }
@SuppressWarnings("unchecked") @Override 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(); }
@SuppressWarnings("unchecked") @Override 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(); }
@SuppressWarnings("unchecked") @Override 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(); }
@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 public String apply(String input) { return "metadata." + input; } }))); return params; }
@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 public String apply(String input) { return "metadata." + input; } }))); return params; }
@SuppressWarnings("unchecked") @Override 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(); }
@SuppressWarnings("unchecked") @Override 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(); }
public void testTransformKeys() { Map<String, String> map = ImmutableMap.of("prefix:foo", "bar"); assertEquals(Maps2.transformKeys(map, new Function<String, String>() { @Override public String apply(String arg0) { return arg0.replace("prefix:", ""); } }), ImmutableMap.of("foo", "bar")); } }
public void testTransformKeys() { Map<String, String> map = ImmutableMap.of("prefix:foo", "bar"); assertEquals(Maps2.transformKeys(map, new Function<String, String>() { @Override public String apply(String arg0) { return arg0.replace("prefix:", ""); } }), ImmutableMap.of("foo", "bar")); } }