Package org.apache.calcite.avatica.remote

## Interface Service

All Known Implementing Classes:
  `AbstractService`, `JsonService`, `LocalJsonService`, `LocalProtobufService`, `LocalService`, `MockJsonService`, `MockProtobufService`, `ProtobufService`, `RemoteProtobufService`, `RemoteService`

    public interface Service

API for request-response calls to an Avatica server.

### Nested Class Summary

Nested Classes
`static class` `Service.Base` Base class for request and response.
`static class` `Service.CatalogsRequest` Request for `Meta.getCatalogs(Meta.ConnectionHandle)`.
`static class` `Service.CloseConnectionRequest` Request for `Meta.closeConnection(org.apache.calcite.avatica.Meta.ConnectionHandle)`.
`static class` `Service.CloseConnectionResponse` Response from `Service.CloseConnectionRequest`.
`static class` `Service.CloseStatementRequest` Request for `Meta.closeStatement(org.apache.calcite.avatica.Meta.StatementHandle)`.
`static class` `Service.CloseStatementResponse` Response from `Service.CloseStatementRequest`.
`static class` `Service.ColumnsRequest` Request for `Meta.getColumns(Meta.ConnectionHandle, String, org.apache.calcite.avatica.Meta.Pat, org.apache.calcite.avatica.Meta.Pat, org.apache.calcite.avatica.Meta.Pat)`.
`static class` `Service.CommitRequest` An RPC request to invoke a commit on a Connection.
`static class` `Service.CommitResponse` An RPC response from invoking commit on a Connection.
`static class` `Service.ConnectionSyncRequest` Request for `Meta.connectionSync(Meta.ConnectionHandle, Meta.ConnectionProperties)`.
`static class` `Service.ConnectionSyncResponse` Response for `Meta.connectionSync(Meta.ConnectionHandle, Meta.ConnectionProperties)`.
`static class` `Service.CreateStatementRequest` Request for `Meta.createStatement(org.apache.calcite.avatica.Meta.ConnectionHandle)`.
`static class` `Service.CreateStatementResponse` Response from `Service.CreateStatementRequest`.
`static class` `Service.DatabasePropertyRequest` Request for `Meta.getDatabaseProperties(Meta.ConnectionHandle)`.
`static class` `Service.DatabasePropertyResponse` Response for `Meta.getDatabaseProperties(Meta.ConnectionHandle)`.
`static class` `Service.ErrorResponse` Response for any request that the server failed to successfully perform.
`static class` `Service.ExecuteBatchRequest` Request object to execute a batch of commands.
`static class` `Service.ExecuteBatchResponse` Response object for executing a batch of commands.
`static class` `Service.ExecuteRequest` Request for `Meta.execute(org.apache.calcite.avatica.Meta.StatementHandle, java.util.List<org.apache.calcite.avatica.remote.TypedValue>, long)`.
`static class` `Service.ExecuteResponse` Response to a `Service.PrepareAndExecuteRequest`.
`static interface` `Service.Factory` Factory that creates a `Service`.
`static class` `Service.FetchRequest` Request for `Meta.fetch(org.apache.calcite.avatica.Meta.StatementHandle, long, int)`.
`static class` `Service.FetchResponse` Response from `Service.FetchRequest`.
`static class` `Service.OpenConnectionRequest` Request for `Meta.openConnection(org.apache.calcite.avatica.Meta.ConnectionHandle, java.util.Map<java.lang.String, java.lang.String>)`.
`static class` `Service.OpenConnectionResponse` Response from `Service.OpenConnectionRequest`.
`static class` `Service.PrepareAndExecuteBatchRequest` Request to prepare a statement and execute a series of batch commands in one call.
`static class` `Service.PrepareAndExecuteRequest` Request for `Meta.prepareAndExecute(Meta.StatementHandle, String, long, int, Meta.PrepareCallback)`.
`static class` `Service.PrepareRequest` Request for `Meta.prepare(Meta.ConnectionHandle, String, long)`.
`static class` `Service.PrepareResponse` Response from `Service.PrepareRequest`.
`static class` `Service.Request` Base class for all service request messages.
`static class` `Service.Response` Base class for all service response messages.
`static class` `Service.ResultSetResponse` Response that contains a result set.
`static class` `Service.RollbackRequest` An RPC request to invoke a rollback on a Connection.
`static class` `Service.RollbackResponse` An RPC response from invoking rollback on a Connection.
`static class` `Service.RpcMetadataResponse` Response that includes information about the server that handled an RPC.
`static class` `Service.SchemasRequest` Request for `Meta.getSchemas(Meta.ConnectionHandle, String, Meta.Pat)`.
`static class` `Service.SyncResultsRequest` Request for `apply(SyncResultsRequest)`
`static class` `Service.SyncResultsResponse` Response for `apply(SyncResultsRequest)`.
`static class` `Service.TablesRequest` Request for `Meta.getTables(Meta.ConnectionHandle, String, org.apache.calcite.avatica.Meta.Pat, org.apache.calcite.avatica.Meta.Pat, java.util.List)`
`static class` `Service.TableTypesRequest` Request for `Meta.getTableTypes(Meta.ConnectionHandle)`.
`static class` `Service.TypeInfoRequest` Request for `Meta.getTypeInfo(Meta.ConnectionHandle)`.

