Example usage for org.springframework.beans BeanUtils copyProperties

List of usage examples for org.springframework.beans BeanUtils copyProperties

Introduction

In this page you can find the example usage for org.springframework.beans BeanUtils copyProperties.

Prototype

public static void copyProperties(Object source, Object target, String... ignoreProperties)
        throws BeansException 

Source Link

Document

Copy the property values of the given source bean into the given target bean, ignoring the given "ignoreProperties".

Usage

From source file:com.gallatinsystems.survey.dao.SurveyUtils.java

public static void saveTranslationCopy(List<Translation> trs, Long newParentId, Long newSurveyId,
        Long newQuestionGroupId) {
    final TranslationDao trDao = new TranslationDao();
    for (Translation t : trs) {
        Translation copy = new Translation();
        BeanUtils.copyProperties(t, copy, Constants.EXCLUDED_PROPERTIES);
        copy.setParentId(newParentId);//from  www .  jav a  2s. co  m
        copy.setQuestionGroupId(newQuestionGroupId);
        copy.setSurveyId(newSurveyId);
        trDao.save(copy);
    }
}

From source file:org.syncope.core.rest.data.ResourceDataBinder.java

private SchemaMapping getSchemaMapping(ExternalResource resource, SchemaMappingTO mappingTO)
        throws SyncopeClientCompositeErrorException {

    SyncopeClientCompositeErrorException compositeErrorException = new SyncopeClientCompositeErrorException(
            HttpStatus.BAD_REQUEST);//ww  w .  j ava  2  s  .c o  m

    SyncopeClientException requiredValuesMissing = new SyncopeClientException(
            SyncopeClientExceptionType.RequiredValuesMissing);

    // this control needs to be free to get schema names
    // without a complete/good resourceTO object
    if (mappingTO == null || mappingTO.getIntMappingType() == null) {
        LOG.error("Null mappingTO provided");
        return null;
    }

    if (mappingTO.getIntAttrName() == null) {
        switch (mappingTO.getIntMappingType()) {
        case SyncopeUserId:
            mappingTO.setIntAttrName(IntMappingType.SyncopeUserId.toString());
            break;

        case Password:
            mappingTO.setIntAttrName(IntMappingType.Password.toString());
            break;

        case Username:
            mappingTO.setIntAttrName(IntMappingType.Username.toString());
            break;

        default:
            requiredValuesMissing.addElement("intAttrName");
        }
    }

    // Throw composite exception if there is at least one element set
    // in the composing exceptions
    if (!requiredValuesMissing.isEmpty()) {
        compositeErrorException.addException(requiredValuesMissing);
    }

    // no mandatory condition implies mandatory condition false
    if (!jexlUtil.isExpressionValid(
            mappingTO.getMandatoryCondition() != null ? mappingTO.getMandatoryCondition() : "false")) {

        SyncopeClientException invalidMandatoryCondition = new SyncopeClientException(
                SyncopeClientExceptionType.InvalidValues);
        invalidMandatoryCondition.addElement(mappingTO.getMandatoryCondition());

        compositeErrorException.addException(invalidMandatoryCondition);
    }

    if (compositeErrorException.hasExceptions()) {
        throw compositeErrorException;
    }

    SchemaMapping mapping = new SchemaMapping();

    BeanUtils.copyProperties(mappingTO, mapping, MAPPING_IGNORE_PROPERTIES);

    mapping.setResource(resource);

    return mapping;
}

From source file:org.syncope.core.rest.data.ResourceDataBinder.java

public SchemaMappingTO getSchemaMappingTO(SchemaMapping schemaMapping) {
    if (schemaMapping == null) {
        LOG.error("Provided null mapping");

        return null;
    }//from   w ww  .jav a  2s  .co m

    SchemaMappingTO schemaMappingTO = new SchemaMappingTO();

    BeanUtils.copyProperties(schemaMapping, schemaMappingTO, MAPPING_IGNORE_PROPERTIES);

    schemaMappingTO.setId(schemaMapping.getId());

    LOG.debug("Obtained SchemaMappingTO {}", schemaMappingTO);

    return schemaMappingTO;
}

From source file:com.dp2345.controller.admin.ShopController.java

/**
 * /*from   w w  w. j  a va2 s .  c om*/
 */
