/** * Has this updater at least one field to update (directly or in its personal / professional contact data)? * * @return true if there is at least one field to update */ public boolean hasFields() { return !getFields().isEmpty() || getPersoContactUpdater() != null && getPersoContactUpdater().hasFields() || getProContactUpdater() != null && getProContactUpdater().hasFields(); }
/** * Has this updater at least one field to update (directly or in its personal / professional contact data)? * * @return true if there is at least one field to update */ public boolean hasFields() { return !getFields().isEmpty() || getPersoContactUpdater() != null && getPersoContactUpdater().hasFields() || getProContactUpdater() != null && getProContactUpdater().hasFields(); }
@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); } }