Class DefaultTraversableAmetysObjectFactory
java.lang.Object
org.apache.avalon.framework.logger.AbstractLogEnabled
org.ametys.plugins.repository.jcr.SimpleAmetysObjectFactory
org.ametys.plugins.repository.jcr.DefaultTraversableAmetysObjectFactory
- All Implemented Interfaces:
AmetysObjectFactory<SimpleAmetysObject>
,JCRAmetysObjectFactory<SimpleAmetysObject>
,Component
,Configurable
,LogEnabled
,Serviceable
- Direct Known Subclasses:
AbstractSitemapElementFactory
,CartContainerFactory
,CategoryFactory
,DefaultActivityHolderFactory
,DefaultLinkFactory
,DefaultZoneFactory
,FormDirectoryFactory
,FormFactory
,FormPageFactory
,FormQuestionFactory
,JCRCalendarEventFactory
,JCRCalendarFactory
,JCRResourcesCollectionFactory
,JCRTasksListFactory
,JCRThreadFactory
,QueryContainerFactory
,RootAmetysObjectFactory
,SurveyElementFactory
,TagFactory
,ThesaurusFactory
,VersionComponentFactory
,VersionsFactory
-
Field Summary
Fields inherited from class org.ametys.plugins.repository.jcr.SimpleAmetysObjectFactory
_ametysFactoryExtensionPoint, _manager, _nodetype, _repository, _resolver, _scheme
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescription<A extends AmetysObject>
AcreateChild
(DefaultTraversableAmetysObject object, String name, String type) Creates a child to the given object.getAmetysObject
(javax.jcr.Node node, String parentPath) Creates aAmetysObject
from a persistent JCR node.<A extends AmetysObject>
AgetChild
(DefaultTraversableAmetysObject object, String path) Returns theAmetysObject
at the given subPath, relative to the givenDefaultTraversableAmetysObject
.<A extends AmetysObject>
AmetysObjectIterable<A>Returns all children of the givenDefaultTraversableAmetysObject
.boolean
hasChild
(DefaultTraversableAmetysObject object, String name) Tests if a given object has a child with a given name.Methods inherited from class org.ametys.plugins.repository.jcr.SimpleAmetysObjectFactory
configure, getAmetysObjectById, getAmetysObjectById, getNode, getNodetypes, getParent, getScheme, getWorkspaceNode, hasAmetysObjectForId, service
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled
enableLogging, getLogger, setupLogger, setupLogger, setupLogger
-
Constructor Details
-
DefaultTraversableAmetysObjectFactory
-
-
Method Details
-
getAmetysObject
public DefaultTraversableAmetysObject getAmetysObject(javax.jcr.Node node, String parentPath) throws AmetysRepositoryException Description copied from interface:JCRAmetysObjectFactory
Creates aAmetysObject
from a persistent JCR node.- Specified by:
getAmetysObject
in interfaceJCRAmetysObjectFactory<SimpleAmetysObject>
- Overrides:
getAmetysObject
in classSimpleAmetysObjectFactory
- Parameters:
node
- the JCR node to use.parentPath
- the parent Path in the Ametys hierarchy, may benull
if not known yet.- Returns:
- the object.
- Throws:
AmetysRepositoryException
- if an error occurs.
-
getChild
public <A extends AmetysObject> A getChild(DefaultTraversableAmetysObject object, String path) throws AmetysRepositoryException, UnknownAmetysObjectException Returns theAmetysObject
at the given subPath, relative to the givenDefaultTraversableAmetysObject
.- Type Parameters:
A
- the actual type ofAmetysObject
.- Parameters:
object
- the contextDefaultTraversableAmetysObject
.path
- the sub path. Cannot benull
, empty or absolute.- Returns:
- the
AmetysObject
at the given subPath, relative to the givenDefaultTraversableAmetysObject
. - Throws:
AmetysRepositoryException
- if an error occurs.UnknownAmetysObjectException
- if no such object exists.
-
getChildren
public <A extends AmetysObject> AmetysObjectIterable<A> getChildren(DefaultTraversableAmetysObject object) throws AmetysRepositoryException Returns all children of the givenDefaultTraversableAmetysObject
.- Type Parameters:
A
- the actual type ofAmetysObject
s- Parameters:
object
- aDefaultTraversableAmetysObject
.- Returns:
- a List containing all children object in the Ametys hierarchy.
- Throws:
AmetysRepositoryException
- if an error occurs.
-
hasChild
public boolean hasChild(DefaultTraversableAmetysObject object, String name) throws AmetysRepositoryException Tests if a given object has a child with a given name.- Parameters:
object
- the context object.name
- the name to test.- Returns:
true
is the given object has a child with the given name,false
otherwise.- Throws:
AmetysRepositoryException
- if an error occurs.
-
createChild
public <A extends AmetysObject> A createChild(DefaultTraversableAmetysObject object, String name, String type) throws AmetysRepositoryException Creates a child to the given object.- Type Parameters:
A
- the actual type ofAmetysObject
.- Parameters:
object
- the parentAmetysObject
.name
- the new object's name.type
- the new object's type.- Returns:
- the newly created
AmetysObject
. - Throws:
AmetysRepositoryException
- if an error occurs.
-