@RequestMapping(value = "/update", method = RequestMethod.POST)
public String update(Shop shop, Long shopRankId, Integer modifyPoint, BigDecimal modifyBalance,
        String depositMemo, HttpServletRequest request, RedirectAttributes redirectAttributes) {
    shop.setShopRank(shopRankService.find(shopRankId));
    if (!isValid(shop)) {
        return ERROR_VIEW;
    }
    Setting setting = SettingUtils.get();

    Shop pShop = shopService.find(shop.getId());
    if (pShop == null) {
        return ERROR_VIEW;
    }
    if (!setting.getIsDuplicateEmail() && !shopService.emailUnique(pShop.getEmail(), shop.getEmail())) {
        return ERROR_VIEW;
    }
    shop.removeAttributeValue();
    for (ShopAttribute shopAttribute : shopAttributeService.findList()) {
        String parameter = request.getParameter("shopAttribute_" + shopAttribute.getId());
        if (shopAttribute.getType() == Type.name || shopAttribute.getType() == Type.address
                || shopAttribute.getType() == Type.zipCode || shopAttribute.getType() == Type.phone
                || shopAttribute.getType() == Type.mobile || shopAttribute.getType() == Type.text
                || shopAttribute.getType() == Type.select) {
            if (shopAttribute.getIsRequired() && StringUtils.isEmpty(parameter)) {
                return ERROR_VIEW;
            }
            shop.setAttributeValue(shopAttribute, parameter);
        } else if (shopAttribute.getType() == Type.birth) {
            try {
                Date birth = StringUtils.isNotEmpty(parameter)
                        ? DateUtils.parseDate(parameter, CommonAttributes.DATE_PATTERNS)
                        : null;
                if (shopAttribute.getIsRequired() && birth == null) {
                    return ERROR_VIEW;
                }
                shop.setBirth(birth);
            } catch (ParseException e) {
                return ERROR_VIEW;
            }
        } else if (shopAttribute.getType() == Type.area) {
            Area area = StringUtils.isNotEmpty(parameter) ? areaService.find(Long.valueOf(parameter)) : null;
            if (area != null) {
                shop.setArea(area);
            } else if (shopAttribute.getIsRequired()) {
                return ERROR_VIEW;
            }
        } else if (shopAttribute.getType() == Type.checkbox) {
            String[] parameterValues = request.getParameterValues("shopAttribute_" + shopAttribute.getId());
            List<String> options = parameterValues != null ? Arrays.asList(parameterValues) : null;
            if (shopAttribute.getIsRequired() && (options == null || options.isEmpty())) {
                return ERROR_VIEW;
            }
            shop.setAttributeValue(shopAttribute, options);
        }
    }

    BeanUtils.copyProperties(shop, pShop,
            new String[] { "username", "point", "amount", "balance", "registerIp", "loginIp", "loginDate",
                    "safeKey", "cart", "orders", "deposits", "payments", "couponCodes", "receivers", "reviews",
                    "consultations", "favoriteProducts", "productNotifies", "inMessages", "outMessages" });
    shopService.update(pShop, modifyPoint, modifyBalance, depositMemo, adminService.getCurrent());
    addFlashMessage(redirectAttributes, SUCCESS_MESSAGE);
    return "redirect:list.jhtml";
}

From source file:org.quartz.GWTQuartzManager.server.GWTQuartzSchedulerImpl.java

@Override
public GWTJobDetail getJobDetail(GWTKey jobKey) throws GWTSchedulerException {
    JobDetail jobDetail;//from ww w .j  a v a 2  s .  c  om
    JobKey key = new JobKey(jobKey.getName(), jobKey.getGroup());
    try {
        jobDetail = delegate.getJobDetail(key);
    } catch (SchedulerException e) {
        throw new GWTSchedulerException(e.getMessage());
    }
    if (jobDetail == null)
        return null;
    else {
        GWTJobDetail result = new GWTJobDetail();
        BeanUtils.copyProperties(jobDetail, result, new String[] { "key", "jobDataMap" });
        result.setKey(new GWTKey(jobDetail.getKey().getName(), jobDetail.getKey().getGroup()));
        for (Entry<String, Object> jobDataEntry : jobDetail.getJobDataMap().entrySet()) {
            result.getJobDataMapEntryList()
                    .add(new Pair(jobDataEntry.getKey(), jobDataEntry.getValue().toString()));
        }
        return result;
    }
}

