Search in sources :

Example 1 with JsVariableDefinition

use of io.deephaven.web.client.api.console.JsVariableDefinition in project deephaven-core by deephaven.

the class IdeSession method getObject.

public Promise<?> getObject(JsPropertyMap<Object> definitionObject) {
    if (definitionObject instanceof JsVariableDefinition) {
        return connection.getObject((JsVariableDefinition) definitionObject);
    }
    if (!definitionObject.has("type")) {
        throw new IllegalArgumentException("no type field; could not getObject");
    }
    String type = definitionObject.getAsAny("type").asString();
    boolean hasName = definitionObject.has("name");
    boolean hasId = definitionObject.has("id");
    if (hasName && hasId) {
        throw new IllegalArgumentException("has both name and id field; could not getObject");
    } else if (hasName) {
        String name = definitionObject.getAsAny("name").asString();
        return getVariableDefinition(name, type).then(connection::getObject);
    } else if (hasId) {
        String id = definitionObject.getAsAny("id").asString();
        return connection.getObject(new JsVariableDefinition(type, null, id, null));
    } else {
        throw new IllegalArgumentException("no name/id field; could not construct getObject");
    }
}
Also used : JsVariableDefinition(io.deephaven.web.client.api.console.JsVariableDefinition)

Example 2 with JsVariableDefinition

use of io.deephaven.web.client.api.console.JsVariableDefinition in project deephaven-core by deephaven.

the class WorkerConnection method getTable.

