Class RemoteTableDataService
java.lang.Object
com.illumon.iris.db.v2.tabledataservice.AbstractTableDataService
com.illumon.iris.db.v2.locations.remote.RemoteTableDataService
- All Implemented Interfaces:
TableDataService,NamedImplementation
Remote
TableDataService implementation.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classConnectInfo is a class that holds the information required to connect to a remote server.classTableLocationProvider implementation that delegates to appropriate Requests.Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.tabledataservice.TableDataService
TableDataService.Null -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final booleanprotected final Stringprotected final longprotected final boolean -
Constructor Summary
ConstructorsConstructorDescriptionRemoteTableDataService(io.deephaven.enterprise.niowrapper.sched.Scheduler scheduler, com.fishlib.io.logger.Logger log, String name, long requestTimeoutMillis, boolean supportsSubscriptions, boolean allowIOMessageFlush) Deprecated.RemoteTableDataService(io.deephaven.enterprise.niowrapper.sched.Scheduler scheduler, com.fishlib.io.logger.Logger log, String name, long requestTimeoutMillis, boolean supportsSubscriptions, boolean allowIOMessageFlush, RemoteTableDataService.ConnectInfo connectInfo) Construct a new remote table data service, ready to be connected. -
Method Summary
Modifier and TypeMethodDescriptionvoidAuthenticate the TableDataService usingAuthenticationClientManager.getDefault()connect(com.fishlib.base.Function.Nullary<SocketAddress> addressFunction) Connect to a remote server by address function, allowing fallback to different server addresses.Connect to a remote server.connect(InetSocketAddress address) Connect to a remote server.describe()Like toString, but with more detail.booleangetKey()Return a key object that identifies this TableDataService instance, and does not hold resources.inthashCode()protected TableLocationProvidermakeTableLocationProvider(TableKey tableKey) voidshutdown()Stop any processes and release resources held by this TableDataService instance.toString()Methods inherited from class com.illumon.iris.db.v2.tabledataservice.AbstractTableDataService
getKnownLocationProviders, getName, getTableLocationProvider, reset, resetMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.illumon.util.type.NamedImplementation
getImplementationNameMethods inherited from interface com.illumon.iris.db.v2.tabledataservice.TableDataService
getTableLocationProvider
-
Field Details
-
logPrefix
-
requestTimeoutMillis
protected final long requestTimeoutMillis -
supportsSubscriptions
protected final boolean supportsSubscriptions -
allowIOMessageFlush
protected final boolean allowIOMessageFlush
-
-
Constructor Details
-
RemoteTableDataService
public RemoteTableDataService(@NotNull io.deephaven.enterprise.niowrapper.sched.Scheduler scheduler, @NotNull com.fishlib.io.logger.Logger log, @NotNull String name, long requestTimeoutMillis, boolean supportsSubscriptions, boolean allowIOMessageFlush, @NotNull RemoteTableDataService.ConnectInfo connectInfo) Construct a new remote table data service, ready to be connected.- Parameters:
scheduler- Job schedulerlog- Logger for outputname- Remote service namerequestTimeoutMillis- The timeout value to use for all requestssupportsSubscriptions- Whether the service underlying the TableDataServiceExporter we connect to supports subscriptionsallowIOMessageFlush- allow synchronous flush of message buffersconnectInfo- the information that will be used to connect to the remote server
-
RemoteTableDataService
@Deprecated public RemoteTableDataService(@NotNull io.deephaven.enterprise.niowrapper.sched.Scheduler scheduler, @NotNull com.fishlib.io.logger.Logger log, @NotNull String name, long requestTimeoutMillis, boolean supportsSubscriptions, boolean allowIOMessageFlush) Deprecated.UseRemoteTableDataService(Scheduler, Logger, String, long, boolean, boolean, ConnectInfo)instead, withnew ConnectInfo.NULL()as the last argument if necessary.
Construct a new remote table data service, ready to be connected. This constructor does not include ConnectInfo, so cannot be used where the TableDataService is tracked.- Parameters:
scheduler- Job schedulerlog- Logger for outputname- Remote service namerequestTimeoutMillis- The timeout value to use for all requestssupportsSubscriptions- Whether the service underlying the TableDataServiceExporter we connect to supports subscriptionsallowIOMessageFlush- allow synchronous flush of message buffers
-
-
Method Details
-
getKey
Description copied from interface:TableDataServiceReturn a key object that identifies this TableDataService instance, and does not hold resources.- Specified by:
getKeyin interfaceTableDataService- Overrides:
getKeyin classAbstractTableDataService- Returns:
- a TableDataServiceKey for this TableDataService
-
authenticate
public void authenticate()Description copied from interface:TableDataServiceAuthenticate the TableDataService usingAuthenticationClientManager.getDefault() -
connect
Connect to a remote server.- Parameters:
address- The host/port to connect to- Returns:
- this
- Throws:
IOException
-
connect
Connect to a remote server.- Parameters:
host- The host to connect toport- The port to connect to- Returns:
- this
- Throws:
IOException
-
connect
public RemoteTableDataService connect(@NotNull com.fishlib.base.Function.Nullary<SocketAddress> addressFunction) throws IOException Connect to a remote server by address function, allowing fallback to different server addresses.- Parameters:
addressFunction- The address function to determine each connection attempt's host and port- Returns:
- this
- Throws:
IOException
-
shutdown
public void shutdown()Description copied from interface:TableDataServiceStop any processes and release resources held by this TableDataService instance. -
makeTableLocationProvider
- Specified by:
makeTableLocationProviderin classAbstractTableDataService
-
toString
- Overrides:
toStringin classAbstractTableDataService
-
describe
Description copied from interface:TableDataServiceLike toString, but with more detail.- Returns:
- a description string
-
equals
-
hashCode
public int hashCode()
-
RemoteTableDataService(Scheduler, Logger, String, long, boolean, boolean, ConnectInfo)instead, withnew ConnectInfo.NULL()as the last argument if necessary.