getAdmin

Gets dataset instance admin to be used to perform administrative operations. The given classloader must
be able to load all classes needed to instantiate the dataset admin. This means if the system classloader is
used, only system dataset admins can fetched.

Gets dataset instance admin to be used to perform administrative operations. The class loader provider
is used get classloaders for any dataset modules used by the specified dataset admin. This is because
the classloader(s) for a dataset admin may create some resources that need to be cleaned up on close.

Gets dataset to be used to perform data operations. This one is used when the classloader(s) for a dataset may
create some resources that need to be cleaned up on close, and an access type is specified.

getDatasetType

Return an instance of the DatasetType corresponding to given dataset modules. Uses the given
classloader as a parent for all dataset modules, and the given classloader provider to get classloaders for
each dataset module in given the dataset type meta. Order of dataset modules in the given
DatasetTypeMeta is important. The classloader for the first dataset module is used as the parent of
the second dataset module and so on until the last dataset module. The classloader for the last dataset module
is then used as the classloader for the returned DatasetType.

Type Parameters:

T - the type of DatasetType

Parameters:

implementationInfo - the dataset type metadata to instantiate the type from

classLoader - the parent classloader to use for dataset modules

classLoaderProvider - the classloader provider to get classloaders for each dataset module