Interface FlightServiceGrpc.AsyncService

All Known Implementing Classes:
FlightServiceGrpc.FlightServiceImplBase
Enclosing class:
FlightServiceGrpc

public static interface FlightServiceGrpc.AsyncService
 A flight service is an endpoint for retrieving or storing Arrow data. A
 flight service can expose one or more predefined endpoints that can be
 accessed using the Arrow Flight Protocol. Additionally, a flight service
 can expose a set of actions that are available.
 
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    doAction(Flight.Action request, io.grpc.stub.StreamObserver<Flight.Result> responseObserver)
    Flight services can support an arbitrary number of simple actions in addition to the possible ListFlights, GetFlightInfo, DoGet, DoPut operations that are potentially available.
    default io.grpc.stub.StreamObserver<Flight.FlightData>
    doExchange(io.grpc.stub.StreamObserver<Flight.FlightData> responseObserver)
    Open a bidirectional data channel for a given descriptor.
    default void
    doGet(Flight.Ticket request, io.grpc.stub.StreamObserver<Flight.FlightData> responseObserver)
    Retrieve a single stream associated with a particular descriptor associated with the referenced ticket.
    default io.grpc.stub.StreamObserver<Flight.FlightData>
    doPut(io.grpc.stub.StreamObserver<Flight.PutResult> responseObserver)
    Push a stream to the flight service associated with a particular flight stream.
    default void
    getFlightInfo(Flight.FlightDescriptor request, io.grpc.stub.StreamObserver<Flight.FlightInfo> responseObserver)
    For a given FlightDescriptor, get information about how the flight can be consumed.
    default void
    getSchema(Flight.FlightDescriptor request, io.grpc.stub.StreamObserver<Flight.SchemaResult> responseObserver)
    For a given FlightDescriptor, get the Schema as described in Schema.fbs::Schema This is used when a consumer needs the Schema of flight stream.
    default io.grpc.stub.StreamObserver<Flight.HandshakeRequest>
    handshake(io.grpc.stub.StreamObserver<Flight.HandshakeResponse> responseObserver)
    Handshake between client and server.
    default void
    listActions(Flight.Empty request, io.grpc.stub.StreamObserver<Flight.ActionType> responseObserver)
    A flight service exposes all of the available action types that it has along with descriptions.
    default void
    listFlights(Flight.Criteria request, io.grpc.stub.StreamObserver<Flight.FlightInfo> responseObserver)
    Get a list of available streams given a particular criteria.
    default void
    pollFlightInfo(Flight.FlightDescriptor request, io.grpc.stub.StreamObserver<Flight.PollInfo> responseObserver)
    For a given FlightDescriptor, start a query and get information to poll its execution status.
  • Method Details

    • handshake

      default io.grpc.stub.StreamObserver<Flight.HandshakeRequest> handshake(io.grpc.stub.StreamObserver<Flight.HandshakeResponse> responseObserver)
       Handshake between client and server. Depending on the server, the
       handshake may be required to determine the token that should be used for
       future operations. Both request and response are streams to allow multiple
       round-trips depending on auth mechanism.
       
    • listFlights

      default void listFlights(Flight.Criteria request, io.grpc.stub.StreamObserver<Flight.FlightInfo> responseObserver)
       Get a list of available streams given a particular criteria. Most flight
       services will expose one or more streams that are readily available for
       retrieval. This api allows listing the streams available for
       consumption. A user can also provide a criteria. The criteria can limit
       the subset of streams that can be listed via this interface. Each flight
       service allows its own definition of how to consume criteria.
       
    • getFlightInfo

      default void getFlightInfo(Flight.FlightDescriptor request, io.grpc.stub.StreamObserver<Flight.FlightInfo> responseObserver)
       For a given FlightDescriptor, get information about how the flight can be
       consumed. This is a useful interface if the consumer of the interface
       already can identify the specific flight to consume. This interface can
       also allow a consumer to generate a flight stream through a specified
       descriptor. For example, a flight descriptor might be something that
       includes a SQL statement or a Pickled Python operation that will be
       executed. In those cases, the descriptor will not be previously available
       within the list of available streams provided by ListFlights but will be
       available for consumption for the duration defined by the specific flight
       service.
       
    • pollFlightInfo

      default void pollFlightInfo(Flight.FlightDescriptor request, io.grpc.stub.StreamObserver<Flight.PollInfo> responseObserver)
       For a given FlightDescriptor, start a query and get information
       to poll its execution status. This is a useful interface if the
       query may be a long-running query. The first PollFlightInfo call
       should return as quickly as possible. (GetFlightInfo doesn't
       return until the query is complete.)
       A client can consume any available results before
       the query is completed. See PollInfo.info for details.
       A client can poll the updated query status by calling
       PollFlightInfo() with PollInfo.flight_descriptor. A server
       should not respond until the result would be different from last
       time. That way, the client can "long poll" for updates
       without constantly making requests. Clients can set a short timeout
       to avoid blocking calls if desired.
       A client can't use PollInfo.flight_descriptor after
       PollInfo.expiration_time passes. A server might not accept the
       retry descriptor anymore and the query may be cancelled.
       A client may use the CancelFlightInfo action with
       PollInfo.info to cancel the running query.
       
    • getSchema

      default void getSchema(Flight.FlightDescriptor request, io.grpc.stub.StreamObserver<Flight.SchemaResult> responseObserver)
       For a given FlightDescriptor, get the Schema as described in Schema.fbs::Schema
       This is used when a consumer needs the Schema of flight stream. Similar to
       GetFlightInfo this interface may generate a new flight that was not previously
       available in ListFlights.
       
    • doGet

      default void doGet(Flight.Ticket request, io.grpc.stub.StreamObserver<Flight.FlightData> responseObserver)
       Retrieve a single stream associated with a particular descriptor
       associated with the referenced ticket. A Flight can be composed of one or
       more streams where each stream can be retrieved using a separate opaque
       ticket that the flight service uses for managing a collection of streams.
       
    • doPut

      default io.grpc.stub.StreamObserver<Flight.FlightData> doPut(io.grpc.stub.StreamObserver<Flight.PutResult> responseObserver)
       Push a stream to the flight service associated with a particular
       flight stream. This allows a client of a flight service to upload a stream
       of data. Depending on the particular flight service, a client consumer
       could be allowed to upload a single stream per descriptor or an unlimited
       number. In the latter, the service might implement a 'seal' action that
       can be applied to a descriptor once all streams are uploaded.
       
    • doExchange

      default io.grpc.stub.StreamObserver<Flight.FlightData> doExchange(io.grpc.stub.StreamObserver<Flight.FlightData> responseObserver)
       Open a bidirectional data channel for a given descriptor. This
       allows clients to send and receive arbitrary Arrow data and
       application-specific metadata in a single logical stream. In
       contrast to DoGet/DoPut, this is more suited for clients
       offloading computation (rather than storage) to a Flight service.
       
    • doAction

      default void doAction(Flight.Action request, io.grpc.stub.StreamObserver<Flight.Result> responseObserver)
       Flight services can support an arbitrary number of simple actions in
       addition to the possible ListFlights, GetFlightInfo, DoGet, DoPut
       operations that are potentially available. DoAction allows a flight client
       to do a specific action against a flight service. An action includes
       opaque request and response objects that are specific to the type action
       being undertaken.
       
    • listActions

      default void listActions(Flight.Empty request, io.grpc.stub.StreamObserver<Flight.ActionType> responseObserver)
       A flight service exposes all of the available action types that it has
       along with descriptions. This allows different flight consumers to
       understand the capabilities of the flight service.