From source file:com.foya.noms.service.st.ST009Service.java

/**
 * siteBuildApply/*from  ww w.  j ava 2  s. c  o m*/
 * 
 * @param siteBuildApply
 * @return
 */
@Transactional
public void update(SiteBuildApplyDTO siteBuildApply, String[] orderIdArray, String mdUser, String siteStatus)
        throws UpdateFailException, Exception {
    Date mdTime = new Date();
    String workId = siteBuildApply.getWorkId();
    for (String orderId : orderIdArray) {
        log.debug("orderIdArray : " + orderId);
    }

    // 
    TbSiteMain main = siteMainDao.findByPk(siteBuildApply.getSiteId());
    TbSiteWork siteWorkTarget = workDao.findByPk(workId);
    TbSiteWork siteWork = this.getSiteWorkBySiteBuildApplyDTO(siteBuildApply, workId);
    siteWork.setMD_USER(mdUser);
    siteWork.setMD_TIME(mdTime);
    siteWork.setEQP_MODEL_ID(main.getEQP_MODEL_ID());
    siteWork.setCOVERAGE_TYPE(main.getCOVERAGE_TYPE());
    siteWork.setBTS_CONFIG(main.getBTS_CONFIG());
    siteWork.setDONOR_SITE(main.getDONOR_SITE());
    siteWork.setFEEDERLESS(main.getFEEDERLESS());
    siteWork.setMASTER_SITE(main.getMASTER_SITE());
    siteWork.setOS_TYPE(PurchaseOrderType.P.name());
    String[] ignoreProperties = { "WORK_TYPE", "CR_USER", "CR_TIME", "APP_DEPT", "APL_USER", "APL_TIME",
            "END_TIME", "SR_ID", "SR_COVER_RANG", "END_DATE", "CPL_NO", "PERMIT_NO", "LICENSE_NO" };
    BeanUtils.copyProperties(siteWork, siteWorkTarget, ignoreProperties);
    int siteWorkItem = workDao.update(siteWorkTarget);
    if (siteWorkItem == 0) {
        log.error("siteWorkItem update count= " + siteWorkItem + " , workId = " + siteWork.getWORK_ID());
        throw new UpdateFailException("");
    }

    // 
    if (orderIdArray != null) {
        TbSiteWorkOrderExample example = new TbSiteWorkOrderExample();
        example.createCriteria().andWORK_IDEqualTo(workId);
        List<TbSiteWorkOrder> workOrderList = workOrderDao.findByConditions(example);
        List<String> orderIdList_source = new ArrayList<String>();
        for (TbSiteWorkOrder workOrder : workOrderList) {
            orderIdList_source.add(workOrder.getORDER_ID());
        }
        List<String> orderIdList_target = new ArrayList<String>();
        //???isActive=Y
        for (String orderId : orderIdArray) {
            TbSiteWorkOrder siteWorkOrder = workOrderDao.findOrderByPk(orderId);
            siteWorkOrder.setIS_ACTIVE("Y");
            siteWorkOrder.setORDER_ID(orderId);
            siteWorkOrder.setPRIORITY(siteBuildApply.getPriority());
            siteWorkOrder.setMD_USER(mdUser);
            siteWorkOrder.setMD_TIME(mdTime);
            siteWorkOrder.setORDER_TYPE(siteBuildApply.getSiteOrderType());
            int workOrderItem = workOrderDao.updateSelective(siteWorkOrder);
            if (workOrderItem == 0) {
                log.error("workOrderItem update count= " + workOrderItem + " , orderId = "
                        + siteWorkOrder.getORDER_ID());
                throw new UpdateFailException("");
            }
            orderIdList_target.add(orderId);
        }
        //DB??isActive=N
        List<String> orderIdList_isNotActive = new ArrayList<String>(orderIdList_source);
        orderIdList_isNotActive.removeAll(orderIdList_target);
        //???isActive=N
        if (orderIdList_isNotActive.size() > 0) {
            for (String orderId : orderIdList_isNotActive) {
                TbSiteWorkOrder siteWorkOrder = workOrderDao.findOrderByPk(orderId);
                siteWorkOrder.setIS_ACTIVE("N");
                siteWorkOrder.setORDER_ID(orderId);
                siteWorkOrder.setPRIORITY(siteBuildApply.getPriority());
                siteWorkOrder.setMD_USER(mdUser);
                siteWorkOrder.setMD_TIME(mdTime);
                int workOrderItem = workOrderDao.updateSelective(siteWorkOrder);
                if (workOrderItem == 0) {
                    log.error("workOrderItem update count= " + workOrderItem + " , orderId = "
                            + siteWorkOrder.getORDER_ID());
                    throw new UpdateFailException("");
                }
            }
        }
    }
    // ?
    TbSiteMain siteMain = this.getSiteMainBySiteWork(siteWork, mdTime, siteStatus);
    int mainItem = 0;
    siteMain.setMD_USER(mdUser);
    siteMain.setMD_TIME(mdTime);
    mainItem = siteMainDao.update(siteMain);
    if (mainItem == 0) {
        log.error("mainItem update count= " + mainItem + " , siteId = " + siteMain.getSITE_ID());
        throw new UpdateFailException("");
    }
}

