Package com.flowable.idm.engine.impl
Class UserAccountBuilderImpl
- java.lang.Object
-
- com.flowable.idm.engine.impl.UserAccountBuilderImpl
-
- All Implemented Interfaces:
UserAccountBuilder
public class UserAccountBuilderImpl extends Object implements UserAccountBuilder
- Author:
- Filip Hrisafov
-
-
Field Summary
Fields Modifier and Type Field Description protected StringaccountIdprotected StringbusinessAccountIdprotected StringexternalUserIdprotected CoreIdmEngineConfigurationidmEngineConfigurationprotected Set<String>modifiedPropertiesprotected Stringnameprotected Stringstateprotected StringsubStateprotected StringsubTypeprotected StringtenantIdprotected Stringtypeprotected StringuserAccountDefinitionIdprotected StringuserAccountDefinitionKeyprotected StringuserId
-
Constructor Summary
Constructors Constructor Description UserAccountBuilderImpl(CoreIdmEngineConfiguration idmEngineConfiguration, String accountId)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description UserAccountBuilderbusinessAccountId(String businessAccountId)The id of the business account that the user account would be linked to (e.g.UserAccountBuilderexternalUserId(String externalUserId)The id of the user within the external system (e.g.StringgetBusinessAccountId()StringgetExternalUserId()StringgetName()StringgetState()StringgetSubState()StringgetSubType()StringgetTenantId()StringgetType()StringgetUserAccountDefinitionId()StringgetUserAccountDefinitionKey()StringgetUserId()booleanisPropertyModified(String property)UserAccountBuildername(String name)The name of the account (e.g.UserAccountsave()Performs the save of the user accountUserAccountBuilderstate(String state)The initial state of the created account.UserAccountBuildersubState(String subState)The initial sub state of the created account.UserAccountBuildersubType(String subType)The sub type of the account.UserAccountBuildertenantId(String tenantId)The id of the tenant that this account belongs toUserAccountBuildertype(String type)Set the type of the account.UserAccountBuilderuserAccountDefinitionId(String userAccountDefinitionId)The id of theUserAccountDefinitionthat should be used when creating the user account.UserAccountBuilderuserAccountDefinitionKey(String userAccountDefinitionKey)The key of theUserAccountDefinitionthat should be used when creating the user account.UserAccountBuilderuserId(String userId)The id of the user that this account belongs to
-
-
-
Field Detail
-
idmEngineConfiguration
protected final CoreIdmEngineConfiguration idmEngineConfiguration
-
accountId
protected final String accountId
-
userId
protected String userId
-
tenantId
protected String tenantId
-
name
protected String name
-
type
protected String type
-
subType
protected String subType
-
state
protected String state
-
subState
protected String subState
-
businessAccountId
protected String businessAccountId
-
externalUserId
protected String externalUserId
-
userAccountDefinitionId
protected String userAccountDefinitionId
-
userAccountDefinitionKey
protected String userAccountDefinitionKey
-
-
Constructor Detail
-
UserAccountBuilderImpl
public UserAccountBuilderImpl(CoreIdmEngineConfiguration idmEngineConfiguration, String accountId)
-
-
Method Detail
-
userId
public UserAccountBuilder userId(String userId)
Description copied from interface:UserAccountBuilderThe id of the user that this account belongs to- Specified by:
userIdin interfaceUserAccountBuilder- Parameters:
userId- the user id linked with the account
-
tenantId
public UserAccountBuilder tenantId(String tenantId)
Description copied from interface:UserAccountBuilderThe id of the tenant that this account belongs to- Specified by:
tenantIdin interfaceUserAccountBuilder- Parameters:
tenantId- the tenant id for the account
-
name
public UserAccountBuilder name(String name)
Description copied from interface:UserAccountBuilderThe name of the account (e.g. WhatsApp for XY, etc)- Specified by:
namein interfaceUserAccountBuilder- Parameters:
name- the name for the account
-
type
public UserAccountBuilder type(String type)
Description copied from interface:UserAccountBuilderSet the type of the account. (e.g. Messenger)- Specified by:
typein interfaceUserAccountBuilder- Parameters:
type- the type of the account- See Also:
for known types
-
subType
public UserAccountBuilder subType(String subType)
Description copied from interface:UserAccountBuilderThe sub type of the account. (e.g. WhatsApp, WeChat, Facebook, etc)- Specified by:
subTypein interfaceUserAccountBuilder- Parameters:
subType- the sub type of the account- See Also:
for known sub types
-
state
public UserAccountBuilder state(String state)
Description copied from interface:UserAccountBuilderThe initial state of the created account. In order to update the state of the account theUserAccountService.setStateAndSubState(String, String, String)should be used.- Specified by:
statein interfaceUserAccountBuilder- Parameters:
state- the initial state for the created account
-
subState
public UserAccountBuilder subState(String subState)
Description copied from interface:UserAccountBuilderThe initial sub state of the created account. In order to update the state of the account theUserAccountService.setStateAndSubState(String, String, String)should be used.- Specified by:
subStatein interfaceUserAccountBuilder- Parameters:
subState- the initial state for the created account
-
businessAccountId
public UserAccountBuilder businessAccountId(String businessAccountId)
Description copied from interface:UserAccountBuilderThe id of the business account that the user account would be linked to (e.g. WhatsApp business number xyz or WeChat official account, etc)- Specified by:
businessAccountIdin interfaceUserAccountBuilder- Parameters:
businessAccountId- the id of the business account
-
externalUserId
public UserAccountBuilder externalUserId(String externalUserId)
Description copied from interface:UserAccountBuilderThe id of the user within the external system (e.g. the phone number for WhatsApp, the user-id for Facebook account, etc)- Specified by:
externalUserIdin interfaceUserAccountBuilder- Parameters:
externalUserId- the id of the external user
-
userAccountDefinitionId
public UserAccountBuilder userAccountDefinitionId(String userAccountDefinitionId)
Description copied from interface:UserAccountBuilderThe id of theUserAccountDefinitionthat should be used when creating the user account.- Specified by:
userAccountDefinitionIdin interfaceUserAccountBuilder- Parameters:
userAccountDefinitionId- the id of the user account definition
-
userAccountDefinitionKey
public UserAccountBuilder userAccountDefinitionKey(String userAccountDefinitionKey)
Description copied from interface:UserAccountBuilderThe key of theUserAccountDefinitionthat should be used when creating the user account.- Specified by:
userAccountDefinitionKeyin interfaceUserAccountBuilder- Parameters:
userAccountDefinitionKey- the key of the user account definition
-
save
public UserAccount save()
Description copied from interface:UserAccountBuilderPerforms the save of the user account- Specified by:
savein interfaceUserAccountBuilder- Returns:
- the saved
UserAccount
-
isPropertyModified
public boolean isPropertyModified(String property)
-
getUserId
public String getUserId()
-
getTenantId
public String getTenantId()
-
getName
public String getName()
-
getType
public String getType()
-
getSubType
public String getSubType()
-
getState
public String getState()
-
getSubState
public String getSubState()
-
getBusinessAccountId
public String getBusinessAccountId()
-
getExternalUserId
public String getExternalUserId()
-
getUserAccountDefinitionId
public String getUserAccountDefinitionId()
-
getUserAccountDefinitionKey
public String getUserAccountDefinitionKey()
-
-