Changes between Version 15 and Version 16 of GROUP_RESOURCE_R0


Ignore:
Timestamp:
04/04/09 13:06:33 (16 years ago)
Author:
meddle
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GROUP_RESOURCE_R0

    v15 v16  
    9292= Design = 
    9393Design UML diagram : [[BR]] 
    94 [[Image(source:/trunk/sophie2-platform/modules/org.sophie2.base.model.resources/doc/org.sophie2.base.model.resources.jpg)]] [[BR]] 
     94[[Image(source:/trunk/sophie2-platform/modules/org.sophie2.base.model.resources/doc/org.sophie2.base.model.resources.jpg)]] [[BR]][[BR]] 
     95 
     96A resource is represented by the Resource class and the ResourceSpace class. The Resource class is more like a representation of the content of the resource and the ResourceSpace is what manages it's Resource and it's sub-objects which state is trackable. 
     97 * Resource 
     98  * A Resource can only be created with a ResourceSpace! 
     99  * All the Resources referred from a Resource are represented by ResourceRefs.  
     100  * All the sub-resources that are owned by a Resource (The Resource is their parent) are contained in the children list. It is possible to have outer resources refered from it but they are not in that children list. 
     101  * The resource name is unique for the level in the Resource's hierarchy it is. The siblings of the Resource in the Resource tree have to have different names. The name is 
     102set from the ResourceSpace at the resource's creation. 
     103  * The Resource's entity id is it's unique identifier, it can not be changed and it is generated and set by the ResourceSpace upon creation. It is used for searching in the ResourceLocalCache or on a outer location. 
     104  * The resource location is absolute location of the resource, it can be: 
     105   * Location on the file system 
     106   * Location on a server 
     107   * Temporary location in the Sophie 2 application if the Resource is not saved anywhere. 
     108  * Every resource type must implement the getResourceKind method that can identify the resource type. 
     109 * If there are important actions that must be executed when the resource is created and cached they must be put in the initialized method. 
     110 * All the meta information providing fields in a resource must be annotated with the @ResourceMeta annotation. 
     111 * Two Resources are equal if their entity id and location are the same. 
     112 * The entity id and the location of a Resource are held in the ResourceSpace of the Resource. 
     113 * All the ProObjects, which state is important for the state and the reconstruction of a Resource must be annotated with the annotation @Own 
    95114 
    96115= Implementation =