Class DriverBasedManagementContext
java.lang.Object
org.forgerock.opendj.config.client.DriverBasedManagementContext
- All Implemented Interfaces:
Closeable
,AutoCloseable
,ManagementContext
- Direct Known Subclasses:
LdapManagementContext
Driver based client management connection context.
-
Constructor Summary
ModifierConstructorDescriptionprotected
Creates a new management context. -
Method Summary
Modifier and TypeMethodDescriptionfinal void
close()
final <C extends ConfigurationClient,
S extends Configuration>
booleandeleteManagedObject
(ManagedObjectPath<?, ?> parent, InstantiableRelationDefinition<C, S> rd, String name) Deletes the named instantiable child managed object from the named parent managed object.final <C extends ConfigurationClient,
S extends Configuration>
booleandeleteManagedObject
(ManagedObjectPath<?, ?> parent, OptionalRelationDefinition<C, S> rd) Deletes the optional child managed object from the named parent managed object.final <C extends ConfigurationClient,
S extends Configuration>
booleandeleteManagedObject
(ManagedObjectPath<?, ?> parent, SetRelationDefinition<C, S> rd, String name) Deletes s set child managed object from the named parent managed object.protected abstract Driver
Gets the driver associated with this management context.final <C extends ConfigurationClient,
S extends Configuration>
ManagedObject<? extends C>getManagedObject
(ManagedObjectPath<C, S> path) Gets the named managed object.final <P> ValueOrExpression<P>
getPropertyValue
(ManagedObjectPath<?, ?> path, PropertyDefinition<P> pd) Gets the effective value of a property in the named managed object.final <P> SortedSet<ValueOrExpression<P>>
getPropertyValues
(ManagedObjectPath<?, ?> path, PropertyDefinition<P> pd) Gets the effective values of a property in the named managed object.final RootCfgClient
Gets the root configuration client associated with this management context.final ManagedObject<RootCfgClient>
Gets the root configuration managed object associated with this management context.final <C extends ConfigurationClient,
S extends Configuration>
String[]listManagedObjects
(ManagedObjectPath<?, ?> parent, InstantiableRelationDefinition<C, S> rd) Lists the child managed objects of the named parent managed object.final <C extends ConfigurationClient,
S extends Configuration>
String[]listManagedObjects
(ManagedObjectPath<?, ?> parent, InstantiableRelationDefinition<C, S> rd, AbstractManagedObjectDefinition<? extends C, ? extends S> d) Lists the child managed objects of the named parent managed object which are a sub-type of the specified managed object definition.final <C extends ConfigurationClient,
S extends Configuration>
String[]listManagedObjects
(ManagedObjectPath<?, ?> parent, SetRelationDefinition<C, S> rd) Lists the child managed objects of the named parent managed object.final boolean
managedObjectExists
(ManagedObjectPath<?, ?> path) Determines whether the named managed object exists.
-
Constructor Details
-
DriverBasedManagementContext
protected DriverBasedManagementContext()Creates a new management context.
-
-
Method Details
-
deleteManagedObject
public final <C extends ConfigurationClient,S extends Configuration> boolean deleteManagedObject(ManagedObjectPath<?, ?> parent, InstantiableRelationDefinition<C, throws ManagedObjectNotFoundException, OperationRejectedException, LdapExceptionS> rd, String name) Description copied from interface:ManagementContext
Deletes the named instantiable child managed object from the named parent managed object.- Specified by:
deleteManagedObject
in interfaceManagementContext
- Type Parameters:
C
- The type of client managed object configuration that the relation definition refers to.S
- The type of server managed object configuration that the relation definition refers to.- Parameters:
parent
- The path of the parent managed object.rd
- The instantiable relation definition.name
- The name of the child managed object to be removed.- Returns:
- Returns
true
if the named instantiable child managed object was found, orfalse
if it was not found. - Throws:
ManagedObjectNotFoundException
- If the parent managed object could not be found.OperationRejectedException
- If the managed object cannot be removed due to some client-side or server-side constraint which cannot be satisfied (for example, if it is referenced by another managed object).LdapException
- If any other error occurs.
-
deleteManagedObject
public final <C extends ConfigurationClient,S extends Configuration> boolean deleteManagedObject(ManagedObjectPath<?, ?> parent, OptionalRelationDefinition<C, throws ManagedObjectNotFoundException, OperationRejectedException, LdapExceptionS> rd) Description copied from interface:ManagementContext
Deletes the optional child managed object from the named parent managed object.- Specified by:
deleteManagedObject
in interfaceManagementContext
- Type Parameters:
C
- The type of client managed object configuration that the relation definition refers to.S
- The type of server managed object configuration that the relation definition refers to.- Parameters:
parent
- The path of the parent managed object.rd
- The optional relation definition.- Returns:
- Returns
true
if the optional child managed object was found, orfalse
if it was not found. - Throws:
ManagedObjectNotFoundException
- If the parent managed object could not be found.OperationRejectedException
- If the managed object cannot be removed due to some client-side or server-side constraint which cannot be satisfied (for example, if it is referenced by another managed object).LdapException
- If any other error occurs.
-
deleteManagedObject
public final <C extends ConfigurationClient,S extends Configuration> boolean deleteManagedObject(ManagedObjectPath<?, ?> parent, SetRelationDefinition<C, throws ManagedObjectNotFoundException, OperationRejectedException, LdapExceptionS> rd, String name) Description copied from interface:ManagementContext
Deletes s set child managed object from the named parent managed object.- Specified by:
deleteManagedObject
in interfaceManagementContext
- Type Parameters:
C
- The type of client managed object configuration that the relation definition refers to.S
- The type of server managed object configuration that the relation definition refers to.- Parameters:
parent
- The path of the parent managed object.rd
- The set relation definition.name
- The name of the child managed object to be removed.- Returns:
- Returns
true
if the set child managed object was found, orfalse
if it was not found. - Throws:
ManagedObjectNotFoundException
- If the parent managed object could not be found.OperationRejectedException
- If the managed object cannot be removed due to some client-side or server-side constraint which cannot be satisfied (for example, if it is referenced by another managed object).LdapException
- If any other error occurs.
-
getManagedObject
public final <C extends ConfigurationClient,S extends Configuration> ManagedObject<? extends C> getManagedObject(ManagedObjectPath<C, S> path) throws DefinitionDecodingException, ManagedObjectDecodingException, ManagedObjectNotFoundException, LdapExceptionDescription copied from interface:ManagementContext
Gets the named managed object.- Specified by:
getManagedObject
in interfaceManagementContext
- Type Parameters:
C
- The type of client managed object configuration that the path definition refers to.S
- The type of server managed object configuration that the path definition refers to.- Parameters:
path
- The path of the managed object.- Returns:
- Returns the named managed object.
- Throws:
DefinitionDecodingException
- If the managed object was found but its type could not be determined.ManagedObjectDecodingException
- If the managed object was found but one or more of its properties could not be decoded.ManagedObjectNotFoundException
- If the requested managed object could not be found on the server.LdapException
- If any other error occurs.
-
getPropertyValue
public final <P> ValueOrExpression<P> getPropertyValue(ManagedObjectPath<?, ?> path, PropertyDefinition<P> pd) throws DefinitionDecodingException, LdapException, ManagedObjectNotFoundExceptionDescription copied from interface:ManagementContext
Gets the effective value of a property in the named managed object.- Specified by:
getPropertyValue
in interfaceManagementContext
- Type Parameters:
P
- The type of the property to be retrieved.- Parameters:
path
- The path of the managed object containing the property.pd
- The property to be retrieved.- Returns:
- Returns the property's effective value, or
null
if there are no values defined. - Throws:
DefinitionDecodingException
- If the managed object was found but its type could not be determined.LdapException
- If any other error occurs.ManagedObjectNotFoundException
- If the requested managed object could not be found on the server.
-
getPropertyValues
public final <P> SortedSet<ValueOrExpression<P>> getPropertyValues(ManagedObjectPath<?, ?> path, PropertyDefinition<P> pd) throws DefinitionDecodingException, LdapException, ManagedObjectNotFoundExceptionDescription copied from interface:ManagementContext
Gets the effective values of a property in the named managed object.- Specified by:
getPropertyValues
in interfaceManagementContext
- Type Parameters:
P
- The type of the property to be retrieved.- Parameters:
path
- The path of the managed object containing the property.pd
- The property to be retrieved.- Returns:
- Returns the property's effective values, or an empty set if there are no values defined.
- Throws:
DefinitionDecodingException
- If the managed object was found but its type could not be determined.LdapException
- If any other error occurs.ManagedObjectNotFoundException
- If the requested managed object could not be found on the server.
-
getRootConfiguration
Description copied from interface:ManagementContext
Gets the root configuration client associated with this management context.- Specified by:
getRootConfiguration
in interfaceManagementContext
- Returns:
- Returns the root configuration client associated with this management context.
-
getRootConfigurationManagedObject
Description copied from interface:ManagementContext
Gets the root configuration managed object associated with this management context.- Specified by:
getRootConfigurationManagedObject
in interfaceManagementContext
- Returns:
- Returns the root configuration managed object associated with this management context.
-
listManagedObjects
public final <C extends ConfigurationClient,S extends Configuration> String[] listManagedObjects(ManagedObjectPath<?, ?> parent, InstantiableRelationDefinition<C, throws ManagedObjectNotFoundException, LdapExceptionS> rd) Description copied from interface:ManagementContext
Lists the child managed objects of the named parent managed object.- Specified by:
listManagedObjects
in interfaceManagementContext
- Type Parameters:
C
- The type of client managed object configuration that the relation definition refers to.S
- The type of server managed object configuration that the relation definition refers to.- Parameters:
parent
- The path of the parent managed object.rd
- The instantiable relation definition.- Returns:
- Returns the names of the child managed objects.
- Throws:
ManagedObjectNotFoundException
- If the parent managed object could not be found.LdapException
- If any other error occurs.
-
listManagedObjects
public final <C extends ConfigurationClient,S extends Configuration> String[] listManagedObjects(ManagedObjectPath<?, ?> parent, InstantiableRelationDefinition<C, throws ManagedObjectNotFoundException, LdapExceptionS> rd, AbstractManagedObjectDefinition<? extends C, ? extends S> d) Description copied from interface:ManagementContext
Lists the child managed objects of the named parent managed object which are a sub-type of the specified managed object definition.- Specified by:
listManagedObjects
in interfaceManagementContext
- Type Parameters:
C
- The type of client managed object configuration that the relation definition refers to.S
- The type of server managed object configuration that the relation definition refers to.- Parameters:
parent
- The path of the parent managed object.rd
- The instantiable relation definition.d
- The managed object definition.- Returns:
- Returns the names of the child managed objects which are a sub-type of the specified managed object definition.
- Throws:
ManagedObjectNotFoundException
- If the parent managed object could not be found.LdapException
- If any other error occurs.
-
listManagedObjects
public final <C extends ConfigurationClient,S extends Configuration> String[] listManagedObjects(ManagedObjectPath<?, ?> parent, SetRelationDefinition<C, throws ManagedObjectNotFoundException, LdapExceptionS> rd) Description copied from interface:ManagementContext
Lists the child managed objects of the named parent managed object.- Specified by:
listManagedObjects
in interfaceManagementContext
- Type Parameters:
C
- The type of client managed object configuration that the relation definition refers to.S
- The type of server managed object configuration that the relation definition refers to.- Parameters:
parent
- The path of the parent managed object.rd
- The set relation definition.- Returns:
- Returns the names of the child managed objects.
- Throws:
ManagedObjectNotFoundException
- If the parent managed object could not be found.LdapException
- If any other error occurs.
-
managedObjectExists
public final boolean managedObjectExists(ManagedObjectPath<?, ?> path) throws ManagedObjectNotFoundException, LdapExceptionDescription copied from interface:ManagementContext
Determines whether the named managed object exists.- Specified by:
managedObjectExists
in interfaceManagementContext
- Parameters:
path
- The path of the named managed object.- Returns:
- Returns
true
if the named managed object exists,false
otherwise. - Throws:
ManagedObjectNotFoundException
- If the parent managed object could not be found.LdapException
- If any other error occurs.
-
getDriver
Gets the driver associated with this management context.- Returns:
- Returns the driver associated with this management context.
-
close
public final void close()- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-