Project

General

Profile

Download (2.65 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.Set;
6
import java.util.UUID;
7

    
8
import net.sf.ehcache.statistics.LiveCacheStatistics;
9
import eu.etaxonomy.cdm.api.service.IService;
10
import eu.etaxonomy.cdm.model.common.CdmBase;
11
import eu.etaxonomy.cdm.model.common.ICdmBase;
12
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeEvent.EventType;
13
import eu.etaxonomy.taxeditor.remoting.cache.EntityCacherDebugResult;
14

    
15
public interface ICdmEntitySession {
16

    
17
    public ICdmEntitySessionEnabled getOwner();
18

    
19
    public LiveCacheStatistics getCacheStatistics();
20

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

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

    
25
	public <T extends CdmBase> EntityCacherDebugResult debug(T cdmBase);
26

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

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

    
31
	public <T extends CdmBase> Collection<T> load(Collection<T> cdmBaseList, boolean update);
32

    
33
	public  void setEntitiesAsLatest();
34

    
35
	public <T extends CdmBase> List<T> getRootEntities();
36

    
37
	public  void dispose();
38

    
39
    public void bind();
40

    
41
    public void registerForDataStoreChanges(ICdmEntitySessionEnabled observer);
42

    
43
    public void unregisterForDataStoreChanges(ICdmEntitySessionEnabled observer);
44

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

    
47
    public  <T extends ICdmBase> void addEvent(Collection <T> cdmBases, Set<CdmBase> affectedObjects, EventType eventType);
48

    
49
    public  <T extends CdmBase> T remoteLoad(IService<T> service, UUID uuid);
50

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

    
53
    public <T extends CdmBase> UUID remoteSave(IService<T> service, T cdmBase);
54

    
55
    public <T extends CdmBase> T remoteUpdate(IService<T> service, T cdmBase);
56

    
57

    
58
    /**
59
     * @param cdmBase
60
     * @param affectedObjects
61
     */
62
    public <T extends ICdmBase> void update(T cdmBase, Set<CdmBase> affectedObjects);
63

    
64
    /**
65
     * @param cdmBase
66
     * @param affectedObjects
67
     */
68
    public <T extends ICdmBase> void delete(T cdmBase, Set<CdmBase> affectedObjects);
69

    
70
    /**
71
     * @param cdmBase
72
     * @param affectedObjects
73
     */
74
    public <T extends ICdmBase> void delete(Set<T> cdmBases, Set<CdmBase> affectedObjects);
75

    
76
    /**
77
     *
78
     */
79
    public void fireNotifications();
80

    
81
    public boolean isActive();
82

    
83
    /**
84
     * @param cdmBase
85
     * @param affectedObject
86
     */
87
    public <T extends ICdmBase> void update(T cdmBase, CdmBase affectedObject);
88

    
89
    /**
90
     *
91
     */
92
    public <T extends CdmBase> void update();
93

    
94

    
95

    
96

    
97
}
(4-4/7)