private List<String> percentDecode(List<String> list, boolean plusIsSpace) { int size = list.size(); List<String> result = new ArrayList<>(size); for (int i = 0; i < size; i++) { String s = list.get(i); result.add(s != null ? percentDecode(s, plusIsSpace) : null); } return Collections.unmodifiableList(result); }
@Test public void testOverlappingWindows() { Observable<String> subject = Observable.fromArray(new String[] { "zero", "one", "two", "three", "four", "five" }); Observable<Observable<String>> windowed = subject.window(3, 1); List<List<String>> windows = toLists(windowed); assertEquals(6, windows.size()); assertEquals(list("zero", "one", "two"), windows.get(0)); assertEquals(list("one", "two", "three"), windows.get(1)); assertEquals(list("two", "three", "four"), windows.get(2)); assertEquals(list("three", "four", "five"), windows.get(3)); assertEquals(list("four", "five"), windows.get(4)); assertEquals(list("five"), windows.get(5)); }
static String extractStatusLine(Map<String, List<String>> javaResponseHeaders) throws ProtocolException { List<String> values = javaResponseHeaders.get(null); if (values == null || values.size() == 0) { // The status line is missing. This suggests a badly behaving cache. throw new ProtocolException( "CacheResponse is missing a \'null\' header containing the status line. Headers=" + javaResponseHeaders); } return values.get(0); }
@Test public void testToFutureList() throws InterruptedException, ExecutionException { Flowable<String> obs = Flowable.just("one", "two", "three"); Future<List<String>> f = obs.toList().toFuture(); assertEquals("one", f.get().get(0)); assertEquals("two", f.get().get(1)); assertEquals("three", f.get().get(2)); }
public static List<String> alpnProtocolNames(List<Protocol> protocols) { List<String> names = new ArrayList<>(protocols.size()); for (int i = 0, size = protocols.size(); i < size; i++) { Protocol protocol = protocols.get(i); if (protocol == Protocol.HTTP_1_0) continue; // No HTTP/1.0 for ALPN. names.add(protocol.toString()); } return names; }
@Test public void testOverlappingWindows() { Flowable<String> subject = Flowable.fromArray(new String[] { "zero", "one", "two", "three", "four", "five" }); Flowable<Flowable<String>> windowed = subject.window(3, 1); List<List<String>> windows = toLists(windowed); assertEquals(6, windows.size()); assertEquals(list("zero", "one", "two"), windows.get(0)); assertEquals(list("one", "two", "three"), windows.get(1)); assertEquals(list("two", "three", "four"), windows.get(2)); assertEquals(list("three", "four", "five"), windows.get(3)); assertEquals(list("four", "five"), windows.get(4)); assertEquals(list("five"), windows.get(5)); }
private void removeAllCanonicalQueryParameters(String canonicalName) { for (int i = encodedQueryNamesAndValues.size() - 2; i >= 0; i -= 2) { if (canonicalName.equals(encodedQueryNamesAndValues.get(i))) { encodedQueryNamesAndValues.remove(i + 1); encodedQueryNamesAndValues.remove(i); if (encodedQueryNamesAndValues.isEmpty()) { encodedQueryNamesAndValues = null; return; } } } }
@Override public ResponseSpec onStatus(Predicate<HttpStatus> statusPredicate, Function<ClientResponse, Mono<? extends Throwable>> exceptionFunction) { if (this.statusHandlers.size() == 1 && this.statusHandlers.get(0) == DEFAULT_STATUS_HANDLER) { this.statusHandlers.clear(); } this.statusHandlers.add(new StatusHandler(statusPredicate, (clientResponse, request) -> exceptionFunction.apply(clientResponse))); return this; }
protected List<ResourceTransformer> getResourceTransformers() { if (this.hasVersionResolver && !this.hasCssLinkTransformer) { List<ResourceTransformer> result = new ArrayList<>(this.transformers); boolean hasTransformers = !this.transformers.isEmpty(); boolean hasCaching = hasTransformers && this.transformers.get(0) instanceof CachingResourceTransformer; result.add(hasCaching ? 1 : 0, new CssLinkResourceTransformer()); return result; } return this.transformers; }
/** Only updates subscriptionsByEventType, not typesBySubscriber! Caller must update typesBySubscriber. */ private void unsubscribeByEventType(Object subscriber, Class<?> eventType) { List<Subscription> subscriptions = subscriptionsByEventType.get(eventType); if (subscriptions != null) { int size = subscriptions.size(); for (int i = 0; i < size; i++) { Subscription subscription = subscriptions.get(i); if (subscription.subscriber == subscriber) { subscription.active = false; subscriptions.remove(i); i--; size--; } } } }
@Override public CacheInvocationParameter[] getAllParameters(Object... values) { if (this.allParameterDetails.size() != values.length) { throw new IllegalStateException("Values mismatch, operation has " + this.allParameterDetails.size() + " parameter(s) but got " + values.length + " value(s)"); } List<CacheInvocationParameter> result = new ArrayList<>(); for (int i = 0; i < this.allParameterDetails.size(); i++) { result.add(this.allParameterDetails.get(i).toCacheInvocationParameter(values[i])); } return result.toArray(new CacheInvocationParameter[0]); }
@Test public void testNonOverlappingWindows() { Observable<String> subject = Observable.just("one", "two", "three", "four", "five"); Observable<Observable<String>> windowed = subject.window(3); List<List<String>> windows = toLists(windowed); assertEquals(2, windows.size()); assertEquals(list("one", "two", "three"), windows.get(0)); assertEquals(list("four", "five"), windows.get(1)); }
private void restore () { mainDependencies.clear(); ((ExtensionTableModel)table.getModel()).unselectAll(); for (int i = 0; i < mainDependenciesSnapshot.size(); i++) { mainDependencies.add(mainDependenciesSnapshot.get(i)); String extensionName = mainDependenciesSnapshot.get(i).getName(); if (((ExtensionTableModel)table.getModel()).hasExtension(extensionName)) { ((ExtensionTableModel)table.getModel()).setSelected(extensionName, true); } else { } } }
protected List<ResourceTransformer> getResourceTransformers() { if (this.hasVersionResolver && !this.hasCssLinkTransformer) { List<ResourceTransformer> result = new ArrayList<>(this.transformers); boolean hasTransformers = !this.transformers.isEmpty(); boolean hasCaching = hasTransformers && this.transformers.get(0) instanceof CachingResourceTransformer; result.add(hasCaching ? 1 : 0, new CssLinkResourceTransformer()); return result; } return this.transformers; }