public ListenableFuture<Object> invoke(Optional<String> addressSelectionContext, Map<String, String> headers, List<Object> parameters) { if (!headerParameters.isEmpty()) { headers = new LinkedHashMap<>(headers); for (Entry<Integer, ThriftHeaderParameter> entry : headerParameters.entrySet()) { String headerValue = (String) parameters.get(entry.getKey()); if (headerValue != null) { headers.put(entry.getValue().getName(), headerValue); } } ImmutableList.Builder<Object> newParameters = ImmutableList.builder(); for (int index = 0; index < parameters.size(); index++) { if (!headerParameters.containsKey(index)) { newParameters.add(parameters.get(index)); } } parameters = newParameters.build(); } return createDriftMethodInvocation(invoker, metadata, headers, parameters, retryPolicy, addressSelector, addressSelectionContext, stat, Ticker.systemTicker()); } }
public ListenableFuture<Object> invoke(Optional<String> addressSelectionContext, Map<String, String> headers, List<Object> parameters) { if (!headerParameters.isEmpty()) { headers = new LinkedHashMap<>(headers); for (Entry<Integer, ThriftHeaderParameter> entry : headerParameters.entrySet()) { String headerValue = (String) parameters.get(entry.getKey()); if (headerValue != null) { headers.put(entry.getValue().getName(), headerValue); } } ImmutableList.Builder<Object> newParameters = ImmutableList.builder(); for (int index = 0; index < parameters.size(); index++) { if (!headerParameters.containsKey(index)) { newParameters.add(parameters.get(index)); } } parameters = newParameters.build(); } return createDriftMethodInvocation(invoker, metadata, headers, parameters, retryPolicy, addressSelector, addressSelectionContext, stat, Ticker.systemTicker()); } }
private static DriftMethodInvocation<?> createDriftMethodInvocation( RetryPolicy retryPolicy, TestingMethodInvocationStat stat, MockMethodInvoker invoker, AddressSelector<?> addressSelector, Ticker ticker) { return DriftMethodInvocation.createDriftMethodInvocation( invoker, METHOD_METADATA, ImmutableMap.of(), ImmutableList.of(), retryPolicy, addressSelector, Optional.empty(), stat, ticker); }