/** * Update and persist the tag type per specified update request. * * @param tagTypeEntity the tag type entity * @param request the tag type update request */ private void updateTagTypeEntity(TagTypeEntity tagTypeEntity, TagTypeUpdateRequest request) { tagTypeEntity.setDisplayName(request.getDisplayName()); tagTypeEntity.setOrderNumber(request.getTagTypeOrder()); // Persist and refresh the entity. tagTypeDao.saveAndRefresh(tagTypeEntity); }
@Override public TagType updateTagType(TagTypeKey tagTypeKey, TagTypeUpdateRequest request) { // Perform validation and trim. tagTypeHelper.validateTagTypeKey(tagTypeKey); // Perform validation and trim the alternate key parameters. validateTagTypeUpdateRequest(request); // Retrieve and ensure that a tag type already exists with the specified key. TagTypeEntity tagTypeEntity = tagTypeDaoHelper.getTagTypeEntity(tagTypeKey); // Validate the display name does not already exist for another tag type. if (!StringUtils.equalsIgnoreCase(tagTypeEntity.getDisplayName(), request.getDisplayName())) { // Validate that the description is different. tagTypeDaoHelper.assertTagTypeDisplayNameDoesNotExist(request.getDisplayName()); } // Update and persist the tag type entity. updateTagTypeEntity(tagTypeEntity, request); // Create and return the tag type from the persisted entity. return createTagTypeFromEntity(tagTypeEntity); }
/** * Validates the tag type update request. This method also trims the request parameters. * * @param request the tag type update request */ private void validateTagTypeUpdateRequest(TagTypeUpdateRequest request) { Assert.notNull(request, "A tag type update request must be specified."); request.setDisplayName( alternateKeyHelper.validateStringParameter("display name", request.getDisplayName())); Assert.notNull(request.getTagTypeOrder(), "A tag type order must be specified."); }