From source file:com.foya.noms.service.st.ST004Service.java

/**
 * siteBuildApply/*from   ww  w  .j  a v  a 2s. co m*/
 * 
 * @param siteBuildApply
 * @return
 */
@Transactional
public void update(SiteBuildApplyDTO siteBuildApply, String[] orderIdArray, String mdUser, String siteStatus)
        throws UpdateFailException, Exception {
    Date mdTime = new Date();
    TownDomainTeamDTO domainTeam = null;
    boolean hasChangeDomain = false;
    String workId = siteBuildApply.getWorkId();
    TbSiteWork siteWorkTarget = workDao.findByPk(workId);

    // ?????? add by Charlie 20150415
    if (!StringUtils.equals(siteBuildApply.getAREA(), siteWorkTarget.getAREA())) {
        hasChangeDomain = true;
        domainTeam = townDomainTeamDao.getTownDomainTeamByCityIdTownId(siteBuildApply.getCITY(),
                siteBuildApply.getAREA());
    }

    // 
    TbSiteWork siteWork = this.getSiteWorkBySiteBuildApplyDTO(siteBuildApply, workId);
    siteWork.setMD_USER(mdUser);
    siteWork.setMD_TIME(mdTime);
    String[] ignoreProperties = { "WORK_TYPE", "CR_USER", "CR_TIME", "APP_DEPT", "APL_USER", "APL_TIME",
            "END_TIME", "SR_ID", "SR_COVER_RANG", "END_DATE", "CPL_NO", "PERMIT_NO", "LICENSE_NO" };
    BeanUtils.copyProperties(siteWork, siteWorkTarget, ignoreProperties);
    int siteWorkItem = workDao.update(siteWorkTarget);
    if (siteWorkItem == 0) {
        log.error("siteWorkItem update count= " + siteWorkItem + " , workId = " + siteWork.getWORK_ID());
        throw new UpdateFailException("");
    }

    // 
    if (orderIdArray != null) {
        TbSiteWorkOrderExample example = new TbSiteWorkOrderExample();
        example.createCriteria().andWORK_IDEqualTo(workId);
        List<TbSiteWorkOrder> workOrderList = workOrderDao.findByConditions(example);
        List<String> orderIdList_source = new ArrayList<String>();
        for (TbSiteWorkOrder workOrder : workOrderList) {
            orderIdList_source.add(workOrder.getORDER_ID());

            if (hasChangeDomain) { // ?DOMAIN??? add by Charlie 20150415
                String deptKey = orderTypeService.getOrdersDeptKey(workOrder.getORDER_TYPE(),
                        domainTeam.getDOMAIN(), siteWorkTarget.getEQP_TYPE_ID());
                TbOrgDept newNept = orderTypeService.getOrderTypeForWorkArea(deptKey, domainTeam);
                workOrder.setREP_DEPT(newNept.getDEPT_ID());
                workOrderDao.updateSelective(workOrder);
            }
        }
        List<String> orderIdList_target = new ArrayList<String>();
        //???isActive=Y
        for (String orderId : orderIdArray) {
            TbSiteWorkOrder siteWorkOrder = workOrderDao.findOrderByPk(orderId);
            siteWorkOrder.setIS_ACTIVE("Y");
            siteWorkOrder.setORDER_ID(orderId);
            siteWorkOrder.setPRIORITY(siteBuildApply.getPriority());
            siteWorkOrder.setMD_USER(mdUser);
            siteWorkOrder.setMD_TIME(mdTime);
            int workOrderItem = workOrderDao.updateSelective(siteWorkOrder);
            if (workOrderItem == 0) {
                log.error("workOrderItem update count= " + workOrderItem + " , orderId = "
                        + siteWorkOrder.getORDER_ID());
                throw new UpdateFailException("");
            }
            orderIdList_target.add(orderId);
        }
        //DB??isActive=N
        List<String> orderIdList_isNotActive = new ArrayList<String>(orderIdList_source);
        orderIdList_isNotActive.removeAll(orderIdList_target);
        //???isActive=N
        if (orderIdList_isNotActive.size() > 0) {
            for (String orderId : orderIdList_isNotActive) {
                TbSiteWorkOrder siteWorkOrder = workOrderDao.findOrderByPk(orderId);
                siteWorkOrder.setIS_ACTIVE("N");
                siteWorkOrder.setORDER_ID(orderId);
                siteWorkOrder.setPRIORITY(siteBuildApply.getPriority());
                siteWorkOrder.setMD_USER(mdUser);
                siteWorkOrder.setMD_TIME(mdTime);
                int workOrderItem = workOrderDao.updateSelective(siteWorkOrder);
                if (workOrderItem == 0) {
                    log.error("workOrderItem update count= " + workOrderItem + " , orderId = "
                            + siteWorkOrder.getORDER_ID());
                    throw new UpdateFailException("");
                }
            }
        }
    }

    // ?
    TbSiteMain siteMain = this.getSiteMainBySiteWork(siteWork, mdTime, siteStatus);
    int mainItem = 0;
    siteMain.setMD_USER(mdUser);
    siteMain.setMD_TIME(mdTime);
    mainItem = siteMainDao.update(siteMain);
    if (mainItem == 0) {
        log.error("mainItem update count= " + mainItem + " , siteId = " + siteMain.getSITE_ID());
        throw new UpdateFailException("");
    }

}

