Class SessionServiceGrpc.SessionServiceFutureStub

java.lang.Object
io.grpc.stub.AbstractStub<S>
io.grpc.stub.AbstractFutureStub<SessionServiceGrpc.SessionServiceFutureStub>
io.deephaven.proto.backplane.grpc.SessionServiceGrpc.SessionServiceFutureStub
Enclosing class:
SessionServiceGrpc

public static final class SessionServiceGrpc.SessionServiceFutureStub extends io.grpc.stub.AbstractFutureStub<SessionServiceGrpc.SessionServiceFutureStub>
A stub to allow clients to do ListenableFuture-style rpc calls to service SessionService.
 User supplied Flight.Ticket(s) should begin with 'e' byte followed by an signed little-endian int. The client is only
 allowed to use the positive exportId key-space (client generated exportIds should be greater than 0). The client is
 encouraged to use a packed ranges of ids as this yields the smallest footprint server side for long running sessions.
 The client is responsible for releasing all Flight.Tickets that they create or that were created for them via a gRPC
 call. The documentation for the gRPC call will indicate that the exports must be released. Exports that need to be
 released will always be communicated over the session's ExportNotification stream.
 When a session ends, either explicitly or due to timeout, all exported objects in that session are released
 automatically.
 Some parts of the API return a Flight.Ticket that does not need to be released. It is not an error to attempt to
 release them.
 
  • Method Details

    • build

      protected SessionServiceGrpc.SessionServiceFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions callOptions)
      Specified by:
      build in class io.grpc.stub.AbstractStub<SessionServiceGrpc.SessionServiceFutureStub>
    • newSession

      @Deprecated public com.google.common.util.concurrent.ListenableFuture<HandshakeResponse> newSession(HandshakeRequest request)
      Deprecated.
       Handshake between client and server to create a new session. The response includes a metadata header name and the
       token to send on every subsequent request. The auth mechanisms here are unary to best support grpc-web.
       Deprecated: Please use Flight's Handshake or http authorization headers instead.
       
    • refreshSessionToken

      @Deprecated public com.google.common.util.concurrent.ListenableFuture<HandshakeResponse> refreshSessionToken(HandshakeRequest request)
      Deprecated.
       Keep-alive a given token to ensure that a session is not cleaned prematurely. The response may include an updated
       token that should replace the existing token for subsequent requests.
       Deprecated: Please use Flight's Handshake with an empty payload.
       
    • closeSession

      public com.google.common.util.concurrent.ListenableFuture<CloseSessionResponse> closeSession(HandshakeRequest request)
       Proactively close an open session. Sessions will automatically close on timeout. When a session is closed, all
       unreleased exports will be automatically released.
       
    • release

      public com.google.common.util.concurrent.ListenableFuture<ReleaseResponse> release(ReleaseRequest request)
       Attempts to release an export by its ticket. Returns true if an existing export was found. It is the client's
       responsibility to release all resources they no longer want the server to hold on to. Proactively cancels work; do
       not release a ticket that is needed by dependent work that has not yet finished
       (i.e. the dependencies that are staying around should first be in EXPORTED state).
       
    • exportFromTicket

      public com.google.common.util.concurrent.ListenableFuture<ExportResponse> exportFromTicket(ExportRequest request)
       Makes a copy from a source ticket to a client managed result ticket. The source ticket does not need to be
       a client managed ticket.
       
    • publishFromTicket

      public com.google.common.util.concurrent.ListenableFuture<PublishResponse> publishFromTicket(PublishRequest request)
       Makes a copy from a source ticket and publishes to a result ticket. Neither the source ticket, nor the destination
       ticket, need to be a client managed ticket.
       
    • terminationNotification

      public com.google.common.util.concurrent.ListenableFuture<TerminationNotificationResponse> terminationNotification(TerminationNotificationRequest request)
       Receive a best-effort message on-exit indicating why this server is exiting. Reception of this message cannot be
       guaranteed.