Class DataRoutingServiceKvImpl
java.lang.Object
com.illumon.iris.db.v2.routing.DataRoutingService.Delegating
com.illumon.iris.db.v2.routing.impl.kv.DataRoutingServiceKvImpl
- All Implemented Interfaces:
DataRoutingService
,EndpointResolver
,WritableDataRoutingService
,WritableDataRoutingServiceImpl
,SafeCloseable
,NamedImplementation
,io.deephaven.kv.routing.RoutingFileContext.RoutingFileListener
,io.deephaven.kv.WatchClient.StateListener<io.deephaven.kv.routing.RoutingFile>
,AutoCloseable
- Direct Known Subclasses:
DataRoutingServiceKvEtcdImpl
,DataRoutingServiceKvInMemImpl
public abstract class DataRoutingServiceKvImpl
extends DataRoutingService.Delegating
implements io.deephaven.kv.routing.RoutingFileContext.RoutingFileListener, WritableDataRoutingServiceImpl
Initializes the DataRoutingService from a kv store.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.routing.DataRoutingService
DataRoutingService.DeferredEndpoint, DataRoutingService.Delegating, DataRoutingService.Endpoint, DataRoutingService.EndpointConfig, DataRoutingService.NotReadyException, DataRoutingService.NullPropertyProvider, DataRoutingService.PropertyProvider
-
Field Summary
Fields inherited from interface com.illumon.iris.db.v2.routing.DataRoutingService
DEFAULT_LOCAL_TABLE_DATA_SERVICE, DEFAULT_QUERY_SERVER_TABLE_DATA_SERVICE, DEFAULT_SELECTION_TAG, HOST_TAG, MERGE_QUERY_TDS_TAG, NULL_PROPERTY_PROVIDER, PORT_TAG, QUERY_QUERY_TDS_TAG, SERVICE_REGISTRY_NONE, SERVICE_REGISTRY_SERVICE, TABLE_DATA_PORT_TAG, TABLE_DATA_SERVICE_CONFIG_PROP, TABLE_DATA_SERVICE_CONFIG_PROPS_WITH_LEGACY, TAILER_PORT_TAG, VALIDATE_QUERY_TDS_TAG
-
Method Summary
Modifier and TypeMethodDescriptionabout()
Information about a DataRoutingService instance.Serialize the data routing as a YAML string.void
close()
protected DataRoutingService
abstract String
Get a name for the implementing class.void
void
void
onInitialState
(io.deephaven.kv.HeaderResponse header, io.deephaven.kv.routing.RoutingFile state) void
onInitialStateNotPresent
(io.deephaven.kv.HeaderResponse header) void
onNextState
(io.deephaven.kv.WatchResponseUnit unit, io.deephaven.kv.routing.RoutingFile state) void
onNextStateNotPresent
(io.deephaven.kv.WatchResponseUnit unit) toString()
void
Replace the existing data routing configuration.void
Replace the existing data routing configuration.Methods inherited from class com.illumon.iris.db.v2.routing.DataRoutingService.Delegating
getAllDataImportServiceDestinationConfigs, getAllLogAggregatorServiceConfigs, getCollectedClaims, getDataImportServiceConfig, getDataImportServiceDestinationConfigs, getLogAggregatorConfig, getLogAggregatorDestinationConfig, getTableDataServiceConfig, getTableDataServiceConfigs
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.illumon.iris.db.v2.routing.DataRoutingService
authenticate, authenticate, authenticate, getAllDataImportServiceDeferredDestinations, getAllDataImportServiceDestinationConfigs, getAllDataImportServiceDestinations, getAllLogAggregatorServiceConfigs, getCollectedClaims, getDataImportServiceConfig, getDataImportServiceConfigWithStorage, getDataImportServiceDeferredDestinations, getDataImportServiceDestinationConfigs, getDataImportServiceDestinations, getLocalInstance, getLogAggregatorConfig, getLogAggregatorDeferredDestination, getLogAggregatorDestination, getLogAggregatorDestinationConfig, getTableDataServiceConfig, getTableDataServiceConfigs
Methods inherited from interface com.illumon.iris.db.v2.routing.endpoint.EndpointResolver
resolveLogAggregatorEndpoint, resolveTableDataEndpoint, resolveTailerEndpoint
-
Method Details
-
update
Description copied from interface:WritableDataRoutingService
Replace the existing data routing configuration.- Specified by:
update
in interfaceWritableDataRoutingService
- Parameters:
yamldata
- YAML representation of the new data routing configurationcode
- pass-thru to kv persistence, indicates the code source of this updatecomment
- pass-thru to kv persistence - a comment for this update
-
update
public void update(@NotNull byte[] yamldata, @NotNull String user, @NotNull String code, @NotNull String comment) Description copied from interface:WritableDataRoutingServiceImpl
Replace the existing data routing configuration.- Specified by:
update
in interfaceWritableDataRoutingServiceImpl
- Parameters:
yamldata
- YAML representation of the new data routing configurationuser
- pass-thru to kv persistence, indicates the user making this changecode
- pass-thru to kv persistence, indicates the code source of this updatecomment
- pass-thru to kv persistence - a comment for this update
-
getImplementationName
Description copied from interface:NamedImplementation
Get a name for the implementing class. Useful for abstract classes that implement
LogOutputAppendable
or overridetoString
.The default implementation is correct, but not suitable for high-frequency usage.
- Specified by:
getImplementationName
in interfaceNamedImplementation
- Specified by:
getImplementationName
in classDataRoutingService.Delegating
- Returns:
- A name for the implementing class
-
about
Description copied from interface:DataRoutingService
Information about a DataRoutingService instance. Useful for debugging.- Specified by:
about
in interfaceDataRoutingService
- Specified by:
about
in classDataRoutingService.Delegating
- Returns:
- a string containing information about the instance
-
toString
-
close
public void close()- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceSafeCloseable
- Overrides:
close
in classDataRoutingService.Delegating
-
asYamlString
Description copied from interface:DataRoutingService
Serialize the data routing as a YAML string. Internal use only.- Specified by:
asYamlString
in interfaceDataRoutingService
- Overrides:
asYamlString
in classDataRoutingService.Delegating
- Returns:
- YAML representation of the configuration
-
onInitialState
public void onInitialState(@NotNull io.deephaven.kv.HeaderResponse header, @NotNull io.deephaven.kv.routing.RoutingFile state) - Specified by:
onInitialState
in interfaceio.deephaven.kv.WatchClient.StateListener<io.deephaven.kv.routing.RoutingFile>
-
onInitialStateNotPresent
public void onInitialStateNotPresent(@NotNull io.deephaven.kv.HeaderResponse header) - Specified by:
onInitialStateNotPresent
in interfaceio.deephaven.kv.WatchClient.StateListener<io.deephaven.kv.routing.RoutingFile>
-
onNextState
public void onNextState(@NotNull io.deephaven.kv.WatchResponseUnit unit, @NotNull io.deephaven.kv.routing.RoutingFile state) - Specified by:
onNextState
in interfaceio.deephaven.kv.WatchClient.StateListener<io.deephaven.kv.routing.RoutingFile>
-
onNextStateNotPresent
public void onNextStateNotPresent(@NotNull io.deephaven.kv.WatchResponseUnit unit) - Specified by:
onNextStateNotPresent
in interfaceio.deephaven.kv.WatchClient.StateListener<io.deephaven.kv.routing.RoutingFile>
-
onError
- Specified by:
onError
in interfaceio.deephaven.kv.WatchClient.StateListener<io.deephaven.kv.routing.RoutingFile>
-
onCompleted
public void onCompleted()- Specified by:
onCompleted
in interfaceio.deephaven.kv.WatchClient.StateListener<io.deephaven.kv.routing.RoutingFile>
-
getDelegate
- Specified by:
getDelegate
in classDataRoutingService.Delegating
-