private static ThriftCallService findThriftService(Service<?, ?> delegate) {
        final ThriftCallService thriftService = delegate.as(ThriftCallService.class);
        checkState(thriftService != null,
                   "service being decorated is not a ThriftCallService: %s", delegate);
        return thriftService;
    }
Creates a new decorator that supports the protocols specified in
{@code otherSupportedSerializationFormats} and defaults to the specified
{@code defaultSerializationFormat} when the client doesn't specify one.
Currently, the only way to specify a serialization format is by using the HTTP session protocol and
setting the {@code "Content-Type"} header to the appropriate {@link SerializationFormat#mediaType()}.

@param defaultSerializationFormat the default serialization format to use when not specified by the
                                  client
@param otherSupportedSerializationFormats other serialization formats that should be supported by this
                                          service in addition to the default
thrift/thrift0.13/src/main/java/com/linecorp/armeria/server/thrift/THttpService.java