class ExtendedUserInfo extends AbstractUserInfo
Kapselt für die Rechteverwaltung einen Benutzer und dessen Berechtigungsklassen. Diese Klasse wird von dem neuen Datenmodell verwendet, bei dem jeder Benutzer mehrere Berechtigungsklassen zugewiesen bekommen kann. Andernfalls wird OldUserInfo verwendet.
| Modifier and Type | Field and Description |
|---|---|
private AccessControlManager |
_accessControlManager |
private java.util.List<AccessControlUnit> |
_accessControlUnits
Liste mit den Berechtigungsklassen, denen der Benutzer angehört.
|
private DataModel |
_dataModel |
private SystemObject |
_user |
private long |
_userId |
protected static java.lang.String |
USER_ATTRIBUTE_GROUP_PID |
USER_ASPECT_PID_debug, _readLock, _writeLock| Constructor and Description |
|---|
ExtendedUserInfo(long userId,
ClientDavInterface connection,
AccessControlManager accessControlManager)
Erstellt eine neue ExtendedUserInfo-Klasse.
|
| Modifier and Type | Method and Description |
|---|---|
void |
deactivateInvalidChild(DataLoader node)
Wenn es ein Problem mit der Rekursion gibt, wird dieses Objekt hiermit angewiesen den Verweis auf das angegebene (Unter-)Objekt zu deaktivieren.
|
protected java.util.List<DataLoader> |
getChildObjects()
Gibt die untergeordneten Objekte zurück.
|
SystemObject |
getUser()
Gibt den referenzierten Benutzer als Systemobjekt zurück
|
long |
getUserId()
Gibt die ID des Benutzers zurück
|
boolean |
mayCreateModifyRemoveObject(ConfigurationArea area,
SystemObjectType type) |
boolean |
mayModifyObjectSet(ConfigurationArea area,
ObjectSetType type) |
boolean |
maySubscribeData(BaseSubscriptionInfo info,
byte state) |
boolean |
maySubscribeData(BaseSubscriptionInfo info,
UserAction action) |
boolean |
maySubscribeData(SystemObject object,
AttributeGroup attributeGroup,
Aspect aspect,
UserAction action) |
java.lang.String |
toString() |
protected void |
update(Data data)
Wird aufgerufen, wenn sich die BenutzerParameter für den aktuellen Benutzer ändern.
|
canBeSafelyDeleted, decrementReference, incrementReferencegetConnection, getDataState, getNoDataTime, getSystemObject, invalidate, isInitialized, startDataListener, stopDataListener, toString, toString, waitForInitialization, waitForInitializationTreeclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitstopDataListenerprotected static final java.lang.String USER_ATTRIBUTE_GROUP_PID
private final java.util.List<AccessControlUnit> _accessControlUnits
Liste mit den Berechtigungsklassen, denen der Benutzer angehört.
private final DataModel _dataModel
private final AccessControlManager _accessControlManager
private final long _userId
private final SystemObject _user
ExtendedUserInfo(long userId,
ClientDavInterface connection,
AccessControlManager accessControlManager)
Erstellt eine neue ExtendedUserInfo-Klasse. Sollte nur im AccessControlManager benutzt werden.
userId - ID des Benutzersconnection - Verbindung zum DatenverteileraccessControlManager - Klasse, die die Rechtesteuerungsklassen verwaltetpublic final SystemObject getUser()
Gibt den referenzierten Benutzer als Systemobjekt zurück
public final long getUserId()
Gibt die ID des Benutzers zurück
protected void update(Data data)
AbstractUserInfoWird aufgerufen, wenn sich die BenutzerParameter für den aktuellen Benutzer ändern.
update in class AbstractUserInfodata - Datenobjekt mit den Daten der Attributgruppe atg.benutzerParameter für den aktuellen Benutzer.protected java.util.List<DataLoader> getChildObjects()
DataLoaderGibt die untergeordneten Objekte zurück. Z.B. die Rollen und Regionen bei der Berechtigungsklasse oder die Berechtigungsklassen beim Benutzer. Wird gebraucht um Rekursionen zu erkennen und um den HighLevelSubscriptionsManager über geänderte Benutzerrechte zu informieren. Achtung: Es werden nur die direkten Kinder zurückzugeben, nicht die “Enkel” usw. - Will man alle “Enkel” usw. haben muss man diese Funktion rekursiv aufrufen.
Hinweis: Mit DataLoader.deactivateInvalidChild(DataLoader) deaktivierte Kindelemente werden nicht aufgeführt.
getChildObjects in class DataLoaderpublic void deactivateInvalidChild(DataLoader node)
DataLoaderWenn es ein Problem mit der Rekursion gibt, wird dieses Objekt hiermit angewiesen den Verweis auf das angegebene (Unter-)Objekt zu deaktivieren. Beispielsweise könnte eine Rolle angewiesen werden, eine innere Rolle zu deaktivieren, weil sie identisch mit der eigentlichen Rolle ist.
deactivateInvalidChild in class DataLoadernode - Das zu entfernende Kindobjektpublic boolean maySubscribeData(BaseSubscriptionInfo info, byte state)
public boolean maySubscribeData(BaseSubscriptionInfo info, UserAction action)
public boolean maySubscribeData(SystemObject object, AttributeGroup attributeGroup, Aspect aspect, UserAction action)
public boolean mayCreateModifyRemoveObject(ConfigurationArea area, SystemObjectType type)
public boolean mayModifyObjectSet(ConfigurationArea area, ObjectSetType type)
public java.lang.String toString()
toString in class DataLoader