in tchannel-core/src/main/java/com/uber/tchannel/handlers/OutRequest.java [178:194]
protected void setResponseFuture(ArgScheme argScheme, Response response) {
switch (argScheme) {
case RAW:
((TFuture<RawResponse>)future).set((RawResponse) response);
break;
case JSON:
((TFuture<JsonResponse>)future).set((JsonResponse) response);
break;
case THRIFT:
((TFuture<ThriftResponse>)future).set((ThriftResponse) response);
break;
default:
logger.error("unsupported arg scheme: {}", argScheme);
((TFuture<RawResponse>)future).set((RawResponse) response);
break;
}
}