Class HvlAuthzAbstractUserServiceImpl
java.lang.Object
tr.com.havelsan.javarch.oauth.authz.starter.module.user.logic.HvlAuthzAbstractUserServiceImpl
- All Implemented Interfaces:
HvlAuthzUserService
- Direct Known Subclasses:
HvlAuthzUserServiceImpl
,HvlAuthzUserServiceLdapImpl
The class which implements
HvlAuthzUserService
.-
Field Summary
-
Constructor Summary
ConstructorDescriptionHvlAuthzAbstractUserServiceImpl
(HvlAuthVerificationRestService verificationCloudRestService, HvlOAuthUserManager userManager, HvlOAuthUserOperationalManager userOperationalManager, HvlOAuthUserFieldValueGeneratorProvider userFieldValueGeneratorProvider, HvlAuthzSessionService sessionService, HvlAuthzLoggerProducerProvider loggerProducerProvider, HvlOAuthUserPasswordProvider userPasswordProvider, HvlAuthzBundleService bundleService, HvlAuthzInstanceInternalEventPublisher instanceInternalEventPublisher, HvlAuthzKeyProperties authzKeyProperties) Instantiates a new HvlAuthzUserServiceImpl. -
Method Summary
Modifier and TypeMethodDescriptionvoid
changePassword
(@NotNull @Valid HvlOAuthUserChangePasswordModel userChangePasswordModel) Change password by user.void
changePasswordByAdmin
(@NotNull @Valid HvlOAuthUserChangePasswordByAdminModel userChangePasswordByAdminModel) Change password by admin.protected abstract void
changePasswordForOtherSystem
(HvlOAuthUserModel user, String password) void
changePasswordUsingVerification
(@NotNull @Valid HvlOAuthUserChangePasswordWithVerificationModel userChangePasswordWithVerificationModel) changePasswordUsingVerification is a method which is used to change user password using verification way.void
deleteByUuid
(@NotBlank @Size(min=36,max=36) String uuid) Delete user by uuid.getByIntegrationCode
(@NotBlank @Size(max=20) String integrationCode) Gets user by integration code.getByUsername
(@NotBlank @Size(max=50) String username) Gets user by username.Gets user by uuid.void
lock
(@NotNull @Valid HvlOAuthUserLockModel userLockModel) Lock user.tr.com.havelsan.javarch.data.commons.pageable.HvlPage<HvlOAuthUserClaimDataModel>
queryClaimDataPage
(@NotNull @Valid HvlOAuthUserClaimQueryModel userClaimQueryModel) Returns a page of user claim for assigned entity relation matching the query criteria.tr.com.havelsan.javarch.data.commons.pageable.HvlPage<HvlOAuthUserDataModel>
queryPage
(@Valid @NotNull HvlOAuthUserQueryModel userQueryModel) Returns a page of user matching the query criteria.save
(@NotNull @Valid HvlOAuthUserModel userModel) Saves user.saveWithPredefinedValues
(@NotNull @Valid HvlOAuthUserModel userModel) saveWithPredefinedValues is a method which is used to add new user data with predefined values which can be defined by administrator.void
Unlock user.update
(@NotNull @Valid HvlOAuthUserModel userModel) Update user.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface tr.com.havelsan.javarch.oauth.authz.starter.module.user.logic.HvlAuthzUserService
saveLdapEntry
-
Field Details
-
USERNAME_FIELD
The constant USERNAME_FIELD.- See Also:
-
-
Constructor Details
-
HvlAuthzAbstractUserServiceImpl
public HvlAuthzAbstractUserServiceImpl(HvlAuthVerificationRestService verificationCloudRestService, HvlOAuthUserManager userManager, HvlOAuthUserOperationalManager userOperationalManager, HvlOAuthUserFieldValueGeneratorProvider userFieldValueGeneratorProvider, HvlAuthzSessionService sessionService, HvlAuthzLoggerProducerProvider loggerProducerProvider, HvlOAuthUserPasswordProvider userPasswordProvider, HvlAuthzBundleService bundleService, HvlAuthzInstanceInternalEventPublisher instanceInternalEventPublisher, HvlAuthzKeyProperties authzKeyProperties) Instantiates a new HvlAuthzUserServiceImpl.- Parameters:
verificationCloudRestService
- the verification cloud rest serviceuserManager
- the user manageruserOperationalManager
- the user operational manageruserFieldValueGeneratorProvider
- the user field value generator providersessionService
- the session serviceloggerProducerProvider
- the logger producer provideruserPasswordProvider
- the user password providerbundleService
- the bundle serviceinstanceInternalEventPublisher
- the instance internal event publisherauthzKeyProperties
- the authz key properties
-
-
Method Details
-
save
Saves user.- Specified by:
save
in interfaceHvlAuthzUserService
- Parameters:
userModel
- the user model- Returns:
- the user model
-
saveWithPredefinedValues
public HvlOAuthUserModel saveWithPredefinedValues(@NotNull @Valid @NotNull @Valid HvlOAuthUserModel userModel) saveWithPredefinedValues is a method which is used to add new user data with predefined values which can be defined by administrator. For example, If there is a record for user type of user trying to be added matching with predefined role, system would create a profile authorized with this predefined roles for this user.- Specified by:
saveWithPredefinedValues
in interfaceHvlAuthzUserService
- Parameters:
userModel
- the user model- Returns:
- the user model
-
update
@Validated(tr.com.havelsan.javarch.data.commons.validation.HvlConstraintGroups.ModifyingOperation.class) public HvlOAuthUserModel update(@NotNull @Valid @NotNull @Valid HvlOAuthUserModel userModel) Update user.- Specified by:
update
in interfaceHvlAuthzUserService
- Parameters:
userModel
- the user model- Returns:
- the user model
-
deleteByUuid
Delete user by uuid.- Specified by:
deleteByUuid
in interfaceHvlAuthzUserService
- Parameters:
uuid
- the uuid
-
changePasswordByAdmin
public void changePasswordByAdmin(@NotNull @Valid @NotNull @Valid HvlOAuthUserChangePasswordByAdminModel userChangePasswordByAdminModel) Change password by admin.- Specified by:
changePasswordByAdmin
in interfaceHvlAuthzUserService
- Parameters:
userChangePasswordByAdminModel
- the HvlOAuthUserChangePasswordByAdminModel
-
changePassword
public void changePassword(@NotNull @Valid @NotNull @Valid HvlOAuthUserChangePasswordModel userChangePasswordModel) Change password by user.- Specified by:
changePassword
in interfaceHvlAuthzUserService
- Parameters:
userChangePasswordModel
- the user change password model
-
changePasswordUsingVerification
public void changePasswordUsingVerification(@NotNull @Valid @NotNull @Valid HvlOAuthUserChangePasswordWithVerificationModel userChangePasswordWithVerificationModel) changePasswordUsingVerification is a method which is used to change user password using verification way.- Specified by:
changePasswordUsingVerification
in interfaceHvlAuthzUserService
- Parameters:
userChangePasswordWithVerificationModel
- the user change password with verification model
-
lock
Lock user.- Specified by:
lock
in interfaceHvlAuthzUserService
- Parameters:
userLockModel
- the userLockModel
-
unlock
Unlock user.- Specified by:
unlock
in interfaceHvlAuthzUserService
- Parameters:
uuid
- the uuid
-
getByUuid
@Transactional(readOnly=true) public HvlOAuthUserModel getByUuid(@NotBlank @Size(min=36,max=36) @NotBlank @Size(min=36,max=36) String uuid) Gets user by uuid.- Specified by:
getByUuid
in interfaceHvlAuthzUserService
- Parameters:
uuid
- the uuid- Returns:
- the user model
-
getByUsername
@Transactional(readOnly=true) public HvlOAuthUserModel getByUsername(@NotBlank @Size(max=50) @NotBlank @Size(max=50) String username) Gets user by username.- Specified by:
getByUsername
in interfaceHvlAuthzUserService
- Parameters:
username
- the username- Returns:
- the user model
-
getByIntegrationCode
@Transactional(readOnly=true) public HvlOAuthUserModel getByIntegrationCode(@NotBlank @Size(max=20) @NotBlank @Size(max=20) String integrationCode) Gets user by integration code.- Specified by:
getByIntegrationCode
in interfaceHvlAuthzUserService
- Parameters:
integrationCode
- the integration code- Returns:
- the user model
-
queryPage
@Transactional(readOnly=true) public tr.com.havelsan.javarch.data.commons.pageable.HvlPage<HvlOAuthUserDataModel> queryPage(@Valid @NotNull @Valid @NotNull HvlOAuthUserQueryModel userQueryModel) Returns a page of user matching the query criteria.- Specified by:
queryPage
in interfaceHvlAuthzUserService
- Parameters:
userQueryModel
- the user query model- Returns:
- the page of user data model
-
queryClaimDataPage
@Transactional(readOnly=true) public tr.com.havelsan.javarch.data.commons.pageable.HvlPage<HvlOAuthUserClaimDataModel> queryClaimDataPage(@NotNull @Valid @NotNull @Valid HvlOAuthUserClaimQueryModel userClaimQueryModel) Returns a page of user claim for assigned entity relation matching the query criteria.- Specified by:
queryClaimDataPage
in interfaceHvlAuthzUserService
- Parameters:
userClaimQueryModel
- the user claim query model- Returns:
- the page of user claim projection model
-
changePasswordForOtherSystem
-