Example usage for org.apache.commons.lang ObjectUtils toString

List of usage examples for org.apache.commons.lang ObjectUtils toString

Introduction

In this page you can find the example usage for org.apache.commons.lang ObjectUtils toString.

Prototype

public static String toString(Object obj) 

Source Link

Document

Gets the toString of an Object returning an empty string ("") if null input.

 ObjectUtils.toString(null)         = "" ObjectUtils.toString("")           = "" ObjectUtils.toString("bat")        = "bat" ObjectUtils.toString(Boolean.TRUE) = "true" 

Usage

From source file:org.medici.bia.dao.user.UserDAOJpaImpl.java

/**
 * //from   www. ja va  2 s. c  o m
 */
protected PaginationFilter generatePaginationFilterMYSQL(PaginationFilter paginationFilter) {
    if (!ObjectUtils.toString(paginationFilter.getSortingColumn()).equals("")) {
        switch (paginationFilter.getSortingColumn()) {
        case 0:
            paginationFilter.addSortingCriteria("firstName", paginationFilter.getSortingDirection());
            paginationFilter.addSortingCriteria("lastName", paginationFilter.getSortingDirection());
            break;
        case 1:
            paginationFilter.addSortingCriteria("mail", paginationFilter.getSortingDirection());
            break;
        case 2:
            paginationFilter.addSortingCriteria("city", paginationFilter.getSortingDirection());
            break;
        case 3:
            paginationFilter.addSortingCriteria("country", paginationFilter.getSortingDirection());
            break;
        case 4:
            paginationFilter.addSortingCriteria("lastLoginDate", paginationFilter.getSortingDirection());
            break;
        default:
            paginationFilter.addSortingCriteria("account", "asc");
            break;
        }
    }

    return paginationFilter;
}

From source file:org.medici.bia.dao.userhistory.UserHistoryDAOJpaImpl.java

/**
 * /*from  w  ww .ja v a  2  s  .co m*/
 * @param paginationFilter
 * @param searchType
 * @return
 */
