public final class SessionManager
extends java.lang.Object
Constructor and Description |
---|
SessionManager(ConfigServiceImpl configService) |
Modifier and Type | Method and Description |
---|---|
void |
commitSession(java.lang.String session)
Commits a session
|
void |
commitSession(java.lang.String session, SessionConflicts expectedConflicts)
Commits a session only if the concurrent modification conflicts are not different from the expected conflicts.
|
void |
commitSession(java.lang.String session, java.lang.String undoid, long timeout, SessionConflicts expectedConflicts)
Activate a session
|
void |
createSession(java.lang.String session, boolean isTransient)
Creates a new session.
|
void |
discardSession(java.lang.String session)
Deletes the session without saving the changes.
|
java.util.Set<java.lang.String> |
getSessions()
Returns the names of all current sessions
|
boolean |
isSessionReadyForCommit(java.lang.String session)
Returns true if the session has no critical conflicts that will prevent it from being activated.
|
boolean |
sessionExists(java.lang.String session)
Returns true if a session with the given session exists
|
public SessionManager(ConfigServiceImpl configService) throws java.lang.Exception
java.lang.Exception
public void createSession(java.lang.String session, boolean isTransient) throws java.lang.Exception
session
- the name the session is to be created withisTransient
- whether to create a transient sessionjava.lang.Exception
- if session creation failspublic boolean sessionExists(java.lang.String session)
session
- the name of the session to checkjava.lang.IllegalArgumentException
- if session name is nullpublic void discardSession(java.lang.String session) throws java.lang.Exception
session
- the name of the session to discardjava.lang.Exception
- if discard failspublic java.util.Set<java.lang.String> getSessions()
public void commitSession(java.lang.String session, SessionConflicts expectedConflicts) throws java.lang.Exception
session
-expectedConflicts
- activate session only if there are no new conflicts with respect to base conflicts. This method simply obtains the diff between the current set of conflicts and the expected conflicts (via SessionConflicts.diff(com.bea.wli.config.session.SessionConflicts, com.bea.wli.config.session.SessionConflicts)
) and throws exception if there are additional conflicts on top of what the user is expectingjava.lang.Exception
public void commitSession(java.lang.String session) throws java.lang.Exception
session
- the session to commitjava.lang.Exception
- if the commit failspublic void commitSession(java.lang.String session, java.lang.String undoid, long timeout, SessionConflicts expectedConflicts) throws java.lang.Exception
session
- the session to activateundoid
- optional undoid in the case where this is an undo sessiontimeout
- time in ms to wait for activation to complete before cancelling itexpectedConflicts
- activate session only if there are no new conflicts with respect to base conflicts. This method simply obtains the diff between the current set of conflicts and the expected conflicts (via SessionConflicts.diff(com.bea.wli.config.session.SessionConflicts, com.bea.wli.config.session.SessionConflicts)
) and throws exception if there are additional conflicts on top of what the user is expectingjava.lang.Exception
- if commit failspublic boolean isSessionReadyForCommit(java.lang.String session) throws java.lang.Exception
session
- the session to testjava.lang.Exception
- if session is null