public Promise<JsTable> getTable(JsVariableDefinition varDef, @Nullable Boolean applyPreviewColumns) {
    return whenServerReady("get a table").then(serve -> {
        JsLog.debug("innerGetTable", varDef.getTitle(), " started");
        return newState(info, (c, cts, metadata) -> {
            JsLog.debug("performing fetch for ", varDef.getTitle(), " / ", cts, " (" + LazyString.of(cts::getHandle), ")");
            // TODO (deephaven-core#188): eliminate this branch by applying preview cols before subscribing
            if (applyPreviewColumns == null || applyPreviewColumns) {
                ApplyPreviewColumnsRequest req = new ApplyPreviewColumnsRequest();
                req.setSourceId(TableTicket.createTableRef(varDef));
                req.setResultId(cts.getHandle().makeTicket());
                tableServiceClient.applyPreviewColumns(req, metadata, c::apply);
            } else {
                FetchTableRequest req = new FetchTableRequest();
                req.setSourceId(TableTicket.createTableRef(varDef));
                req.setResultId(cts.getHandle().makeTicket());
                tableServiceClient.fetchTable(req, metadata, c::apply);
            }
        }, "fetch table " + varDef.getTitle()).then(cts -> {
            JsLog.debug("innerGetTable", varDef.getTitle(), " succeeded ", cts);
            JsTable table = new JsTable(this, cts);
            return Promise.resolve(table);
        });
    });
}
Also used : Arrays(java.util.Arrays) InitialTableDefinition(io.deephaven.web.client.api.barrage.def.InitialTableDefinition) LogSubscriptionRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.console_pb.LogSubscriptionRequest) JsPropertyMap(jsinterop.base.JsPropertyMap) Buffer(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.Buffer) HandshakeResponse(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.session_pb.HandshakeResponse) TypedTicket(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.ticket_pb.TypedTicket) JsTimeZone(io.deephaven.web.client.api.i18n.JsTimeZone) ObjectServiceClient(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.object_pb_service.ObjectServiceClient) StackTrace(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.session_pb.terminationnotificationresponse.StackTrace) io.deephaven.web.shared.data(io.deephaven.web.shared.data) Map(java.util.Map) SessionServiceClient(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.session_pb_service.SessionServiceClient) FieldsChangeUpdate(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.application_pb.FieldsChangeUpdate) ListFieldsRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.application_pb.ListFieldsRequest) Set(java.util.Set) ClientTableState(io.deephaven.web.client.state.ClientTableState) ExportedTableCreationResponse(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.ExportedTableCreationResponse) JsArray(elemental2.core.JsArray) JsSet(elemental2.core.JsSet) Uint8Array(elemental2.core.Uint8Array) MetadataVersion(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.MetadataVersion) JsVariableDefinition(io.deephaven.web.client.api.console.JsVariableDefinition) KeyValue(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.KeyValue) ConsoleServiceClient(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.console_pb_service.ConsoleServiceClient) BarrageMessageWrapper(io.deephaven.javascript.proto.dhinternal.io.deephaven.barrage.flatbuf.barrage_generated.io.deephaven.barrage.flatbuf.BarrageMessageWrapper) JsRunnable(io.deephaven.web.shared.fu.JsRunnable) JsItr(io.deephaven.web.client.fu.JsItr) JsOptional(jsinterop.annotations.JsOptional) JsWidget(io.deephaven.web.client.api.widget.JsWidget) JsFigure(io.deephaven.web.client.api.widget.plot.JsFigure) Promise(elemental2.promise.Promise) BiDiStream(io.deephaven.web.client.api.barrage.stream.BiDiStream) Supplier(java.util.function.Supplier) RequestBatcher(io.deephaven.web.client.api.batch.RequestBatcher) ArrayList(java.util.ArrayList) Builder(io.deephaven.javascript.proto.dhinternal.flatbuffers.Builder) ResponseStreamWrapper(io.deephaven.web.client.api.barrage.stream.ResponseStreamWrapper) BiConsumer(java.util.function.BiConsumer) TableReviver(io.deephaven.web.client.state.TableReviver) FetchObjectRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.object_pb.FetchObjectRequest) JsTreeTable(io.deephaven.web.client.api.tree.JsTreeTable) TableServiceClient(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb_service.TableServiceClient) LazyPromise(io.deephaven.web.client.fu.LazyPromise) Nullable(javax.annotation.Nullable) BrowserHeaders(io.deephaven.javascript.proto.dhinternal.browserheaders.BrowserHeaders) LogSubscriptionData(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.console_pb.LogSubscriptionData) Ticket(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.ticket_pb.Ticket) ColumnDefinition(io.deephaven.web.client.api.barrage.def.ColumnDefinition) RecordBatch(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.message_generated.org.apache.arrow.flatbuf.RecordBatch) MergeTablesRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.MergeTablesRequest) ApplyPreviewColumnsRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.ApplyPreviewColumnsRequest) InputTableServiceClient(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.inputtable_pb_service.InputTableServiceClient) BarrageSubscriptionOptions(io.deephaven.javascript.proto.dhinternal.io.deephaven.barrage.flatbuf.barrage_generated.io.deephaven.barrage.flatbuf.BarrageSubscriptionOptions) ColumnConversionMode(io.deephaven.javascript.proto.dhinternal.io.deephaven.barrage.flatbuf.barrage_generated.io.deephaven.barrage.flatbuf.ColumnConversionMode) EmptyTableRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.EmptyTableRequest) BarrageUpdateMetadata(io.deephaven.javascript.proto.dhinternal.io.deephaven.barrage.flatbuf.barrage_generated.io.deephaven.barrage.flatbuf.BarrageUpdateMetadata) ByteBuffer(java.nio.ByteBuffer) TableConfig(io.deephaven.web.client.api.batch.TableConfig) TableReference(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.TableReference) JsVariableChanges(io.deephaven.web.client.api.console.JsVariableChanges) ReleaseRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.session_pb.ReleaseRequest) FlightData(io.deephaven.javascript.proto.dhinternal.arrow.flight.protocol.flight_pb.FlightData) ApplicationServiceClient(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.application_pb_service.ApplicationServiceClient) ExportedTableUpdatesRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.ExportedTableUpdatesRequest) JsLog(io.deephaven.web.client.fu.JsLog) Collectors(java.util.stream.Collectors) HasTableBinding(io.deephaven.web.client.state.HasTableBinding) List(java.util.List) FlightServiceClient(io.deephaven.javascript.proto.dhinternal.arrow.flight.protocol.flight_pb_service.FlightServiceClient) HasLifecycle(io.deephaven.web.client.api.lifecycle.HasLifecycle) Message(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.message_generated.org.apache.arrow.flatbuf.Message) JsWeakMap(elemental2.core.JsWeakMap) BarrageSubscriptionRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.barrage.flatbuf.barrage_generated.io.deephaven.barrage.flatbuf.BarrageSubscriptionRequest) ExportedTableUpdateMessage(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.ExportedTableUpdateMessage) Optional(java.util.Optional) TimeTableRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.TimeTableRequest) HandshakeRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.session_pb.HandshakeRequest) Code(io.deephaven.javascript.proto.dhinternal.grpcweb.grpc.Code) Grpc(io.deephaven.javascript.proto.dhinternal.grpcweb.Grpc) BrowserFlightServiceClient(io.deephaven.javascript.proto.dhinternal.arrow.flight.protocol.browserflight_pb_service.BrowserFlightServiceClient) BarrageMessageType(io.deephaven.javascript.proto.dhinternal.io.deephaven.barrage.flatbuf.barrage_generated.io.deephaven.barrage.flatbuf.BarrageMessageType) JsMethod(jsinterop.annotations.JsMethod) HashMap(java.util.HashMap) StateCache(io.deephaven.web.client.api.state.StateCache) HashSet(java.util.HashSet) FetchTableRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.FetchTableRequest) Js(jsinterop.base.Js) FieldNode(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.message_generated.org.apache.arrow.flatbuf.FieldNode) Charset(java.nio.charset.Charset) Field(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.Field) FetchObjectResponse(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.object_pb.FetchObjectResponse) Long(io.deephaven.javascript.proto.dhinternal.flatbuffers.Long) JsConsumer(io.deephaven.web.shared.fu.JsConsumer) DomGlobal(elemental2.dom.DomGlobal) Schema(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.Schema) TerminationNotificationRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.session_pb.TerminationNotificationRequest) JsDataHandler(io.deephaven.web.client.api.parse.JsDataHandler) BarrageUtils(io.deephaven.web.client.api.barrage.BarrageUtils) FieldInfo(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.application_pb.FieldInfo) BitSet(java.util.BitSet) MessageHeader(io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.message_generated.org.apache.arrow.flatbuf.MessageHeader) ApplyPreviewColumnsRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.ApplyPreviewColumnsRequest) FetchTableRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.FetchTableRequest)

