aqueduct package is a library for building Fluid objects and Fluid containers within the Fluid Framework. Its goal is to provide a thin base layer over the existing Fluid Framework interfaces that allows developers to get started quickly.
About the library name: An “aqueduct” is a way to transport water from a source to another location. The library name was chosen because its purpose is to facilitate using lower level constructs and therefore handle ‘fluid’ items same as an aqueduct.
||This type is used as the base generic input to DataObject and PureDataObject.|
||Useful interface in places where it's useful to do type erasure for PureDataObject generic|
||BaseContainerRuntimeFactory produces container runtimes with the specified data store and service registries, request handlers, runtimeOptions, and entryPoint initialization function. It can be subclassed to implement a first-time initialization procedure for the containers it creates.|
A ContainerRuntimeFactory that initializes Containers with a single default data store, which can be requested from the container with an empty URL.
This factory should be exposed as fluidExport off the entry point to your module.
DataObject is a base data store that is primed with a root directory. It ensures that it is created and ready before you can access it.
Having a single root directory allows for easier development. Instead of creating and registering channels with the runtime any new DDS that is set on the root will automatically be registered.
||DataObjectFactory is the IFluidDataStoreFactory for use with DataObjects. It facilitates DataObject's features (such as its shared directory) by ensuring relevant shared objects etc are available to the factory.|
||This is a bare-bones base class that does basic setup and enables for factory on an initialize call. You probably don't want to inherit from this data store directly unless you are creating another base data store class|
||PureDataObjectFactory is a barebones IFluidDataStoreFactory for use with PureDataObject. Consumers should typically use DataObjectFactory instead unless creating another base data store factory.|