public class CurrentDetails extends Object implements PrincipalHolder
| Constructor and Description |
|---|
CurrentDetails()
Default constructor.
|
CurrentDetails(SessionCache cache) |
CurrentDetails(SessionCache cache,
Roles roles) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
addAllDisabled(String... ids) |
void |
addCleanup(RegisterServiceCleanupMessage cleanup)
Add a
RegisterServiceCleanupMessage to the current thread for
cleanup by the ServiceHandler on exit. |
boolean |
addDisabled(String id) |
void |
addLog(String action,
Class klass,
Long id) |
void |
applyContext(ome.model.internal.Details details,
boolean changePerms) |
protected void |
checkDelayedCallContext(BasicEventContext bec) |
void |
clearDisabled() |
void |
clearLogs() |
ome.model.internal.Details |
createDetails()
Creates a
Details object for the current security context. |
Set<RegisterServiceCleanupMessage> |
emptyCleanups()
Returns the current cleanups and resets the
Set. |
Map<String,String> |
getContext() |
EventContext |
getCurrentEventContext()
Public view on the data contained here.
|
ome.model.meta.Event |
getEvent() |
ome.model.meta.ExperimenterGroup |
getGroup() |
Principal |
getLast()
Get the last, i.e. currently active, principal.
|
List<ome.model.meta.EventLog> |
getLogs() |
ome.model.meta.Experimenter |
getOwner() |
SessionStats |
getStats() |
void |
invalidateCurrentEventContext()
It suffices to set the
Details to a new instance to make this
context unusable. |
boolean |
isDisabled(String id) |
boolean |
isGraphCritical(ome.model.internal.Details details) |
boolean |
isOwnerOrSupervisor(ome.model.IObject object) |
boolean |
isReady()
Checks if the current
Thread has non-null Experimenter,
Event, and ExperimenterGroup, required for proper
functioning of the security system. |
void |
loadPermissions(org.hibernate.Session session)
Checks the "groupPermissions" map in
BasicEventContext which has
been filled up by calls to BasicEventContext.setPermissionsForGroup(Long, Permissions)
during BasicACLVoter.allowLoad(org.hibernate.Session, Class, Details, long). |
void |
login(BasicEventContext bec)
Login method which can be used by the security system to replace the
existing
BasicEventContext. |
void |
login(Principal principal)
Add a new principal context to the stack.
|
int |
logout()
Pop the last created principal context and return the number of active
contexts remaining.
|
ome.model.meta.Event |
newEvent(ome.model.meta.Session session,
ome.model.enums.EventType type,
TokenHolder tokenHolder) |
boolean |
removeAllDisabled(String... ids) |
boolean |
removeDisabled(String id) |
Map<String,String> |
setContext(Map<String,String> ctx) |
int |
size()
Get the number of active principal contexts.
|
public CurrentDetails()
public CurrentDetails(SessionCache cache)
public CurrentDetails(SessionCache cache, Roles roles)
protected void checkDelayedCallContext(BasicEventContext bec)
public int size()
PrincipalHoldersize in interface PrincipalHolderpublic Principal getLast()
PrincipalHoldergetLast in interface PrincipalHolderpublic void login(Principal principal)
PrincipalHolderlogin in interface PrincipalHolderpublic void login(BasicEventContext bec)
BasicEventContext.login in interface PrincipalHolderpublic int logout()
PrincipalHolderlogout in interface PrincipalHolderpublic boolean isReady()
Thread has non-null Experimenter,
Event, and ExperimenterGroup, required for proper
functioning of the security system.public boolean isGraphCritical(ome.model.internal.Details details)
public boolean isOwnerOrSupervisor(ome.model.IObject object)
public EventContext getCurrentEventContext()
public void invalidateCurrentEventContext()
Details to a new instance to make this
context unusable. isReady() will return false.public ome.model.meta.Event newEvent(ome.model.meta.Session session,
ome.model.enums.EventType type,
TokenHolder tokenHolder)
public SessionStats getStats()
public List<ome.model.meta.EventLog> getLogs()
public void clearLogs()
public ome.model.internal.Details createDetails()
Details object for the current security context.
The Permissions on the instance are calculated from the current
group as well as the user's umask.public void applyContext(ome.model.internal.Details details,
boolean changePerms)
public void loadPermissions(org.hibernate.Session session)
BasicEventContext which has
been filled up by calls to BasicEventContext.setPermissionsForGroup(Long, Permissions)
during BasicACLVoter.allowLoad(org.hibernate.Session, Class, Details, long).public ome.model.meta.Experimenter getOwner()
public ome.model.meta.ExperimenterGroup getGroup()
public ome.model.meta.Event getEvent()
public void addCleanup(RegisterServiceCleanupMessage cleanup)
RegisterServiceCleanupMessage to the current thread for
cleanup by the ServiceHandler on exit.public Set<RegisterServiceCleanupMessage> emptyCleanups()
Set. Instances can
most likely only be closed once, so it doesn't make sense to keep them
around. The first caller of this method is responsible for closing all of
them.public boolean addDisabled(String id)
public boolean addAllDisabled(String... ids)
public boolean removeDisabled(String id)
public boolean removeAllDisabled(String... ids)
public void clearDisabled()
public boolean isDisabled(String id)
Version: 5.1.1-ice35-b43
Copyright © 2015 The University of Dundee & Open Microscopy Environment. All Rights Reserved.