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
Modifier and Type
Interface
Description
`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

Modifier and Type
Method
Description
`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 Details

### 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.