Package de.xima.fc.entities
Class UserProfile
java.lang.Object
de.xima.cmn.dao.model.AEntity<Long>
de.xima.fc.entities.AbstractEntity
de.xima.fc.entities.AbstractLockableEntity
de.xima.fc.entities.UserProfile
- All Implemented Interfaces:
de.xima.cmn.dao.interfaces.IEntity<Long>
,de.xima.cmn.dao.interfaces.ILockableEntity<Long>
,IFileMapProviding<UserProfileFile,
,UserProfileFileData> ILockingVersionProviding
,ITransferable
,ITransferableEntity
,ITransferableLockableEntity
,IUUIDEntity
,Serializable
,Comparable<de.xima.cmn.dao.interfaces.IEntity<Long>>
@Entity
public class UserProfile
extends AbstractLockableEntity
implements IUUIDEntity, IFileMapProviding<UserProfileFile,UserProfileFileData>
User profiles store information about a specific user that may be able to sign in using multiple
UserIdentity
s.- Since:
- 8.0.0.
- Author:
- XIMA Media GmbH
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
Fields inherited from class de.xima.fc.entities.AbstractLockableEntity
COL_LOCKINGVERSION, lockingVersion
Fields inherited from class de.xima.fc.entities.AbstractEntity
COL_ID, id
Fields inherited from interface de.xima.cmn.dao.interfaces.IEntity
ATTR_ID
Fields inherited from interface de.xima.cmn.dao.interfaces.ILockableEntity
ATTR_LOCKINGVERSION
Fields inherited from interface de.xima.fc.entities.interfaces.ITransferableEntity
IMPORT_ID, INVALID_ID
Fields inherited from interface de.xima.fc.entities.interfaces.IUUIDEntity
ATTR_UUID, COL_UUID, INVALID_UUID, INVALID_UUID_OBJECT, NULL_SAFE_UUID_TYPE, TYPE_NAME_UUID
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
addDirectClientAuthorization
(DirectClientAuthorization clientAuthorization) boolean
void
addGeneralPermission
(IAccessProperty accessProperty) void
addGeneralPermission
(String permission) void
addPermission
(String permission) void
addSystemPermission
(IAccessProperty accessProperty) void
addSystemPermission
(String permission) boolean
addUserIdentity
(UserIdentity identity) getDirectClientAuthorization
(Mandant client) getId()
getRole()
getUserIdentity
(String identifier, IClientDescriptor clientDescriptor) getUUID()
boolean
boolean
hasGeneralPermission
(IAccessProperty accessProp) boolean
hasGeneralPermission
(String permission) boolean
hasSystemPermission
(IAccessProperty accessProp) boolean
hasSystemPermission
(String permission) boolean
isActive()
boolean
Creates a new instance of file entity which is connected to the base entity (this
).void
void
boolean
removeDirectClientAuthorization
(DirectClientAuthorization clientAuthorization) boolean
removeUserIdentity
(UserIdentity identity) void
setActive
(boolean active) void
setActiveProfileImageData
(byte[] data, String fileName, Object userRef) void
setActiveProfileImageData
(File file, Object userRef) void
setCreatedInstant
(Instant createdInstant) void
setCustomPropertiesModel
(UserProfileProperties customPropertiesModel) void
setDefaultLocale
(Locale defaultLocale) void
setDeleteRequestExpireInstant
(Instant deleteRequestExpireInstant) void
setDeleteRequestUuid
(UUID deleteRequestUuid) void
setDirectClientAuthorizations
(List<DirectClientAuthorization> clientAuthorizations) void
void
setFamilyName
(String familyName) void
setFileMap
(Map<String, UserProfileFile> fileMap) DON'T USE!void
setFirstName
(String firstName) void
void
!!!void
setMergeRequestExpireInstant
(Instant mergeRequestExpireInstant) void
setMergeRequestProfile
(UserProfile mergeRequestProfile) void
setMergeRequestUuid
(UUID mergeRequestUuid) void
setMfaConfig
(UserProfileMfa mfaConfig) void
setMfaType
(EMultiFactorAuthenticationType mfaType) void
setPermissions
(Set<String> permissions) void
setPrimaryEmail
(UserEmail primaryEmail) void
void
setUserCredentials
(UserCredentials userCredentials) void
setUserCredentialsPassword
(String clearTextPassword) void
setUserCredentialsSetExpireInstant
(Instant userCredentialsSetExpireInstant) void
setUserCredentialsSetUuid
(UUID userCredentialsSetUuid) void
setUserIdentities
(List<UserIdentity> userIdentities) void
setUserName
(String userName) void
void
setUUIDObject
(UUID uuid) Methods inherited from class de.xima.fc.entities.AbstractLockableEntity
entityHasChanged, getLockingVersion, setLockingVersion, toString
Methods inherited from class de.xima.fc.entities.AbstractEntity
asIntValue, isPersisted, setId
Methods inherited from class de.xima.cmn.dao.model.AEntity
compareTo, equals, getDBTableName, hashCode
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Comparable
compareTo
Methods inherited from interface de.xima.cmn.dao.interfaces.IEntity
isPersisted
Methods inherited from interface de.xima.fc.entities.interfaces.IFileMapProviding
putFile, removeFile, setFileData, setFileData
-
Field Details
-
COL_PRIMARY_EMAIL
- See Also:
-
COL_FIRST_NAME
- See Also:
-
COL_FAMILY_NAME
- See Also:
-
COL_USER_NAME
- See Also:
-
COL_GENDER
- See Also:
-
COL_ROLE
- See Also:
-
COL_DEFAULT_LOCALE
- See Also:
-
COL_CREATED_TIMESTAMP
- See Also:
-
COL_FLAG_SYSTEM_ROLE
- See Also:
-
COL_FLAG_ACTIVE
- See Also:
-
COL_CREDENTIALS_SET_UUID
- See Also:
-
COL_CREDENTIALS_SET_EXPIRE_TIMESTAMP
- See Also:
-
COL_MERGE_REQUEST_UUID
- See Also:
-
COL_MERGE_REQUEST_EXPIRE_TIMESTAMP
- See Also:
-
COL_MERGE_REQUEST_PROFILE_ID
- See Also:
-
COL_DELETE_REQUEST_UUID
- See Also:
-
COL_DELETE_REQUEST_EXPIRE_TIMESTAMP
- See Also:
-
ATTR_PRIMARY_EMAIL
- See Also:
-
ATTR_FIRST_NAME
- See Also:
-
ATTR_FAMILY_NAME
- See Also:
-
ATTR_USER_NAME
- See Also:
-
ATTR_GENDER
- See Also:
-
ATTR_ROLE
- See Also:
-
ATTR_DEFAULT_LOCALE
- See Also:
-
ATTR_CREATED_INSTANT
- See Also:
-
ATTR_SYSTEM_ROLE
- See Also:
-
ATTR_ACTIVE
- See Also:
-
ATTR_USER_IDENTITIES
- See Also:
-
ATTR_USER_CREDENTIALS
- See Also:
-
ATTR_USER_CREDENTIALS_SET_UUID
- See Also:
-
ATTR_USER_CREDENTIALS_SET_EXPIRE_INSTANT
- See Also:
-
ATTR_CREDENTIALS_SET_UUID
- See Also:
-
ATTR_CREDENTIALS_SET_EXPIRE_INSTANT
- See Also:
-
ATTR_MERGE_REQUEST_UUID
- See Also:
-
ATTR_MERGE_REQUEST_EXPIRE_INSTANT
- See Also:
-
ATTR_MERGE_REQUEST_PROFILE
- See Also:
-
ATTR_DELETE_REQUEST_UUID
- See Also:
-
ATTR_DELETE_REQUEST_EXPIRE_ISNTANT
- See Also:
-
-
Constructor Details
-
UserProfile
public UserProfile()
-
-
Method Details
-
getId
- Specified by:
getId
in interfacede.xima.cmn.dao.interfaces.IEntity<Long>
-
setId
Description copied from class:AbstractEntity
!!!WARNING: Currently values biggerInteger.MAX_VALUE
or lower thenInteger.MIN_VALUE
will be altered to null!!!- Specified by:
setId
in interfacede.xima.cmn.dao.interfaces.IEntity<Long>
- Overrides:
setId
in classAbstractEntity
- Parameters:
id
-Long
the database-id to set
-
getUUID
- Specified by:
getUUID
in interfaceIUUIDEntity
- Returns:
- UUID (Universal Unique Identifier) that identifies this type of entity. Usually is unique within a
context, e.g.
Mandant
,Projekt
, ...
-
setUUID
- Specified by:
setUUID
in interfaceIUUIDEntity
-
getUUIDObject
- Specified by:
getUUIDObject
in interfaceIUUIDEntity
-
setUUIDObject
-
getPrimaryEmail
-
setPrimaryEmail
-
getPrimaryEmailAddress
-
getEmails
-
setEmails
-
addEmail
-
getEmail
-
hasEmail
-
getFirstName
-
setFirstName
-
getFamilyName
-
setFamilyName
-
getDisplayName
-
getUserName
-
setUserName
-
getGender
-
setGender
-
getRole
-
setRole
-
getPermissions
-
setPermissions
-
getSystemPermissions
- Returns:
- An unmodifiable set of the user profiles system permissions. Every permission in the set is kept in its original state (with the system permission prefix).
-
addSystemPermission
-
addSystemPermission
-
addGeneralPermission
-
addGeneralPermission
-
addPermission
-
hasSystemPermission
-
hasSystemPermission
-
hasGeneralPermission
-
hasGeneralPermission
-
getDefaultLocale
-
setDefaultLocale
-
getCreatedInstant
-
setCreatedInstant
-
isActive
public boolean isActive() -
setActive
public void setActive(boolean active) -
getUserCredentials
-
setUserCredentials
-
setUserCredentialsPassword
-
getUserCredentialsSetUuid
-
setUserCredentialsSetUuid
-
getUserCredentialsSetExpireInstant
-
setUserCredentialsSetExpireInstant
-
getMfaConfig
-
setMfaConfig
-
getMfaType
-
setMfaType
-
isMfaActive
public boolean isMfaActive() -
getMergeRequestUuid
-
setMergeRequestUuid
-
getMergeRequestExpireInstant
-
setMergeRequestExpireInstant
-
getMergeRequestProfile
-
setMergeRequestProfile
-
getDeleteRequestUuid
-
setDeleteRequestUuid
-
getDeleteRequestExpireInstant
-
setDeleteRequestExpireInstant
-
getUserIdentities
-
setUserIdentities
-
getUserIdentity
-
addUserIdentity
-
removeUserIdentity
-
getIdentities
-
getDirectClientAuthorizations
-
setDirectClientAuthorizations
-
addDirectClientAuthorization
-
getDirectClientAuthorization
-
removeDirectClientAuthorization
-
getCustomPropertiesModel
-
setCustomPropertiesModel
-
getActiveProfileImage
-
setActiveProfileImageData
public void setActiveProfileImageData(File file, Object userRef) throws FileNotFoundException, IOException - Throws:
FileNotFoundException
IOException
-
setActiveProfileImageData
-
removeActiveProfileImage
public void removeActiveProfileImage() -
getFileMap
- Specified by:
getFileMap
in interfaceIFileMapProviding<UserProfileFile,
UserProfileFileData>
-
setFileMap
Description copied from interface:IFileMapProviding
DON'T USE! Hibernate is managing this collection, so if it is overridden, Hibernate can't keep track of it anymore. UseIFileMapProviding.putFile(String, IKeyDependentFileEntity)
,IFileMapProviding.removeFile(String)
orIFileMapProviding.getFileMap()
instead to modify the map.- Specified by:
setFileMap
in interfaceIFileMapProviding<UserProfileFile,
UserProfileFileData>
-
newFileEntiy
Description copied from interface:IFileMapProviding
Creates a new instance of file entity which is connected to the base entity (this
). However this entity is not yet persisted nor is it connected to file key- Specified by:
newFileEntiy
in interfaceIFileMapProviding<UserProfileFile,
UserProfileFileData> - Returns:
- a new file entity connected to this entity
-
prePersist
public void prePersist()
-