From source file:org.quartz.GWTQuartzManager.server.GWTQuartzSchedulerImpl.java

private GWTTrigger convertToGWTTrigger(Trigger trigger) {
    GWTTrigger gwtTrigger;/*from ww  w  .  j av a  2 s.  com*/
    if (trigger instanceof CronTrigger) {
        gwtTrigger = new GWTCronTrigger();
    } else {
        gwtTrigger = new GWTTrigger();
    }

    BeanUtils.copyProperties(trigger, gwtTrigger, new String[] { "key", "jobKey" });
    gwtTrigger.setKey(new GWTKey(trigger.getKey().getName(), trigger.getKey().getGroup()));
    gwtTrigger.setJobKey(new GWTKey(trigger.getJobKey().getName(), trigger.getJobKey().getGroup()));
    String state = GWTTrigger.TriggerState.NONE.name();
    try {
        state = delegate.getTriggerState(trigger.getKey()).name();
    } catch (SchedulerException e) {
    }
    ;

    for (Entry<String, Object> jobDataEntry : trigger.getJobDataMap().entrySet()) {
        gwtTrigger.getJobDataMapEntryList()
                .add(new Pair(jobDataEntry.getKey(), jobDataEntry.getValue().toString()));
    }
    gwtTrigger.setState(state);
    return gwtTrigger;
}

From source file:net.groupbuy.controller.admin.MemberController.java

/**
 * /* www . ja  v  a2s. c  o m*/
 */
