public abstract class DynamicContentSystemFactory extends java.lang.Object implements IContentFactory
Constructor and Description |
---|
DynamicContentSystemFactory(java.lang.String dottedPackageRoot,
IResourceFinderFilter filter)
Instantiates a new dynamic content system factory.
|
Modifier and Type | Method and Description |
---|---|
<ContentType extends IItem> |
canCreate(java.lang.Class<ContentType> contentType)
Can create.
|
<ContentType extends IItem,ConcreteType extends IItem> |
create(java.lang.Class<ContentType> clazz,
java.lang.String name,
java.util.UUID id)
Creates the.
|
<ContentType extends IItem,ConcreteType extends IItem> |
getConcreteTypeForContentType(java.lang.Class<ContentType> contentType)
Gets the concrete type for content type.
|
<ContentType extends IItem,ConcreteType extends IItem> |
register(java.lang.Class<ContentType> contentType,
java.lang.Class<ConcreteType> concreteType)
Register.
|
void |
registerClassesFromResourceStrings(java.util.List<java.lang.String> classResourceNames)
Register classes from resource strings.
|
public DynamicContentSystemFactory(java.lang.String dottedPackageRoot, IResourceFinderFilter filter) throws java.lang.ClassNotFoundException, java.io.IOException, ContentTypeAlreadyBoundException, ContentTypeInvalidException
dottedPackageRoot
- the dotted package rootfilter
- the filterjava.lang.ClassNotFoundException
- the class not found exceptionjava.io.IOException
- Signals that an I/O exception has occurred.ContentTypeAlreadyBoundException
- the content type already bound
exceptionContentTypeInvalidException
- the content type invalid exceptionpublic <ContentType extends IItem> boolean canCreate(java.lang.Class<ContentType> contentType)
IContentFactory
canCreate
in interface IContentFactory
ContentType
- the generic typecontentType
- the content typepublic <ContentType extends IItem,ConcreteType extends IItem> ConcreteType create(java.lang.Class<ContentType> clazz, java.lang.String name, java.util.UUID id) throws ContentTypeNotBoundException
IContentFactory
create
in interface IContentFactory
ContentType
- the generic typeConcreteType
- the generic typeclazz
- the clazzname
- the nameid
- the idContentTypeNotBoundException
- the content type not bound exceptionpublic <ContentType extends IItem,ConcreteType extends IItem> java.lang.Class<ConcreteType> getConcreteTypeForContentType(java.lang.Class<ContentType> contentType)
IContentFactory
getConcreteTypeForContentType
in interface IContentFactory
ContentType
- the generic typeConcreteType
- the generic typecontentType
- the content typepublic <ContentType extends IItem,ConcreteType extends IItem> void register(java.lang.Class<ContentType> contentType, java.lang.Class<ConcreteType> concreteType) throws ContentTypeAlreadyBoundException, ContentTypeInvalidException
IContentFactory
register
in interface IContentFactory
ContentType
- the generic typeConcreteType
- the generic typecontentType
- the content typeconcreteType
- the concrete typeContentTypeAlreadyBoundException
- the content type already bound
exceptionContentTypeInvalidException
- the content type invalid exceptionpublic void registerClassesFromResourceStrings(java.util.List<java.lang.String> classResourceNames) throws java.lang.ClassNotFoundException, ContentTypeAlreadyBoundException, ContentTypeInvalidException
classResourceNames
- the class resource namesjava.lang.ClassNotFoundException
- the class not found exceptionContentTypeAlreadyBoundException
- the content type already bound
exceptionContentTypeInvalidException
- the content type invalid exception