Revision 5c9343bd
Added by Cherian Mathew about 9 years ago
eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionManager.java | ||
---|---|---|
27 | 27 |
public class CdmEntitySessionManager implements ICdmEntitySessionManager { |
28 | 28 |
private static final Logger logger = Logger.getLogger(CdmEntitySessionManager.class); |
29 | 29 |
|
30 |
private final Map<ISessionEventListener, CdmEntitySession> ownerSessionMap =
|
|
31 |
new HashMap<ISessionEventListener, CdmEntitySession>();
|
|
30 |
private final Map<ICdmEntitySessionEnabled, CdmEntitySession> ownerSessionMap =
|
|
31 |
new HashMap<ICdmEntitySessionEnabled, CdmEntitySession>();
|
|
32 | 32 |
|
33 | 33 |
private ICdmEntitySession activeSession; |
34 | 34 |
|
35 | 35 |
@Override |
36 |
public ICdmEntitySession newSession(ISessionEventListener sessionOwner, boolean setAsActive) {
|
|
36 |
public ICdmEntitySession newSession(ICdmEntitySessionEnabled sessionOwner, boolean setAsActive) {
|
|
37 | 37 |
CdmEntitySession session = ownerSessionMap.get(sessionOwner); |
38 | 38 |
if(session == null) { |
39 | 39 |
session = new CdmEntitySession(sessionOwner, this); |
... | ... | |
46 | 46 |
return session; |
47 | 47 |
} |
48 | 48 |
|
49 |
@Override |
|
50 |
public ICdmEntitySession getActiveSession() { |
|
51 |
|
|
52 |
return activeSession; |
|
53 |
} |
|
54 |
|
|
49 | 55 |
/* (non-Javadoc) |
50 | 56 |
* @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#bind(eu.etaxonomy.taxeditor.session.ISessionEventListener) |
51 | 57 |
*/ |
52 | 58 |
@Override |
53 |
public void bind(ISessionEventListener sessionOwner) {
|
|
59 |
public void bind(ICdmEntitySessionEnabled sessionOwner) {
|
|
54 | 60 |
if(sessionOwner == null) { |
55 | 61 |
activeSession = null; |
56 | 62 |
return; |
... | ... | |
104 | 110 |
* @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager#dispose(eu.etaxonomy.taxeditor.session.ISessionEventListener) |
105 | 111 |
*/ |
106 | 112 |
@Override |
107 |
public void dispose(ISessionEventListener owner) {
|
|
113 |
public void dispose(ICdmEntitySessionEnabled owner) {
|
|
108 | 114 |
ICdmEntitySession session = ownerSessionMap.get(owner); |
109 | 115 |
if(session == null) { |
110 | 116 |
logger.info("No Session connected to owner, nothing to dispose"); |
... | ... | |
113 | 119 |
session.dispose(); |
114 | 120 |
} |
115 | 121 |
|
116 |
void addToOwnerSessionMap(ISessionEventListener owner, CdmEntitySession session) {
|
|
122 |
void addToOwnerSessionMap(ICdmEntitySessionEnabled owner, CdmEntitySession session) {
|
|
117 | 123 |
ownerSessionMap.put(owner, session); |
118 | 124 |
} |
119 | 125 |
|
Also available in: Unified diff
CdmTransientEntityCacher : comments and cleanup
MockCdmEntitySessionManager, MockCdmEntitySession : implementing new interface methods
renamed ISessionEventListener to ICdmEntitySessionEnabled
ICdmEntitySession, CdmEntitySession : added methods to register session observer and add change events
ICdmEntitySessionManager, CdmEntitySessionManager : added getActiveSession method
CdmServerInfo :: added possiblity to connect directly to dev eclipse cdm server