@RequestMapping(value = "/update", method = RequestMethod.POST)
public String update(Member member, Long memberRankId, Integer modifyPoint, BigDecimal modifyBalance,
        String depositMemo, HttpServletRequest request, RedirectAttributes redirectAttributes) {
    member.setMemberRank(memberRankService.find(memberRankId));
    if (!isValid(member)) {
        return ERROR_VIEW;
    }
    Setting setting = SettingUtils.get();
    if (member.getPassword() != null && (member.getPassword().length() < setting.getPasswordMinLength()
            || member.getPassword().length() > setting.getPasswordMaxLength())) {
        return ERROR_VIEW;
    }
    Member pMember = memberService.find(member.getId());
    if (pMember == null) {
        return ERROR_VIEW;
    }
    if (!setting.getIsDuplicateEmail() && !memberService.emailUnique(pMember.getEmail(), member.getEmail())) {
        return ERROR_VIEW;
    }
    member.removeAttributeValue();
    for (MemberAttribute memberAttribute : memberAttributeService.findList()) {
        String parameter = request.getParameter("memberAttribute_" + memberAttribute.getId());
        if (memberAttribute.getType() == Type.name || memberAttribute.getType() == Type.address
                || memberAttribute.getType() == Type.zipCode || memberAttribute.getType() == Type.phone
                || memberAttribute.getType() == Type.mobile || memberAttribute.getType() == Type.text
                || memberAttribute.getType() == Type.select) {
            if (memberAttribute.getIsRequired() && StringUtils.isEmpty(parameter)) {
                return ERROR_VIEW;
            }
            member.setAttributeValue(memberAttribute, parameter);
        } else if (memberAttribute.getType() == Type.gender) {
            Gender gender = StringUtils.isNotEmpty(parameter) ? Gender.valueOf(parameter) : null;
            if (memberAttribute.getIsRequired() && gender == null) {
                return ERROR_VIEW;
            }
            member.setGender(gender);
        } else if (memberAttribute.getType() == Type.birth) {
            try {
                Date birth = StringUtils.isNotEmpty(parameter)
                        ? DateUtils.parseDate(parameter, CommonAttributes.DATE_PATTERNS)
                        : null;
                if (memberAttribute.getIsRequired() && birth == null) {
                    return ERROR_VIEW;
                }
                member.setBirth(birth);
            } catch (ParseException e) {
                return ERROR_VIEW;
            }
        } else if (memberAttribute.getType() == Type.area) {
            Area area = StringUtils.isNotEmpty(parameter) ? areaService.find(Long.valueOf(parameter)) : null;
            if (area != null) {
                member.setArea(area);
            } else if (memberAttribute.getIsRequired()) {
                return ERROR_VIEW;
            }
        } else if (memberAttribute.getType() == Type.checkbox) {
            String[] parameterValues = request.getParameterValues("memberAttribute_" + memberAttribute.getId());
            List<String> options = parameterValues != null ? Arrays.asList(parameterValues) : null;
            if (memberAttribute.getIsRequired() && (options == null || options.isEmpty())) {
                return ERROR_VIEW;
            }
            member.setAttributeValue(memberAttribute, options);
        }
    }
    if (StringUtils.isEmpty(member.getPassword())) {
        member.setPassword(pMember.getPassword());
    } else {
        member.setPassword(DigestUtils.md5Hex(member.getPassword()));
    }
    if (pMember.getIsLocked() && !member.getIsLocked()) {
        member.setLoginFailureCount(0);
        member.setLockedDate(null);
    } else {
        member.setIsLocked(pMember.getIsLocked());
        member.setLoginFailureCount(pMember.getLoginFailureCount());
        member.setLockedDate(pMember.getLockedDate());
    }

    BeanUtils.copyProperties(member, pMember,
            new String[] { "username", "point", "amount", "balance", "registerIp", "loginIp", "loginDate",
                    "safeKey", "cart", "orders", "deposits", "payments", "couponCodes", "receivers", "reviews",
                    "consultations", "favoriteProducts", "productNotifies", "inMessages", "outMessages" });
    memberService.update(pMember, modifyPoint, modifyBalance, depositMemo, adminService.getCurrent());
    addFlashMessage(redirectAttributes, SUCCESS_MESSAGE);
    return "redirect:list.jhtml";
}

From source file:org.syncope.core.rest.data.UserDataBinder.java

@Transactional(readOnly = true)
public UserTO getUserTO(final SyncopeUser user) {
    UserTO userTO = new UserTO();

    BeanUtils.copyProperties(user, userTO, IGNORE_USER_PROPERTIES);

    fillTO(userTO, user.getAttributes(), user.getDerivedAttributes(), user.getVirtualAttributes(),
            user.getResources());//from  w  w w .j  a va  2s  .  co m

    MembershipTO membershipTO;
    for (Membership membership : user.getMemberships()) {
        membershipTO = new MembershipTO();
        membershipTO.setId(membership.getId());
        membershipTO.setRoleId(membership.getSyncopeRole().getId());
        membershipTO.setRoleName(membership.getSyncopeRole().getName());

        fillTO(membershipTO, membership.getAttributes(), membership.getDerivedAttributes(),
                membership.getVirtualAttributes(), membership.getResources());

        userTO.addMembership(membershipTO);
    }

    return userTO;
}