protected PaginationFilter generatePaginationFilterMYSQL(Category category, PaginationFilter paginationFilter) {
    if (category.equals(Category.DOCUMENT)) {
        if (!ObjectUtils.toString(paginationFilter.getSortingColumn()).equals("")) {
            switch (paginationFilter.getSortingColumn()) {
            case 0:
                paginationFilter.addSortingCriteria("dateAndTime", paginationFilter.getSortingDirection());
                break;
            case 1:
                paginationFilter.addSortingCriteria("action", paginationFilter.getSortingDirection());
                break;
            case 2:
                paginationFilter.addSortingCriteria("document.volume.volNum",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("document.volume.volLetExt",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("document.folioNum",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("document.folioMod",
                        paginationFilter.getSortingDirection());
                break;
            case 3:
                paginationFilter.addSortingCriteria("document.senderPeople.mapNameLf",
                        paginationFilter.getSortingDirection());
                break;
            case 4:
                paginationFilter.addSortingCriteria("document.recipientPeople.mapNameLf",
                        paginationFilter.getSortingDirection());
                break;
            default:
                paginationFilter.addSortingCriteria("dateAndTime", paginationFilter.getSortingDirection());
                break;
            }
        }
    } else if (category.equals(Category.PEOPLE)) {
        if (!ObjectUtils.toString(paginationFilter.getSortingColumn()).equals("")) {
            switch (paginationFilter.getSortingColumn()) {
            case 0:
                paginationFilter.addSortingCriteria("dateAndTime", paginationFilter.getSortingDirection());
                break;
            case 1:
                paginationFilter.addSortingCriteria("action", paginationFilter.getSortingDirection());
                break;
            case 2:
                paginationFilter.addSortingCriteria("person.mapNameLf", paginationFilter.getSortingDirection());
                break;
            case 3:
                paginationFilter.addSortingCriteria("person.bornYear", paginationFilter.getSortingDirection());
                //Month is an entity, so we don't have field with suffix 
                paginationFilter.addSortingCriteria("person.bornMonth.monthNum",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("person.bornDay", paginationFilter.getSortingDirection());
                break;
            case 4:
                paginationFilter.addSortingCriteria("person.deathYear", paginationFilter.getSortingDirection());
                //Month is an entity, so we don't have field with suffix 
                paginationFilter.addSortingCriteria("person.deathMonth.monthNum",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("person.deathDay", paginationFilter.getSortingDirection());
                break;
            default:
                paginationFilter.addSortingCriteria("dateAndTime", paginationFilter.getSortingDirection());
                break;
            }
        }
    } else if (category.equals(Category.PLACE)) {
        if (!ObjectUtils.toString(paginationFilter.getSortingColumn()).equals("")) {
            switch (paginationFilter.getSortingColumn()) {
            case 0:
                paginationFilter.addSortingCriteria("dateAndTime", paginationFilter.getSortingDirection());
                break;
            case 1:
                paginationFilter.addSortingCriteria("action", paginationFilter.getSortingDirection());
                break;
            case 2:
                paginationFilter.addSortingCriteria("place.placeNameFull",
                        paginationFilter.getSortingDirection());
                break;
            case 3:
                break;
            default:
                paginationFilter.addSortingCriteria("dateAndTime", paginationFilter.getSortingDirection());
                break;
            }
        }
    } else if (category.equals(Category.VOLUME)) {
        if (!ObjectUtils.toString(paginationFilter.getSortingColumn()).equals("")) {
            switch (paginationFilter.getSortingColumn()) {
            case 0:
                paginationFilter.addSortingCriteria("dateAndTime", paginationFilter.getSortingDirection());
                break;
            case 1:
                paginationFilter.addSortingCriteria("action", paginationFilter.getSortingDirection());
                break;
            case 2:
                paginationFilter.addSortingCriteria("volume.volNum", paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("volume.volLetExt", paginationFilter.getSortingDirection());
                break;
            case 3:
                paginationFilter.addSortingCriteria("volume.serieList.title",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("volume.serieList.subTitle1",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("volume.serieList.subTitle2",
                        paginationFilter.getSortingDirection());
                break;
            case 4:
                paginationFilter.addSortingCriteria("volume.startYear", paginationFilter.getSortingDirection());
                //Month is an entity, so we don't have field with suffix 
                paginationFilter.addSortingCriteria("volume.startMonthNum.monthNum",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("volume.startDay", paginationFilter.getSortingDirection());
                break;
            case 5:
                paginationFilter.addSortingCriteria("volume.endYear", paginationFilter.getSortingDirection());
                //Month is an entity, so we don't have field with suffix 
                paginationFilter.addSortingCriteria("volume.endMonthNum.monthNum",
                        paginationFilter.getSortingDirection());
                paginationFilter.addSortingCriteria("volume.endDay", paginationFilter.getSortingDirection());
                break;
            case 6:
                paginationFilter.addSortingCriteria("volume.digitized", paginationFilter.getSortingDirection());
                break;
            default:
                paginationFilter.addSortingCriteria("dateAndTime", paginationFilter.getSortingDirection());
                break;
            }
        }
    }

    return paginationFilter;
}

From source file:org.medici.bia.dao.usermessage.UserMessageDAOJpaImpl.java

private PaginationFilter generatePaginationFilterMYSQL(UserMessageSearch userMessageSearch,
        PaginationFilter paginationFilter) {
    if (userMessageSearch.getUserMessageCategory().equals(UserMessageCategory.INBOX)) {
        if (!ObjectUtils.toString(paginationFilter.getSortingColumn()).equals("")) {
            switch (paginationFilter.getSortingColumn()) {
            case 0:
                paginationFilter.addSortingCriteria("sender", paginationFilter.getSortingDirection());
                break;
            case 1:
                paginationFilter.addSortingCriteria("subject", paginationFilter.getSortingDirection());
                break;
            case 2:
                paginationFilter.addSortingCriteria("messageSendedDate",
                        paginationFilter.getSortingDirection());
                break;
            default:
                break;
            }/* w  ww. ja  v a  2  s .c o m*/
        }
    } else if (userMessageSearch.getUserMessageCategory().equals(UserMessageCategory.OUTBOX)) {
        if (!ObjectUtils.toString(paginationFilter.getSortingColumn()).equals("")) {
            switch (paginationFilter.getSortingColumn()) {
            case 0:
                paginationFilter.addSortingCriteria("recipient", paginationFilter.getSortingDirection());
                break;
            case 1:
                paginationFilter.addSortingCriteria("subject", paginationFilter.getSortingDirection());
                break;
            case 2:
                paginationFilter.addSortingCriteria("messageSendedDate",
                        paginationFilter.getSortingDirection());
                break;
            default:
                break;
            }
        }
    } else if (userMessageSearch.getUserMessageCategory().equals(UserMessageCategory.DRAFT)) {
        if (!ObjectUtils.toString(paginationFilter.getSortingColumn()).equals("")) {
            switch (paginationFilter.getSortingColumn()) {
            case 0:
                paginationFilter.addSortingCriteria("recipient", paginationFilter.getSortingDirection());
                break;
            case 1:
                paginationFilter.addSortingCriteria("subject", paginationFilter.getSortingDirection());
                break;
            case 2:
                paginationFilter.addSortingCriteria("messageSendedDate",
                        paginationFilter.getSortingDirection());
                break;
            default:
                break;
            }
        }
    }

    return paginationFilter;
}

From source file:org.medici.bia.domain.EpLink.java

@Override
public String toString() {
    StringBuilder stringBuilder = new StringBuilder("");

    if (!ObjectUtils.toString(getPerson()).equals("")) {
        stringBuilder.append(getPerson());
    }/*from  w  w  w  .j  a  v a  2s  . c  om*/

    if (getAssignUnsure()) {
        stringBuilder.append(" [unsure]");
    }
    if (getPortrait()) {
        stringBuilder.append(" [portrait]");
    }

    return stringBuilder.toString();
}

From source file:org.medici.bia.domain.EplToLink.java

@Override
public String toString() {
    StringBuilder stringBuilder = new StringBuilder("");

    if (!ObjectUtils.toString(getTopic()).equals("")) {
        if (!ObjectUtils.toString(getTopic().getTopicTitle()).equals("")) {
            stringBuilder.append(getTopic().getTopicTitle());
        }//from w w w .ja  v a2 s  .c  o  m
    }

    if (!ObjectUtils.toString(getPlace()).equals("")) {
        if (!ObjectUtils.toString(getPlace().getPlaceNameFull()).equals("")) {
            if (stringBuilder.length() > 0) {
                stringBuilder.append(" - ");
            }
            stringBuilder.append(getPlace().getPlaceNameFull());
        }
    }

    return stringBuilder.toString();
}

From source file:org.medici.bia.domain.Image.java

@Override
public String toString() {
    StringBuilder stringBuilder = new StringBuilder("");
    stringBuilder.append(getStoragePath());
    stringBuilder.append("/MDP");
    if (!ObjectUtils.toString(getVolNum()).equals("")) {
        stringBuilder.append(getVolNum());
    }/*from  www .  j av  a  2  s  .  co m*/
    if (!ObjectUtils.toString(getVolLetExt()).equals("")) {
        stringBuilder.append(getVolLetExt());
    }
    stringBuilder.append('/');
    if (!StringUtils.isEmpty(getImageName())) {
        stringBuilder.append(getImageName());
    }

    return stringBuilder.toString();
}

From source file:org.medici.bia.domain.PoLink.java

/**
 * This method returns start date. It's a concatenation of three fields,
 * startDay, startMonth, and startYear. It's a transient property 
 * (not stored on database ndr).//from w  ww. ja  v  a2  s  .com
 *  
 * @return String rappresentation of volume identifiers.
 */
@Transient
public String getStartDate() {
    StringBuilder stringBuilder = new StringBuilder(0);
    if (startDay != null) {
        stringBuilder.append(startDay);
    }

    if (!ObjectUtils.toString(startMonth).equals("")) {
        if (stringBuilder.length() > 0) {
            stringBuilder.append(' ');
        }
        stringBuilder.append(startMonth);
    }

    if (startYear != null) {
        if (stringBuilder.length() > 0) {
            stringBuilder.append(' ');
        }
        stringBuilder.append(startYear);
    }

    return stringBuilder.toString();
}

From source file:org.medici.bia.domain.PoLink.java

/**
 * This method returns start date. It's a concatenation of three fields,
 * startDay, startMonth, and startYear. It's a transient property 
 * (not stored on database ndr)./*w w w .  ja v a2 s  . co m*/
 *  
 * @return String rappresentation of volume identifiers.
 */
@Transient
public String getEndDate() {
    StringBuilder stringBuilder = new StringBuilder(0);
    if (endDay != null) {
        stringBuilder.append(endDay);
    }

    if (!ObjectUtils.toString(endMonth).equals("")) {
        if (stringBuilder.length() > 0) {
            stringBuilder.append(' ');
        }
        stringBuilder.append(endMonth);
    }

    if (endYear != null) {
        if (stringBuilder.length() > 0) {
            stringBuilder.append(' ');
        }
        stringBuilder.append(endYear);
    }

    return stringBuilder.toString();
}

From source file:org.medici.bia.service.peoplebase.PeopleBaseServiceImpl.java

/**
 * {@inheritDoc}//w w  w .ja  v  a  2s .  c o  m
 */
@Transactional(readOnly = false, propagation = Propagation.REQUIRED)
@Override
public People addNewPerson(People person) throws ApplicationThrowable {
    Date now = new Date();
    try {
        User user = getCurrentUser();

        person.setPersonId(null);

        //Setting fields that are defined as nullable = false
        person.setResearcher(
                ((BiaUserDetailsImpl) SecurityContextHolder.getContext().getAuthentication().getPrincipal())
                        .getInitials());
        person.setCreatedBy(user);
        person.setDateCreated(now);
        person.setLastUpdate(now);
        person.setLastUpdateBy(user);
        person.setMapNameLf(PersonUtils.generateMapNameLf(person));

        if (person.getGender().equals(Gender.NULL)) {
            person.setGender(null);
        }
        if (person.getBornApprox() == null) {
            person.setBornApprox(Boolean.FALSE);
        }
        if (person.getBornDateBc() == null) {
            person.setBornDateBc(Boolean.FALSE);
        }
        if (person.getBornPlaceUnsure() == null) {
            person.setBornPlaceUnsure(Boolean.FALSE);
        }
        if (person.getDeathApprox() == null) {
            person.setDeathApprox(Boolean.FALSE);
        }
        if (person.getDeathDateBc() == null) {
            person.setDeathDateBc(Boolean.FALSE);
        }
        if (person.getDeathPlaceUnsure() == null) {
            person.setDeathPlaceUnsure(Boolean.FALSE);
        }
        if (person.getPortrait() == null) {
            person.setPortrait(false);
        }

        if (person.getBornMonth() != null) {
            Month month = getMonthDAO().find(person.getBornMonth().getMonthNum());
            person.setBornMonth(month);
        } else {
            person.setBornMonth(null);
        }
        person.setBornDate(
                DateUtils.getLuceneDate(person.getBornYear(), person.getBornMonth(), person.getBornDay()));

        if (person.getDeathMonth() != null) {
            Month month = getMonthDAO().find(person.getDeathMonth().getMonthNum());
            person.setDeathMonth(month);
        } else {
            person.setDeathMonth(null);
        }
        person.setDeathDate(
                DateUtils.getLuceneDate(person.getDeathYear(), person.getDeathMonth(), person.getDeathDay()));

        if (!ObjectUtils.toString(person.getBornPlace()).equals("")) {
            person.setBornPlace(getPlaceDAO().find(person.getBornPlace().getPlaceAllId()));
            if (person.getBornPlace().getPrefFlag().equals("V")) {
                person.setBornPlace(getPlaceDAO().findPrinicipalPlace(person.getBornPlace().getGeogKey()));
            }
        } else {
            person.setBornPlace(null);
        }

        if (!ObjectUtils.toString(person.getDeathPlace()).equals("")) {
            person.setDeathPlace(getPlaceDAO().find(person.getDeathPlace().getPlaceAllId()));
            if (person.getDeathPlace().getPrefFlag().equals("V")) {
                person.setDeathPlace(getPlaceDAO().findPrinicipalPlace(person.getDeathPlace().getGeogKey()));
            }
        } else {
            person.setDeathPlace(null);
        }

        if (ObjectUtils.toString(person.getActiveStart()).equals("")) {
            person.setActiveStart(null);
        } else {
            person.setActiveStart(person.getActiveStart());
        }

        if (ObjectUtils.toString(person.getActiveEnd()).equals("")) {
            person.setActiveEnd(null);
        } else {
            person.setActiveEnd(person.getActiveEnd());
        }

        person.setLogicalDelete(Boolean.FALSE);

        //Code for create altNames
        AltName given = new AltName();
        given.setAltName(person.getFirst());
        given.setNameType(NameType.Given.toString());

        AltName family = new AltName();
        family.setAltName(person.getLast());
        family.setNameType(NameType.Family.toString());

        AltName searchName = new AltName();
        searchName.setAltName(Normalizer.normalize(person.getMapNameLf(), Normalizer.Form.NFD));
        searchName.setAltName(searchName.getAltName().replaceAll("\\p{InCombiningDiacriticalMarks}+", ""));
        searchName.setAltName(searchName.getAltName().replace(",", ""));
        searchName.setAltName(searchName.getAltName().replace("(", ""));
        searchName.setAltName(searchName.getAltName().replace(")", ""));
        searchName.setAltName(searchName.getAltName().toUpperCase());
        searchName.setNameType(NameType.SearchName.toString());

        getPeopleDAO().persist(person);

        person = getPeopleDAO().findLastEntryPerson();

        given.setPerson(person);
        getAltNameDAO().persist(given);

        family.setPerson(person);
        getAltNameDAO().persist(family);

        searchName.setPerson(person);
        getAltNameDAO().persist(searchName);

        getUserHistoryDAO()
                .persist(new UserHistory(user, "Add person", Action.CREATE, Category.PEOPLE, person));
        getVettingHistoryDAO().persist(
                new VettingHistory(user, "Add person", org.medici.bia.domain.VettingHistory.Action.CREATE,
                        org.medici.bia.domain.VettingHistory.Category.PEOPLE, person));

        return person;
    } catch (Throwable th) {
        throw new ApplicationThrowable(th);
    }
}

From source file:org.medici.bia.service.peoplebase.PeopleBaseServiceImpl.java

/**
 * {@inheritDoc}/*from   w ww  .j  a  v  a2s  . c  o m*/
 */
@Transactional(readOnly = false, propagation = Propagation.REQUIRED)
@Override
public People editDetailsPerson(People person) throws ApplicationThrowable {
    try {
        User user = getCurrentUser();

        People personToUpdate = getPeopleDAO().find(person.getPersonId());

        Set<AltName> altNames = personToUpdate.getAltName();
        AltName searchName = null;

        // fill fields to update person details section
        if (personToUpdate.getFirst() != null && !personToUpdate.getFirst().equals(person.getFirst())) {
            for (AltName current : altNames) {
                if (current.getAltName().equals(personToUpdate.getFirst())
                        && current.getNameType().equals(NameType.Given.toString())) {
                    current.setAltName(person.getFirst());
                    getAltNameDAO().merge(current);
                    break;
                }
            }
        }

        if (personToUpdate.getLast() != null && !personToUpdate.getLast().equals(person.getLast())) {
            for (AltName current : altNames) {
                if (current.getAltName().equals(personToUpdate.getLast())
                        && current.getNameType().equals(NameType.Family.toString())) {
                    current.setAltName(person.getLast());
                    getAltNameDAO().merge(current);
                    break;
                }
            }
        }

        if (!personToUpdate.getMapNameLf().equals(PersonUtils.generateMapNameLf(person))) {
            boolean found = false;
            String toCompare = personToUpdate.getMapNameLf();
            toCompare = Normalizer.normalize(toCompare, Normalizer.Form.NFD);
            toCompare = toCompare.replaceAll("\\p{InCombiningDiacriticalMarks}+", "");
            toCompare = toCompare.replace(",", "");
            toCompare = toCompare.replace("(", "");
            toCompare = toCompare.replace(")", "");
            toCompare = toCompare.toUpperCase();
            for (AltName current : altNames) {
                if (current.getAltName().equals(toCompare)
                        && current.getNameType().equals(NameType.SearchName.toString())) {
                    current.setAltName(
                            Normalizer.normalize(PersonUtils.generateMapNameLf(person), Normalizer.Form.NFD));
                    current.setAltName(
                            current.getAltName().replaceAll("\\p{InCombiningDiacriticalMarks}+", ""));
                    current.setAltName(current.getAltName().replace(",", ""));
                    current.setAltName(current.getAltName().replace("(", ""));
                    current.setAltName(current.getAltName().replace(")", ""));
                    current.setAltName(current.getAltName().toUpperCase());
                    found = true;
                    getAltNameDAO().merge(current);
                    break;
                }

            }
            if (!found) {
                searchName = new AltName();
                searchName.setAltName(
                        Normalizer.normalize(PersonUtils.generateMapNameLf(person), Normalizer.Form.NFD));
                searchName.setAltName(
                        searchName.getAltName().replaceAll("\\p{InCombiningDiacriticalMarks}+", ""));
                searchName.setAltName(searchName.getAltName().replace(",", ""));
                searchName.setAltName(searchName.getAltName().toUpperCase());
                searchName.setNameType(NameType.SearchName.toString());
            }
        }

        personToUpdate.setFirst(person.getFirst());
        personToUpdate.setSucNum(person.getSucNum());
        personToUpdate.setMidPrefix(person.getMidPrefix());
        personToUpdate.setMiddle(person.getMiddle());
        personToUpdate.setLastPrefix(person.getLastPrefix());
        personToUpdate.setLast(person.getLast());
        personToUpdate.setPostLastPrefix(person.getPostLastPrefix());
        personToUpdate.setPostLast(person.getPostLast());
        personToUpdate.setGender((!person.getGender().equals(People.Gender.NULL)) ? person.getGender() : null);
        //Update setMapNameLf
        personToUpdate.setMapNameLf(PersonUtils.generateMapNameLf(personToUpdate));

        personToUpdate.setBornYear(person.getBornYear());
        if (person.getBornMonth() != null) {
            personToUpdate.setBornMonth(getMonthDAO().find(person.getBornMonth().getMonthNum()));
        } else {
            personToUpdate.setBornMonth(null);
        }

        // Born Information
        personToUpdate.setBornDay(person.getBornDay());
        personToUpdate.setBornDate(DateUtils.getLuceneDate(personToUpdate.getBornYear(),
                personToUpdate.getBornMonth(), personToUpdate.getBornDay()));
        personToUpdate.setBornApprox(person.getBornApprox());
        personToUpdate.setBornDateBc(person.getBornDateBc());
        if (!ObjectUtils.toString(person.getBornPlace()).equals("")) {
            personToUpdate.setBornPlace(getPlaceDAO().find(person.getBornPlace().getPlaceAllId()));
            if (personToUpdate.getBornPlace().getPrefFlag().equals("V")) {
                personToUpdate.setBornPlace(
                        getPlaceDAO().findPrinicipalPlace(personToUpdate.getBornPlace().getGeogKey()));
            }
        } else {
            personToUpdate.setBornPlace(null);
        }
        personToUpdate.setBornPlaceUnsure(person.getBornPlaceUnsure());

        if (ObjectUtils.toString(person.getActiveStart()).equals("")) {
            personToUpdate.setActiveStart(null);
        } else {
            personToUpdate.setActiveStart(person.getActiveStart());
        }

        // Death Information
        personToUpdate.setDeathYear(person.getDeathYear());
        if (person.getDeathMonth() != null) {
            personToUpdate.setDeathMonth(getMonthDAO().find(person.getDeathMonth().getMonthNum()));
        } else {
            personToUpdate.setDeathMonth(null);
        }
        personToUpdate.setDeathDay(person.getDeathDay());
        personToUpdate.setDeathDate(DateUtils.getLuceneDate(personToUpdate.getDeathYear(),
                personToUpdate.getDeathMonth(), personToUpdate.getDeathDay()));

        personToUpdate.setDeathApprox(person.getDeathApprox());
        personToUpdate.setDeathDateBc(person.getDeathDateBc());
        if (!ObjectUtils.toString(person.getDeathPlace()).equals("")) {
            personToUpdate.setDeathPlace(getPlaceDAO().find(person.getDeathPlace().getPlaceAllId()));
            if (personToUpdate.getDeathPlace().getPrefFlag().equals("V")) {
                personToUpdate.setDeathPlace(
                        getPlaceDAO().findPrinicipalPlace(personToUpdate.getDeathPlace().getGeogKey()));
            }
        } else {
            personToUpdate.setDeathPlace(null);
        }
        personToUpdate.setDeathPlaceUnsure(person.getDeathPlaceUnsure());

        if (ObjectUtils.toString(person.getActiveEnd()).equals("")) {
            personToUpdate.setActiveEnd(null);
        } else {
            personToUpdate.setActiveEnd(person.getActiveEnd());
        }

        personToUpdate.setLastUpdate(new Date());
        personToUpdate.setLastUpdateBy(user);

        getPeopleDAO().merge(personToUpdate);

        if (searchName != null) {
            searchName.setPerson(personToUpdate);
            getAltNameDAO().persist(searchName);
        }

        getUserHistoryDAO()
                .persist(new UserHistory(user, "Edit details", Action.MODIFY, Category.PEOPLE, personToUpdate));
        getVettingHistoryDAO().persist(
                new VettingHistory(user, "Edit details", org.medici.bia.domain.VettingHistory.Action.MODIFY,
                        org.medici.bia.domain.VettingHistory.Category.PEOPLE, personToUpdate));

        return personToUpdate;
    } catch (Throwable th) {
        throw new ApplicationThrowable(th);
    }
}