Class UserInfo

java.lang.Object
byps.BValueClass
de.elo.ix.client.ValueClass
de.elo.ix.client.UserInfo
All Implemented Interfaces:
Serializable

public class UserInfo extends ValueClass implements Serializable

Data class containing the user information data for the user logged in to the Index server. User information includes ID, name, rights, parent, etc.

Copyright: Copyright (c) 2004

Organisation: ELO Digital Office GmbH

See Also:
  • Field Details

    • desc

      protected String desc
      User description.
    • flags

      protected int flags
      User rights. Possible values are combinations of AccessC.FLAG_* constants.
      See Also:
    • groupList

      protected int[] groupList
      The groups the user is a member of.

      It contains all groups the user inherits the rights because of active substitutions (groups which are set in Substitution.groupsToInheritRights).

      See Also:
    • id

      protected int id
      User identifier
    • keylist

      @Deprecated protected int[] keylist
      Deprecated.
      User keys. Array of key access rights. Each item is a combination of the access constants AccessC.LUR_*. The key ID corresponds to the index of the key access item in the key array. A user owns a key, if at least one access constant is included in the key item. Keys do not distinguish between LUR_WRTE and LUR_LIST: LUR_WRITE implies LUR_LIST and v.v.
      See Also:
    • name

      protected String name
      User name
    • parent

      protected int parent
      User ID of the users parent (users adminstrator).
    • pwd

      protected String pwd
      User password
    • sessions

      protected SessionInfo[] sessions
      The currently active tickets for the user
    • type

      protected int type
      User type. TYPE_USER for user, TYPE_GROUP for group.
      See Also:
    • userProps

      protected String[] userProps
      Reserved (Additional user properties). Index this array with constants named PROP_* in class UserInfoC.
      See Also:
    • ldapProperties

      protected Map<String,String> ldapProperties
      Reserved (LDAP user properties). Keys of this map named LDAP_PROP_* in class UserInfoC. All keys are lower case. Mandatory properties - For user: objectGUID, distinguishedName, displayName, sAMAccountName und UserPrincipalName - For group: objectGUID, distinguishedName, name und sAMAccountName
      Since:
      9.00.040.005
    • guid

      protected String guid
      GUID
      Since:
      7.00.000.012
    • tStamp

      protected String tStamp
      Timestamp The format is JJJJ.MM.DD.hh.mm.ss
      Since:
      7.00.000.013
    • lastLoginIso

      protected String lastLoginIso
      Last login timestamp (in timezone UTC). This value is read-only and undefined for groups. Only the date part is valid.
      Since:
      7.00.040.011
    • superiorId

      protected int superiorId
      ID of the users superior. If the user does not have a superior, this value is equal to id.
      Since:
      7.00.040.017
    • flags2

      protected int flags2
      Second bitset of user rights.
      Since:
      7.00.040.017
      See Also:
    • orgUnitIds

      protected int[] orgUnitIds
      Organisation unit IDs. A user or group can be assigned to at most one organization unit. But due to its group membership a user or group can actually belong to a list of organization units. When writing this UserInfo object, only the first organization unit in the array is taken into account. In order to remove the relationship, set an empty array.
      Since:
      9.00.000.009
    • tStampSync

      protected String tStampSync
      Timestamp of this object's last export by the replication.
      Since:
      12.01.001.000
    • availableRoles

      protected List<UserName> availableRoles
      The user can activate this roles.
      Since:
      20.00.000.003
    • packageName

      protected String packageName
      The package name of UserInfo
      Since:
      20.00.000.009
    • internalUser

      protected boolean internalUser
      The flag for a group which will not be removed by LDAP replication.
      Since:
      21.00.000.018
    • workspaceInfo

      protected String workspaceInfo
      Workspace related data.
      Since:
      21.02.000.017
  • Constructor Details

    • UserInfo

      public UserInfo()
      Constructor
    • UserInfo

      public UserInfo(int id, String name)
      Constructor with initiatisation.
      Parameters:
      id - User ID
      name - User name
    • UserInfo

      public UserInfo(UserInfo rhs)
      Copies user information.
      Parameters:
      rhs - User information to copy from.
  • Method Details

    • assign

      public void assign(UserInfo rhs)
      Copies user information.
      Parameters:
      rhs - User information to copy from.
    • getDesc

      public String getDesc()
    • setDesc

      public void setDesc(String desc)
    • getFlags

      public int getFlags()
    • setFlags

      public void setFlags(int flags)
    • getGroupList

      public int[] getGroupList()
    • setGroupList

      public void setGroupList(int[] groupList)
    • getId

      public int getId()
    • setId

      public void setId(int id)
    • getKeylist

      public int[] getKeylist()
    • setKeylist

      public void setKeylist(int[] keylist)
    • getName

      public String getName()
    • setName

      public void setName(String name)
    • getParent

      public int getParent()
    • setParent

      public void setParent(int parent)
    • getPwd

      public String getPwd()
    • setPwd

      public void setPwd(String pwd)
    • getSessions

      public SessionInfo[] getSessions()
    • setSessions

      public void setSessions(SessionInfo[] sessions)
    • getType

      public int getType()
    • setType

      public void setType(int type)
    • getUserProps

      public String[] getUserProps()
    • setUserProps

      public void setUserProps(String[] userProps)
    • getGuid

      public String getGuid()
    • setGuid

      public void setGuid(String guid)
    • getTStamp

      public String getTStamp()
    • setTStamp

      public void setTStamp(String stamp)
    • getTStampSync

      public String getTStampSync()
    • setTStampSync

      public void setTStampSync(String tStampSync)
    • getLastLoginIso

      public String getLastLoginIso()
    • setLastLoginIso

      public void setLastLoginIso(String v)
    • getSuperiorId

      public int getSuperiorId()
    • setSuperiorId

      public void setSuperiorId(int superiorId)
    • getFlags2

      public int getFlags2()
    • setFlags2

      public void setFlags2(int flags2)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • getOrgUnitIds

      public int[] getOrgUnitIds()
    • setOrgUnitIds

      public void setOrgUnitIds(int[] orgUnitIds)
    • getLdapProperties

      public Map<String,String> getLdapProperties()
    • setLdapProperties

      public void setLdapProperties(Map<String,String> ldapProperties)
    • getAvailableRoles

      public List<UserName> getAvailableRoles()
    • setAvailableRoles

      public void setAvailableRoles(List<UserName> availableRoles)
    • getPackageName

      public String getPackageName()
    • setPackageName

      public void setPackageName(String packageName)
    • isInternalUser

      public boolean isInternalUser()
    • setInternalUser

      public void setInternalUser(boolean internalUser)
    • compareToUserDirectoryStatus

      public Map<String,String> compareToUserDirectoryStatus(UserInfo o, Set<Integer> ignoreGroups)
      Compare this object with an object received from a UserDirectory.
      Parameters:
      o - Object from UserDirectory
      ignoreGroups - Groups to ignore
      Returns:
      Map of different members and their values.
    • ldapAttributeEquals

      public static boolean ldapAttributeEquals(String value1, String value2)
      EIX-3971: Vergleiche 2 LDAP Eigenschaft-Werte miteinander.
      Parameters:
      value1 -
      value2 -
      Returns:
      true, wenn value1 = value2, sonst false.
    • compareLdapPropertiesMap

      public static boolean compareLdapPropertiesMap(Map<String,String> pi, Map<String,String> pk, Map<String,String> differentMembers)
      Compare maps of LDAP properties. Loops over entries of pk and adds the keys that are missing or have different associated values to differentMembers.
      Parameters:
      pi - first map
      pk - second map
      differentMembers - Different values
      Returns:
      true, if the two LDAP properties are the same.
    • hasEqualPermissions

      public boolean hasEqualPermissions(UserInfo ui)
      Compare flags, group IDs and organisation unit IDs.
      Parameters:
      ui - Other UserInfo
      Returns:
      true, if permissions are equal
    • getWorkspaceInfo

      public String getWorkspaceInfo()
    • setWorkspaceInfo

      public void setWorkspaceInfo(String workspaceInfo)
    • isLdapBlocked

      public boolean isLdapBlocked()
      EIX-2557, EIX-3943: Prüfe, dass der Benutzer im LDAP gesperrt wurde.
      Returns:
      true, wenn der Benuzer gesperrt wurde.