@Override public User updateUser(final long userId, final UserUpdater updater) throws UserNotFoundException, UpdateException { if (updater == null || !updater.hasFields()) { throw new UpdateException("The update descriptor does not contain field updates"); } final TenantServiceAccessor tenantAccessor = getTenantAccessor(); final IdentityService identityService = tenantAccessor.getIdentityService(); // User change final EntityUpdateDescriptor userUpdateDescriptor = getUserUpdateDescriptor(updater, tenantAccessor.getTechnicalLoggerService()); // Personal data change final EntityUpdateDescriptor personalDataUpdateDescriptor = getUserContactInfoUpdateDescriptor(updater.getPersoContactUpdater()); // Professional data change final EntityUpdateDescriptor professionalDataUpdateDescriptor = getUserContactInfoUpdateDescriptor(updater.getProContactUpdater()); final EntityUpdateDescriptor iconUpdater = getIconUpdater(updater); try { SUser sUser = identityService.updateUser(userId, userUpdateDescriptor, personalDataUpdateDescriptor, professionalDataUpdateDescriptor, iconUpdater); return ModelConvertor.toUser(sUser); } catch (final SUserNotFoundException e) { throw new UserNotFoundException(e); } catch (final SBonitaException e) { throw new UpdateException(e); } }
@Override public User updateUser(final long userId, final UserUpdater updater) throws UserNotFoundException, UpdateException { if (updater == null || !updater.hasFields()) { throw new UpdateException("The update descriptor does not contain field updates"); } final TenantServiceAccessor tenantAccessor = getTenantAccessor(); final IdentityService identityService = tenantAccessor.getIdentityService(); // User change final EntityUpdateDescriptor userUpdateDescriptor = getUserUpdateDescriptor(updater, tenantAccessor.getTechnicalLoggerService()); // Personal data change final EntityUpdateDescriptor personalDataUpdateDescriptor = getUserContactInfoUpdateDescriptor(updater.getPersoContactUpdater()); // Professional data change final EntityUpdateDescriptor professionalDataUpdateDescriptor = getUserContactInfoUpdateDescriptor(updater.getProContactUpdater()); final EntityUpdateDescriptor iconUpdater = getIconUpdater(updater); try { SUser sUser = identityService.updateUser(userId, userUpdateDescriptor, personalDataUpdateDescriptor, professionalDataUpdateDescriptor, iconUpdater); return ModelConvertor.toUser(sUser); } catch (final SUserNotFoundException e) { throw new UserNotFoundException(e); } catch (final SBonitaException e) { throw new UpdateException(e); } }