Example 3 with JsVariableDefinition

use of io.deephaven.web.client.api.console.JsVariableDefinition in project deephaven-core by deephaven.

the class JsWidgetExportedObject method fetch.

@JsMethod
public Promise<?> fetch() {
    if (getType().equals(JsVariableChanges.TABLE)) {
        return Callbacks.<ExportedTableCreationResponse, Object>grpcUnaryPromise(c -> {
            connection.tableServiceClient().getExportedTableCreationResponse(ticket.getTicket(), connection.metadata(), c::apply);
        }).then(etcr -> {
            ClientTableState cts = connection.newStateFromUnsolicitedTable(etcr, "table for widget");
            JsTable table = new JsTable(connection, cts);
            // never attempt a reconnect, since we might have a different widget schema entirely
            table.addEventListener(JsTable.EVENT_DISCONNECT, ignore -> table.close());
            return Promise.resolve(table);
        });
    } else {
        return this.connection.getObject(new JsVariableDefinition(ticket.getType(), null, ticket.getTicket().getTicket_asB64(), null));
    }
}
Also used : Callbacks(io.deephaven.web.client.api.Callbacks) JsProperty(jsinterop.annotations.JsProperty) TypedTicket(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.ticket_pb.TypedTicket) JsVariableDefinition(io.deephaven.web.client.api.console.JsVariableDefinition) WorkerConnection(io.deephaven.web.client.api.WorkerConnection) JsVariableChanges(io.deephaven.web.client.api.console.JsVariableChanges) JsTable(io.deephaven.web.client.api.JsTable) JsMethod(jsinterop.annotations.JsMethod) ClientTableState(io.deephaven.web.client.state.ClientTableState) Promise(elemental2.promise.Promise) ExportedTableCreationResponse(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.table_pb.ExportedTableCreationResponse) JsTable(io.deephaven.web.client.api.JsTable) JsVariableDefinition(io.deephaven.web.client.api.console.JsVariableDefinition) ClientTableState(io.deephaven.web.client.state.ClientTableState) JsMethod(jsinterop.annotations.JsMethod)

Example 4 with JsVariableDefinition

use of io.deephaven.web.client.api.console.JsVariableDefinition in project deephaven-core by deephaven.

the class WorkerConnection method subscribeToFieldUpdates.

