-// $Id$
/**
* Copyright (C) 2015 EDIT
* European Distributed Institute of Taxonomy
*/
public abstract class CdmEntitySessionInput implements ICdmEntitySessionEnabled {
- private final ICdmEntitySession cdmEntitySession;
+ private ICdmEntitySession cdmEntitySession;
- public CdmEntitySessionInput() {
+ public CdmEntitySessionInput(boolean init) {
+ if(init) {
+ initSession();
+ }
+ }
+
+ protected void initSession() {
cdmEntitySession = CdmStore.getCurrentSessionManager().newSession(this, true);
}
}
public void bind() {
- cdmEntitySession.bind();
+ if(cdmEntitySession!=null){
+ cdmEntitySession.bind();
+ }
+ else {
+ initSession();
+ }
}
public void dispose() {
- cdmEntitySession.dispose();
+ if (cdmEntitySession != null){
+ cdmEntitySession.dispose();
+ }
+ cdmEntitySession = null;
+
}
public abstract void merge();