Class LocalTableDataService
java.lang.Object
com.illumon.iris.db.v2.tabledataservice.AbstractTableDataService
com.illumon.iris.db.v2.locations.local.LocalTableDataService
- All Implemented Interfaces:
TableDataService
,NamedImplementation
A table data service that finds locations via scanning a well-known directory hierarchy on a filesystem.
Note that multiple actual filesystems may be traversed depending on how links are assembled in the directory structure, and that remote filesystems (e.g. NFS) may be included.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.tabledataservice.TableDataService
TableDataService.Null
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionLocalTableDataService
(LocalTablePathManager locationManager) Simple read-only service for all supported table types.LocalTableDataService
(LocalTablePathManager locationManager, DataRoutingService.PropertyProvider properties) Simple read-only service for all supported table types.LocalTableDataService
(LocalTablePathManager locationManager, EnumSet<TableType> tableTypes, boolean writable, DataRoutingService.PropertyProvider properties) LocalTableDataService
(File root) Deprecated.the caller should have a LocalTablePathManager.LocalTableDataService
(String name, LocalTablePathManager locationManager, EnumSet<TableType> tableTypes, boolean writable, DataRoutingService.PropertyProvider properties) Delegate toLocalTableDataService(String, LocalTablePathManager, EnumSet, boolean, DataRoutingService.PropertyProvider, boolean)
with useMetadataIndexing set according to the default property and writable parameter.LocalTableDataService
(String name, LocalTablePathManager locationManager, EnumSet<TableType> tableTypes, boolean writable, DataRoutingService.PropertyProvider properties, boolean useMetadataIndexing) The main constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Authenticate the TableDataService usingAuthenticationClientManager.getDefault()
boolean
getKey()
Return a key object that identifies this TableDataService instance, and does not hold resources.final LocalTablePathManager
int
hashCode()
protected TableLocationProvider
makeTableLocationProvider
(TableKey tableKey) void
shutdown()
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, reset
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.illumon.util.type.NamedImplementation
getImplementationName
Methods inherited from interface com.illumon.iris.db.v2.tabledataservice.TableDataService
describe, getTableLocationProvider
-
Field Details
-
GLOBAL_TABLE_LOCATION_REFRESH_MILLIS_PROP
- See Also:
-
GLOBAL_TABLE_SIZE_REFRESH_MILLIS_PROP
- See Also:
-
GLOBAL_REFRESH_THREAD_POOL_SIZE_PROP
- See Also:
-
DEFAULT_TABLE_LOCATION_REFRESH_MILLIS
public static final long DEFAULT_TABLE_LOCATION_REFRESH_MILLIS- See Also:
-
DEFAULT_TABLE_SIZE_REFRESH_MILLIS
public static final long DEFAULT_TABLE_SIZE_REFRESH_MILLIS- See Also:
-
DEFAULT_REFRESH_THREAD_POOL_SIZE
public static final int DEFAULT_REFRESH_THREAD_POOL_SIZE- See Also:
-
ALL_SUPPORTED_TABLE_TYPES
-
-
Constructor Details
-
LocalTableDataService
Simple read-only service for all supported table types.- Parameters:
locationManager
- The database location manager
-
LocalTableDataService
public LocalTableDataService(@NotNull LocalTablePathManager locationManager, @NotNull DataRoutingService.PropertyProvider properties) Simple read-only service for all supported table types.- Parameters:
locationManager
- The database location managerproperties
- Configuration properties for this table data service
-
LocalTableDataService
public LocalTableDataService(@NotNull LocalTablePathManager locationManager, @NotNull EnumSet<TableType> tableTypes, boolean writable, @NotNull DataRoutingService.PropertyProvider properties) -
LocalTableDataService
public LocalTableDataService(@Nullable String name, @NotNull LocalTablePathManager locationManager, @NotNull EnumSet<TableType> tableTypes, boolean writable, @NotNull DataRoutingService.PropertyProvider properties) Delegate toLocalTableDataService(String, LocalTablePathManager, EnumSet, boolean, DataRoutingService.PropertyProvider, boolean)
with useMetadataIndexing set according to the default property and writable parameter. useMetadataIndexing is always false if writable is true. -
LocalTableDataService
public LocalTableDataService(@Nullable String name, @NotNull LocalTablePathManager locationManager, @NotNull EnumSet<TableType> tableTypes, boolean writable, @NotNull DataRoutingService.PropertyProvider properties, boolean useMetadataIndexing) The main constructor.- Parameters:
name
- A name for this servicelocationManager
- The database location managertableTypes
- the table types that should be supportedwritable
- true if the managed locations should be writableproperties
- Configuration properties for this table data serviceuseMetadataIndexing
- if true, use cached location metadata, not valid with writable locations
-
LocalTableDataService
Deprecated.the caller should have a LocalTablePathManager.For testing only.- Parameters:
root
- construct a LocalTablePathManager rooted here.
-
-
Method Details
-
getLocalTablePathManager
-
makeTableLocationProvider
- Specified by:
makeTableLocationProvider
in classAbstractTableDataService
-
authenticate
public void authenticate()Description copied from interface:TableDataService
Authenticate the TableDataService usingAuthenticationClientManager.getDefault()
-
shutdown
public void shutdown()Stop any processes and release resources held by this TableDataService instance. -
toString
- Overrides:
toString
in classAbstractTableDataService
-
equals
-
hashCode
public int hashCode() -
getKey
Description copied from interface:TableDataService
Return a key object that identifies this TableDataService instance, and does not hold resources.- Specified by:
getKey
in interfaceTableDataService
- Overrides:
getKey
in classAbstractTableDataService
- Returns:
- a TableDataServiceKey for this TableDataService
-