@JsMethod
@SuppressWarnings("ConstantConditions")
public JsRunnable subscribeToFieldUpdates(JsConsumer<JsVariableChanges> callback) {
    fieldUpdatesCallback.add(callback);
    if (fieldUpdatesCallback.size == 1) {
        fieldsChangeUpdateStream = ResponseStreamWrapper.of(applicationServiceClient.listFields(new ListFieldsRequest(), metadata));
        fieldsChangeUpdateStream.onData(data -> {
            final JsVariableDefinition[] created = new JsVariableDefinition[0];
            final JsVariableDefinition[] updated = new JsVariableDefinition[0];
            final JsVariableDefinition[] removed = new JsVariableDefinition[0];
            JsArray<FieldInfo> removedFI = data.getRemovedList();
            for (int i = 0; i < removedFI.length; ++i) {
                String removedId = removedFI.getAt(i).getTypedTicket().getTicket().getTicket_asB64();
                JsVariableDefinition result = knownFields.get(removedId);
                removed[removed.length] = result;
                knownFields.remove(removedId);
            }
            JsArray<FieldInfo> createdFI = data.getCreatedList();
            for (int i = 0; i < createdFI.length; ++i) {
                JsVariableDefinition result = new JsVariableDefinition(createdFI.getAt(i));
                created[created.length] = result;
                knownFields.put(result.getId(), result);
            }
            JsArray<FieldInfo> updatedFI = data.getUpdatedList();
            for (int i = 0; i < updatedFI.length; ++i) {
                JsVariableDefinition result = new JsVariableDefinition(updatedFI.getAt(i));
                updated[updated.length] = result;
                knownFields.put(result.getId(), result);
            }
            // Ensure that if a new subscription is in line to receive its initial update, we need to defer
            // the updates until after it receives its initial state.
            LazyPromise.runLater(() -> notifyFieldsChangeListeners(new JsVariableChanges(created, updated, removed)));
        });
        fieldsChangeUpdateStream.onEnd(this::checkStatus);
    } else {
        final JsVariableDefinition[] empty = new JsVariableDefinition[0];
        final JsVariableChanges update = new JsVariableChanges(knownFields.values().toArray(empty), empty, empty);
        LazyPromise.runLater(() -> {
            callback.apply(update);
        });
    }
    return () -> {
        fieldUpdatesCallback.delete(callback);
        if (fieldUpdatesCallback.size == 0) {
            knownFields.clear();
            if (fieldsChangeUpdateStream != null) {
                fieldsChangeUpdateStream.cancel();
                fieldsChangeUpdateStream = null;
            }
        }
    };
}
Also used : JsVariableDefinition(io.deephaven.web.client.api.console.JsVariableDefinition) ListFieldsRequest(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.application_pb.ListFieldsRequest) JsVariableChanges(io.deephaven.web.client.api.console.JsVariableChanges) FieldInfo(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.application_pb.FieldInfo) JsMethod(jsinterop.annotations.JsMethod)

Example 5 with JsVariableDefinition

use of io.deephaven.web.client.api.console.JsVariableDefinition in project deephaven-core by deephaven.

the class IdeSession method getVariableDefinition.

