public class ZooKeeperComposedModuleDefinitionRegistry extends java.lang.Object implements WritableModuleRegistry
WriteableModuleRegistry
dedicated to CompositeModuleDefinition
s and that uses
ZooKeeper as storage mechanism.
Writes each definition to a node, such as: /xd/modules/[moduletype]/[modulename]
with the node data being
a JSON representation of the module definition.
Constructor and Description |
---|
ZooKeeperComposedModuleDefinitionRegistry(ModuleDependencyRepository moduleDependencyRepository,
ModuleRegistry mainModuleRegistry,
ZooKeeperConnection zooKeeperConnection) |
Modifier and Type | Method and Description |
---|---|
boolean |
delete(ModuleDefinition definition)
Attempt to delete the given definition, if that registry is responsible for it.
|
ModuleDefinition |
findDefinition(java.lang.String name,
ModuleType type)
Lookup a module of the given type with the given name.
|
java.util.List<ModuleDefinition> |
findDefinitions()
Returns all module definitions.
|
java.util.List<ModuleDefinition> |
findDefinitions(ModuleType type)
Searches the registry for the type specified and returns all module definitions that match the type.
|
java.util.List<ModuleDefinition> |
findDefinitions(java.lang.String name)
Searches the registry for the name specified and returns all module definitions that match the name regardless of
module type.
|
boolean |
registerNew(ModuleDefinition definition)
Attempt to register the given definition, if that registry can handle it.
|
@Autowired public ZooKeeperComposedModuleDefinitionRegistry(ModuleDependencyRepository moduleDependencyRepository, ModuleRegistry mainModuleRegistry, ZooKeeperConnection zooKeeperConnection)
public boolean delete(ModuleDefinition definition)
WritableModuleRegistry
delete
in interface WritableModuleRegistry
public boolean registerNew(ModuleDefinition definition)
WritableModuleRegistry
registerNew
in interface WritableModuleRegistry
public ModuleDefinition findDefinition(java.lang.String name, ModuleType type)
ModuleRegistry
findDefinition
in interface ModuleRegistry
null
if this registry does not have such a modulepublic java.util.List<ModuleDefinition> findDefinitions(java.lang.String name)
ModuleRegistry
findDefinitions
in interface ModuleRegistry
name
- The module definition name to be searched.public java.util.List<ModuleDefinition> findDefinitions(ModuleType type)
ModuleRegistry
findDefinitions
in interface ModuleRegistry
type
- The module type name to be searched.public java.util.List<ModuleDefinition> findDefinitions()
ModuleRegistry
findDefinitions
in interface ModuleRegistry