### Method Summary

All Methods Instance Methods Abstract Methods
`Service.ResultSetResponse` `apply​(Service.CatalogsRequest request)`
`Service.CloseConnectionResponse` `apply​(Service.CloseConnectionRequest request)`
`Service.CloseStatementResponse` `apply​(Service.CloseStatementRequest request)`
`Service.ResultSetResponse` `apply​(Service.ColumnsRequest request)`
`Service.CommitResponse` `apply​(Service.CommitRequest request)`
`Service.ConnectionSyncResponse` `apply​(Service.ConnectionSyncRequest request)`
`Service.CreateStatementResponse` `apply​(Service.CreateStatementRequest request)`
`Service.DatabasePropertyResponse` `apply​(Service.DatabasePropertyRequest request)`
`Service.ExecuteBatchResponse` `apply​(Service.ExecuteBatchRequest request)`
`Service.ExecuteResponse` `apply​(Service.ExecuteRequest request)`
`Service.FetchResponse` `apply​(Service.FetchRequest request)`
`Service.OpenConnectionResponse` `apply​(Service.OpenConnectionRequest request)`
`Service.ExecuteBatchResponse` `apply​(Service.PrepareAndExecuteBatchRequest request)`
`Service.ExecuteResponse` `apply​(Service.PrepareAndExecuteRequest request)`
`Service.PrepareResponse` `apply​(Service.PrepareRequest request)`
`Service.RollbackResponse` `apply​(Service.RollbackRequest request)`
`Service.ResultSetResponse` `apply​(Service.SchemasRequest request)`
`Service.SyncResultsResponse` `apply​(Service.SyncResultsRequest request)`
`Service.ResultSetResponse` `apply​(Service.TablesRequest request)`
`Service.ResultSetResponse` `apply​(Service.TableTypesRequest request)`
`Service.ResultSetResponse` `apply​(Service.TypeInfoRequest request)`
`void` `setRpcMetadata​(Service.RpcMetadataResponse metadata)` Sets server-level metadata for RPCs.

### Method Detail

#### apply

    Service.ResultSetResponse apply​(Service.CatalogsRequest request)

#### apply

    Service.ResultSetResponse apply​(Service.SchemasRequest request)

#### apply

    Service.ResultSetResponse apply​(Service.TablesRequest request)

#### apply

    Service.ResultSetResponse apply​(Service.TableTypesRequest request)

#### apply

    Service.ResultSetResponse apply​(Service.TypeInfoRequest request)

#### apply

    Service.ResultSetResponse apply​(Service.ColumnsRequest request)

#### apply

    Service.PrepareResponse apply​(Service.PrepareRequest request)

#### apply

    Service.ExecuteResponse apply​(Service.ExecuteRequest request)

#### apply

    Service.ExecuteResponse apply​(Service.PrepareAndExecuteRequest request)

#### apply

    Service.SyncResultsResponse apply​(Service.SyncResultsRequest request)

#### apply

    Service.FetchResponse apply​(Service.FetchRequest request)

#### apply

    Service.CreateStatementResponse apply​(Service.CreateStatementRequest request)

#### apply

    Service.CloseStatementResponse apply​(Service.CloseStatementRequest request)

#### apply

    Service.OpenConnectionResponse apply​(Service.OpenConnectionRequest request)

#### apply

    Service.CloseConnectionResponse apply​(Service.CloseConnectionRequest request)

#### apply

    Service.ConnectionSyncResponse apply​(Service.ConnectionSyncRequest request)

#### apply

    Service.DatabasePropertyResponse apply​(Service.DatabasePropertyRequest request)

#### apply

    Service.CommitResponse apply​(Service.CommitRequest request)

#### apply

    Service.RollbackResponse apply​(Service.RollbackRequest request)

#### apply

    Service.ExecuteBatchResponse apply​(Service.PrepareAndExecuteBatchRequest request)

#### apply

    Service.ExecuteBatchResponse apply​(Service.ExecuteBatchRequest request)

#### setRpcMetadata

    void setRpcMetadata​(Service.RpcMetadataResponse metadata)

Sets server-level metadata for RPCs. This includes information that is static across all RPCs.

Parameters:
  `metadata` - The server-level metadata.