org.ow2.weblab.core.extended.factory
Class ResourceFactory

java.lang.Object
  extended by org.ow2.weblab.core.extended.factory.ResourceFactory

public class ResourceFactory
extends java.lang.Object

A factory to be used to create all the Resources defined in the model. When creating a Resource, this factory will ensure that it contains an URI compliant with WebLabRI.
We strongly encourage NOT to use this class in order to create non standalone resources. In fact, use this class to create Document, ComposedResource, Query and UsageContext, the only standalone Resources. For other Resource s, you should use other factories.

Author:
Cassidian WebLab Team
See Also:
PoKFactory, MediaUnitFactory, SegmentFactory, LowLevelDescriptorFactory
Date:
2008-01-15

Field Summary
protected static java.util.Map<java.lang.String,java.util.Set<java.lang.String>> innerMap
          This data structure is not well adapted to manage WebLab Resource
protected static char SEPARATOR
          The separator
 
Method Summary
protected static void addAnnotation(Annotation annotation, Resource resource, Resource root)
           
protected static void addChild(MediaUnit mu, Resource parent, Resource root)
           
protected static void addDescriptor(LowLevelDescriptor descriptor, Resource parent, Resource root)
           
protected static void addSegment(Segment segment, MediaUnit parent, Resource root)
           
protected static void cleanMapping(java.lang.String uri)
           
static
<T extends Resource>
T
createResource(java.lang.String idRef, java.lang.String idRes, java.lang.Class<T> resClass)
          Use this method to create Resources that have a sense alone, and that are not contained by anything (but a ComposedResource).
It's recommended to only use this class when creating Document, ComposedResource, Ontology, Query, Service and HumanResource instances.
protected static java.lang.String createUniqueURIFrom(Resource resource, boolean isChild, boolean isAnnotation)
           
protected static java.lang.String createUniqueURIin(java.util.Set<java.lang.String> uris, boolean isChild, boolean isAnnotation, java.lang.String parentUri)
           
protected static Resource findParent(MediaUnit mu, Resource resource)
           
protected static java.lang.String getUniqueWebLabRIFrom(Resource res, boolean isChild, boolean isAnnotation)
           
protected static java.util.Set<java.lang.String> listUri(Resource resource)
          List uris in the resource
protected static java.util.Set<java.lang.String> listUri(Resource resource, boolean force)
           
protected static void removeChild(MediaUnit mu, Resource parent, Resource root)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SEPARATOR

protected static final char SEPARATOR
The separator

See Also:
Constant Field Values

innerMap

protected static final java.util.Map<java.lang.String,java.util.Set<java.lang.String>> innerMap
This data structure is not well adapted to manage WebLab Resource

Method Detail

createResource

public static <T extends Resource> T createResource(java.lang.String idRef,
                                                    java.lang.String idRes,
                                                    java.lang.Class<T> resClass)
Use this method to create Resources that have a sense alone, and that are not contained by anything (but a ComposedResource).
It's recommended to only use this class when creating Document, ComposedResource, Ontology, Query, Service and HumanResource instances.

Type Parameters:
T - The class of the Resource to be instancied.F
Parameters:
idRef - Resource creator unique reference
idRes - Resource unique reference in the creator
resClass - The implementation class of the resource
Returns:
An instance of resourceClass with a valid WebLabRI

cleanMapping

protected static void cleanMapping(java.lang.String uri)

listUri

protected static java.util.Set<java.lang.String> listUri(Resource resource)
List uris in the resource

Parameters:
resource - a resource
Returns:
a set of uri in this resource

listUri

protected static java.util.Set<java.lang.String> listUri(Resource resource,
                                                         boolean force)

createUniqueURIFrom

protected static java.lang.String createUniqueURIFrom(Resource resource,
                                                      boolean isChild,
                                                      boolean isAnnotation)

createUniqueURIin

protected static java.lang.String createUniqueURIin(java.util.Set<java.lang.String> uris,
                                                    boolean isChild,
                                                    boolean isAnnotation,
                                                    java.lang.String parentUri)

removeChild

protected static void removeChild(MediaUnit mu,
                                  Resource parent,
                                  Resource root)

addAnnotation

protected static void addAnnotation(Annotation annotation,
                                    Resource resource,
                                    Resource root)

addSegment

protected static void addSegment(Segment segment,
                                 MediaUnit parent,
                                 Resource root)

addDescriptor

protected static void addDescriptor(LowLevelDescriptor descriptor,
                                    Resource parent,
                                    Resource root)

addChild

protected static void addChild(MediaUnit mu,
                               Resource parent,
                               Resource root)

findParent

protected static Resource findParent(MediaUnit mu,
                                     Resource resource)

getUniqueWebLabRIFrom

protected static final java.lang.String getUniqueWebLabRIFrom(Resource res,
                                                              boolean isChild,
                                                              boolean isAnnotation)
Parameters:
res - The Resource to be used to create WebLabRI
Returns:
The String to be used as URI by the MediaUnit created


Copyright © 2004-2010. All Rights Reserved.