@Override public void start(ClientCall.Listener<RespT> responseListener, Metadata headers) { for (Entry<Key<String>, String> staticHeader : staticHeaders.entrySet()) { headers.put(staticHeader.getKey(), staticHeader.getValue()); } Map<Key<String>, String> dynamicHeaders = CallOptionsUtil.getDynamicHeadersOption(callOptions); for (Entry<Key<String>, String> dynamicHeader : dynamicHeaders.entrySet()) { headers.put(dynamicHeader.getKey(), dynamicHeader.getValue()); } super.start(responseListener, headers); } };
private GrpcCallContext addHandlers(GrpcCallContext grpcCallContext) { return Preconditions.checkNotNull(grpcCallContext) .withCallOptions( CallOptionsUtil.putMetadataHandlerOption(grpcCallContext.getCallOptions(), this)); }
public GrpcCallContext withRequestParamsDynamicHeaderOption(String requestParams) { CallOptions newCallOptions = CallOptionsUtil.putRequestParamsDynamicHeaderOption(callOptions, requestParams); return withCallOptions(newCallOptions); }
@Test public void testPutAndGetDynamicHeaderOption() throws Exception { String encodedRequestParams = "param1=value¶m2.param3=value23"; CallOptions options = CallOptionsUtil.putRequestParamsDynamicHeaderOption( CallOptions.DEFAULT, encodedRequestParams); Map<Key<String>, String> headers = CallOptionsUtil.getDynamicHeadersOption(options); assertEquals( ImmutableMap.of(CallOptionsUtil.REQUEST_PARAMS_HEADER_KEY, encodedRequestParams), headers); }
CallOptionsUtil.getMetadataHandlerOption(callOptions);
@Test public void testPutAndGetDynamicHeaderOptionEmpty() throws Exception { CallOptions options = CallOptionsUtil.putRequestParamsDynamicHeaderOption(CallOptions.DEFAULT, ""); assertSame(CallOptions.DEFAULT, options); Map<Key<String>, String> headers = CallOptionsUtil.getDynamicHeadersOption(options); assertTrue(headers.isEmpty()); }
CallOptionsUtil.getMetadataHandlerOption(callOptions);
public GrpcCallContext withRequestParamsDynamicHeaderOption(String requestParams) { CallOptions newCallOptions = CallOptionsUtil.putRequestParamsDynamicHeaderOption(callOptions, requestParams); return withCallOptions(newCallOptions); }
private GrpcCallContext addHandlers(GrpcCallContext grpcCallContext) { return Preconditions.checkNotNull(grpcCallContext) .withCallOptions( CallOptionsUtil.putMetadataHandlerOption(grpcCallContext.getCallOptions(), this)); }
@Override public void start(ClientCall.Listener<RespT> responseListener, Metadata headers) { for (Entry<Key<String>, String> staticHeader : staticHeaders.entrySet()) { headers.put(staticHeader.getKey(), staticHeader.getValue()); } Map<Key<String>, String> dynamicHeaders = CallOptionsUtil.getDynamicHeadersOption(callOptions); for (Entry<Key<String>, String> dynamicHeader : dynamicHeaders.entrySet()) { headers.put(dynamicHeader.getKey(), dynamicHeader.getValue()); } super.start(responseListener, headers); } };
@Test(expected = NullPointerException.class) public void testPutAndGetHeaderOptionNull() throws Exception { CallOptionsUtil.putRequestParamsDynamicHeaderOption(CallOptions.DEFAULT, null); } }
CallOptionsUtil.putMetadataHandlerOption( CallOptions.DEFAULT, new ResponseMetadataHandler() {
@Test public void testWithRequestParamsDynamicHeaderOption() { String encodedRequestParams = "param1=value¶m2.param3=value23"; GrpcCallContext context = GrpcCallContext.createDefault().withRequestParamsDynamicHeaderOption(encodedRequestParams); Map<Key<String>, String> headers = CallOptionsUtil.getDynamicHeadersOption(context.getCallOptions()); assertEquals( ImmutableMap.of(CallOptionsUtil.REQUEST_PARAMS_HEADER_KEY, encodedRequestParams), headers); }