private Promise<JsVariableDefinition> getVariableDefinition(String name, String type) {
    LazyPromise<JsVariableDefinition> promise = new LazyPromise<>();
    final class Listener implements Consumer<JsVariableChanges> {

        final JsRunnable subscription;

        Listener() {
            subscription = subscribeToFieldUpdates(this::accept);
        }

        @Override
        public void accept(JsVariableChanges changes) {
            JsVariableDefinition foundField = changes.getCreated().find((field, p1, p2) -> field.getTitle().equals(name) && field.getType().equals(type));
            if (foundField == null) {
                foundField = changes.getUpdated().find((field, p1, p2) -> field.getTitle().equals(name) && field.getType().equals(type));
            }
            if (foundField != null) {
                subscription.run();
                promise.succeed(foundField);
            }
        }
    }
    Listener listener = new Listener();
    return promise.timeout(10_000).asPromise().then(Promise::resolve, fail -> {
        listener.subscription.run();
        // noinspection unchecked, rawtypes
        return (Promise<JsVariableDefinition>) (Promise) Promise.reject(fail);
    });
}
Also used : JsRunnable(io.deephaven.web.shared.fu.JsRunnable) JsOptional(jsinterop.annotations.JsOptional) JsCommandResult(io.deephaven.web.client.api.console.JsCommandResult) JsFigure(io.deephaven.web.client.api.widget.plot.JsFigure) HashMap(java.util.HashMap) Promise(elemental2.promise.Promise) BiDiStream(io.deephaven.web.client.api.barrage.stream.BiDiStream) JsPropertyMap(jsinterop.base.JsPropertyMap) Supplier(java.util.function.Supplier) Any(jsinterop.base.Any) EVENT_TABLE_OPENED(io.deephaven.web.client.api.QueryConnectable.EVENT_TABLE_OPENED) Js(jsinterop.base.Js) JsArrayLike(jsinterop.base.JsArrayLike) JsVariableChanges(io.deephaven.web.client.api.console.JsVariableChanges) Map(java.util.Map) io.deephaven.web.client.api(io.deephaven.web.client.api) io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.console_pb(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.console_pb) JsType(jsinterop.annotations.JsType) LazyPromise(io.deephaven.web.client.fu.LazyPromise) ExecutionHandle(io.deephaven.web.shared.ide.ExecutionHandle) JsLog(io.deephaven.web.client.fu.JsLog) JsConsumer(io.deephaven.web.shared.fu.JsConsumer) Ticket(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.ticket_pb.Ticket) CustomEventInit(elemental2.dom.CustomEventInit) TextDocumentContentChangeEvent(io.deephaven.javascript.proto.dhinternal.io.deephaven.proto.console_pb.changedocumentrequest.TextDocumentContentChangeEvent) JsArray(elemental2.core.JsArray) JsSet(elemental2.core.JsSet) Consumer(java.util.function.Consumer) LogItem(io.deephaven.web.shared.data.LogItem) JsIgnore(jsinterop.annotations.JsIgnore) JsVariableDefinition(io.deephaven.web.client.api.console.JsVariableDefinition) CancellablePromise(io.deephaven.web.client.fu.CancellablePromise) Timer(com.google.gwt.user.client.Timer) Promise(elemental2.promise.Promise) LazyPromise(io.deephaven.web.client.fu.LazyPromise) CancellablePromise(io.deephaven.web.client.fu.CancellablePromise) JsRunnable(io.deephaven.web.shared.fu.JsRunnable) JsConsumer(io.deephaven.web.shared.fu.JsConsumer) Consumer(java.util.function.Consumer) JsVariableDefinition(io.deephaven.web.client.api.console.JsVariableDefinition) LazyPromise(io.deephaven.web.client.fu.LazyPromise) JsVariableChanges(io.deephaven.web.client.api.console.JsVariableChanges)

Aggregations

JsVariableDefinition (io.deephaven.web.client.api.console.JsVariableDefinition)6 JsVariableChanges (io.deephaven.web.client.api.console.JsVariableChanges)5 Promise (elemental2.promise.Promise)4 JsArray (elemental2.core.JsArray)3 JsSet (elemental2.core.JsSet)3 JsMethod (jsinterop.annotations.JsMethod)3 JsWeakMap (elemental2.core.JsWeakMap)2 Uint8Array (elemental2.core.Uint8Array)2 DomGlobal (elemental2.dom.DomGlobal)2 FieldNode (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.message_generated.org.apache.arrow.flatbuf.FieldNode)2 Message (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.message_generated.org.apache.arrow.flatbuf.Message)2 MessageHeader (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.message_generated.org.apache.arrow.flatbuf.MessageHeader)2 RecordBatch (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.message_generated.org.apache.arrow.flatbuf.RecordBatch)2 Buffer (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.Buffer)2 Field (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.Field)2 KeyValue (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.KeyValue)2 MetadataVersion (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.MetadataVersion)2 Schema (io.deephaven.javascript.proto.dhinternal.arrow.flight.flatbuf.schema_generated.org.apache.arrow.flatbuf.Schema)2 BrowserFlightServiceClient (io.deephaven.javascript.proto.dhinternal.arrow.flight.protocol.browserflight_pb_service.BrowserFlightServiceClient)2 FlightData (io.deephaven.javascript.proto.dhinternal.arrow.flight.protocol.flight_pb.FlightData)2