Project

General

Profile

Download (2.62 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.taxeditor.session;
2

    
3
import java.util.Collection;
4
import java.util.List;
5
import java.util.UUID;
6

    
7
import eu.etaxonomy.cdm.api.service.IService;
8
import eu.etaxonomy.cdm.api.service.UpdateResult;
9
import eu.etaxonomy.cdm.cache.EntityCacherDebugResult;
10
import eu.etaxonomy.cdm.model.common.CdmBase;
11
import eu.etaxonomy.cdm.persistence.dto.MergeResult;
12
import net.sf.ehcache.statistics.LiveCacheStatistics;
13

    
14
public interface ICdmEntitySession {
15

    
16
    public ICdmEntitySessionEnabled getOwner();
17

    
18
    public LiveCacheStatistics getCacheStatistics();
19

    
20
	public  <O extends Object> O load(O obj, boolean update);
21

    
22
	public  <T extends CdmBase> T load(T cdmBase, boolean update);
23

    
24
	public  UpdateResult load(UpdateResult updateResult, boolean update);
25

    
26
	public  <T extends CdmBase> MergeResult<T> load(MergeResult<T> mergeResult, boolean update);
27

    
28
	public <T extends CdmBase> EntityCacherDebugResult debug(T cdmBase);
29

    
30
	public <T extends CdmBase> EntityCacherDebugResult debug(Collection<T> cdmBase);
31

    
32
	public <T extends CdmBase> EntityCacherDebugResult debug();
33

    
34
	public <T extends CdmBase> Collection<T> load(Collection<T> cdmBaseList, boolean update);
35

    
36
	public  void setEntitiesAsLatest();
37

    
38
	public <T extends CdmBase> Collection<T> getRootEntities();
39

    
40
	public  void dispose();
41

    
42
    public void bind();
43

    
44
//    public void addEvent(ICdmBase cdmBase, Set<CdmBase> affectedObjects, EventType eventType);
45

    
46
    public  <T extends CdmBase> T remoteLoad(IService<T> service, UUID uuid);
47

    
48
    public  <T extends CdmBase> T remoteLoad(IService<T> service, UUID uuid, List<String> propertyPaths);
49

    
50
    public <T extends CdmBase> UUID remoteSave(IService<T> service, T cdmBase);
51

    
52
    public <T extends CdmBase> T remoteUpdate(IService<T> service, T cdmBase);
53

    
54

    
55
//    /**
56
//     * @param cdmBase
57
//     * @param affectedObjects
58
//     */
59
//    public <T extends ICdmBase> void update(T cdmBase, Set<CdmBase> affectedObjects);
60
//
61
//    /**
62
//     * @param cdmBase
63
//     * @param affectedObjects
64
//     */
65
//    public <T extends ICdmBase> void delete(T cdmBase, Set<CdmBase> affectedObjects);
66
//
67
//    /**
68
//     * @param cdmBase
69
//     * @param affectedObjects
70
//     */
71
//    public <T extends ICdmBase> void delete(Set<T> cdmBases, Set<CdmBase> affectedObjects);
72

    
73

    
74
    public boolean isActive();
75

    
76
//    /**
77
//     * @param cdmBase
78
//     * @param affectedObject
79
//     */
80
//    public <T extends ICdmBase> void update(T cdmBase, CdmBase affectedObject);
81

    
82
    /**
83
     *
84
     */
85
    public <T extends CdmBase> void update();
86

    
87

    
88
    /**
89
     * @param obj
90
     * @return
91
     */
92
    public List<String> getPropertyPaths(Object obj);
93

    
94
    public void addNewCdmEntity(CdmBase newEntity);
95

    
96
}
(5-5/9)