Example usage for org.apache.commons.collections4 CollectionUtils isNotEmpty

List of usage examples for org.apache.commons.collections4 CollectionUtils isNotEmpty

Introduction

In this page you can find the example usage for org.apache.commons.collections4 CollectionUtils isNotEmpty.

Prototype

public static boolean isNotEmpty(final Collection<?> coll) 

Source Link

Document

Null-safe check if the specified collection is not empty.

Usage

From source file:org.kuali.coeus.common.budget.impl.period.BudgetPeriodRule.java

private int checkExpenseInBudget(Budget budget) {
    int retVal = 0;
    for (BudgetPeriod budgetPeriod : budget.getBudgetPeriods()) {
        if (CollectionUtils.isNotEmpty(budgetPeriod.getBudgetLineItems())) {
            retVal = budgetPeriod.getBudgetPeriod();
        }//w ww . ja v a  2 s . co m
    }
    return retVal;
}

From source file:org.kuali.coeus.common.budget.impl.personnel.BudgetPersonnelRule.java

/**
 * This method executes the job code change validation rules against the budget document
 * for a specific budget period.//from   ww w  .  j  a  v  a  2 s  . com
 * @return true is valid false if not valid
 * @throws NullPointerException if the budgetDocument is null
 * @throws IllegalArgumentException if the viewBudgetPeriod < 1
 */
@KcEventMethod
public boolean processCheckForJobCodeChange(BudgetSavePersonnelEvent event) {
    if (event.getBudget() == null) {
        throw new NullPointerException("the budgetDocument is null");
    }

    if (event.getCurrentBudgetPeriod() == null) {
        throw new NullPointerException("the currentBudgetPeriod is invalid");
    }

    boolean valid = true;

    GlobalVariables.getMessageMap().addToErrorPath("document");

    final BudgetPeriod selectedBudgetPeriod = event.getCurrentBudgetPeriod();

    final Collection<Integer> budgetPersonSequences = this
            .getBudgetPersonSequencesFromPersonnelDetails(selectedBudgetPeriod.getBudgetLineItems());

    if (CollectionUtils.isNotEmpty(budgetPersonSequences)) {
        int personIndex = 0;
        List<BudgetPerson> budgetPersons = event.getBudget().getBudgetPersons();
        for (BudgetPerson person : budgetPersons) {
            String errorKey = BUDGET_PERSONS_FIELD_NAME_START + personIndex + BUDGET_PERSONS_FIELD_NAME_JOBCODE;
            if (budgetPersonSequences.contains(person.getPersonSequenceNumber())) {
                if (CollectionUtils.isNotEmpty(this.getMappedCostElements(person))) {
                    valid &= this.validateJobCodeChange(person, errorKey);
                } else {
                    valid &= this.validateJobCodeValue(person, errorKey);
                    this.updateJobCodeOnDetailsFromPerson(selectedBudgetPeriod.getBudgetLineItems(), person);
                }
            }
            personIndex++;
        }
    }

    GlobalVariables.getMessageMap().removeFromErrorPath("document");
    return valid;
}

From source file:org.kuali.coeus.common.budget.impl.personnel.BudgetPersonnelRule.java

protected boolean isJobCodeValid(BudgetPerson budgetPerson) {
    if (CollectionUtils.isNotEmpty(getMappedCostElements(budgetPerson))) {
        return validateJobCodeChange(budgetPerson, "jobCode");
    } else {//from  w  w w.jav a 2 s.  c o m
        return validateJobCodeValue(budgetPerson, "jobCode");
    }
}

From source file:org.kuali.coeus.common.budget.impl.personnel.BudgetPersonServiceImpl.java

@SuppressWarnings("unchecked")
@Override/*from   w w  w  .java 2s. c  o  m*/
public String getApplicableCostElementsForAjaxCall(Long budgetId, String personSequenceNumber,
        String budgetCategoryTypeCode) {

    String resultStr = "";

    if (isAuthorizedToAccess(budgetCategoryTypeCode)) {
        if (StringUtils.isNotBlank(budgetCategoryTypeCode)
                && budgetCategoryTypeCode.contains(Constants.COLON)) {
            budgetCategoryTypeCode = StringUtils.split(budgetCategoryTypeCode, Constants.COLON)[0];
        }

        List<ValidCeJobCode> validCostElements = getApplicableCostElements(budgetId, personSequenceNumber);

        if (CollectionUtils.isNotEmpty(validCostElements)) {
            for (ValidCeJobCode validCE : validCostElements) {
                Map fieldValues = new HashMap();
                fieldValues.put("costElement", validCE.getCostElement());
                CostElement costElement = (CostElement) businessObjectService
                        .findByPrimaryKey(CostElement.class, fieldValues);
                resultStr += "," + validCE.getCostElement() + ";" + costElement.getDescription();
            }
            resultStr += ",ceLookup;false";
        } else {
            CostElementValuesFinder ceValuesFinder = new CostElementValuesFinder();
            ceValuesFinder.setBudgetCategoryTypeCode(budgetCategoryTypeCode);
            List<KeyValue> allPersonnelCostElements = ceValuesFinder.getKeyValues();
            for (KeyValue keyValue : allPersonnelCostElements) {
                if (StringUtils.isNotEmpty(keyValue.getKey().toString())) {
                    resultStr += "," + keyValue.getKey() + ";" + keyValue.getValue();
                }
            }
            resultStr += ",ceLookup;true";
        }
    }

    return resultStr;
}

From source file:org.kuali.coeus.common.budget.impl.rate.BudgetRatesServiceImpl.java

protected String getActivityTypeDescription(Budget budget) {
    BudgetParent budgetParent = budget.getBudgetParent();

    if (budget.isRateSynced() || !checkActivityTypeChange(budget)) {
        if (budgetParent.getActivityType() != null) {
            return budgetParent.getActivityType().getDescription().concat(SPACE);
        } else {//from w w w . ja va2s.c  om
            return "";
        }
    } else {
        String activityTypeCode = null;
        if (CollectionUtils.isNotEmpty(budget.getBudgetRates())) {
            activityTypeCode = budget.getBudgetRates().get(0).getActivityTypeCode();
        }

        if (activityTypeCode != null) {
            Map<String, Object> pkMap = new HashMap<>();
            pkMap.put("code", activityTypeCode);
            ActivityType activityType = getBusinessObjectService().findByPrimaryKey(ActivityType.class, pkMap);
            if (activityType == null) {
                return "";
            } else {
                return activityType.getDescription().concat(SPACE);
            }
        } else {
            return "";
        }
    }
}

From source file:org.kuali.coeus.common.budget.impl.rate.BudgetRatesServiceImpl.java

@Override
public boolean checkActivityTypeChange(Collection<BudgetRate> allPropRates, String activityTypeCode) {
    if (CollectionUtils.isNotEmpty(allPropRates)) {
        Equals equalsActivityType = new Equals("activityTypeCode", activityTypeCode);
        QueryList<BudgetRate> matchActivityTypePropRates = new QueryList<>(allPropRates)
                .filter(equalsActivityType);
        if (CollectionUtils.isEmpty(matchActivityTypePropRates)
                || allPropRates.size() != matchActivityTypePropRates.size()) {
            return true;
        }/*from  w ww.  j  a va 2s. c  o m*/
    }

    return false;
}

From source file:org.kuali.coeus.common.budget.impl.struts.BudgetPersonnelAction.java

/**
 * This method is used to add a new Personnel Budget Line Item
 * @param mapping// w  w w  .j  a v a 2s  .  c o m
 * @param form
 * @param request
 * @param response
 * @return mapping forward
 * @throws Exception  
 */
public ActionForward addPersonnelLineItem(ActionMapping mapping, ActionForm form, HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    BudgetForm budgetForm = (BudgetForm) form;
    Budget budget = budgetForm.getBudget();

    Integer budgetCategoryTypeIndex = Integer.parseInt(getBudgetCategoryTypeIndex(request));
    BudgetLineItem newBudgetLineItem = budgetForm.getNewBudgetLineItems().get(budgetCategoryTypeIndex);
    final BudgetPersonnelDetails budgetPersonDetails = budgetForm.getNewBudgetPersonnelDetails();
    budgetPersonDetails.setBudgetId(budget.getBudgetId());
    budgetPersonDetails.setPeriodTypeCode(this.getParameterService().getParameterValueAsString(Budget.class,
            Constants.BUDGET_PERSON_DETAILS_DEFAULT_PERIODTYPE));
    budgetPersonDetails.setCostElement(newBudgetLineItem.getCostElement());
    budgetPersonDetails
            .setBudgetPerson(CollectionUtils.find(budget.getBudgetPersons(), new Predicate<BudgetPerson>() {
                @Override
                public boolean evaluate(BudgetPerson object) {
                    return object != null && object.getBudgetId().equals(budgetPersonDetails.getBudgetId())
                            && object.getPersonSequenceNumber()
                                    .equals(budgetPersonDetails.getPersonSequenceNumber());
                }
            }));
    String groupErrorKey = "";
    if (StringUtils.isNotEmpty(newBudgetLineItem.getGroupName())) {
        groupErrorKey = "newBudgetLineItems[" + budgetCategoryTypeIndex + "].costElement";
    }
    if (StringUtils.isEmpty(newBudgetLineItem.getGroupName())) {
        newBudgetLineItem.setGroupName(budgetForm.getNewGroupName());
        groupErrorKey = "newGroupName";
    }

    //if the group name is empty or still the default group name(JS error?) then set the group name to the empty string.
    if (StringUtils.isEmpty(newBudgetLineItem.getGroupName())
            || StringUtils.equals(newBudgetLineItem.getGroupName(), DEFAULT_GROUP_NAME)) {
        newBudgetLineItem.setGroupName(EMPTY_GROUP_NAME);
    }

    if (getKcBusinessRulesEngine().applyRules(
            new AddPersonnelBudgetEvent(budget, budget.getBudgetPeriod(budgetForm.getViewBudgetPeriod() - 1),
                    newBudgetLineItem, budgetPersonDetails, groupErrorKey))) {
        Map<String, Object> primaryKeys = new HashMap<String, Object>();
        primaryKeys.put("budgetId", budget.getBudgetId());
        primaryKeys.put("budgetPeriod", budgetForm.getViewBudgetPeriod().toString());
        List<BudgetPeriod> budgetPeriods = (List<BudgetPeriod>) getBusinessObjectService()
                .findMatching(BudgetPeriod.class, primaryKeys);
        BudgetPeriod budgetPeriod = null;
        if (CollectionUtils.isNotEmpty(budgetPeriods)) {
            budgetPeriod = budgetPeriods.get(0);
        }

        BudgetCategory newBudgetCategory = new BudgetCategory();
        newBudgetCategory.setBudgetCategoryTypeCode(getSelectedBudgetCategoryType(request));
        newBudgetCategory.refreshNonUpdateableReferences();

        boolean existingCeGroupCombo = false;
        int openTabLineItemIndex = -1;

        List<BudgetLineItem> existingPersonnelLineItems = new ArrayList<BudgetLineItem>();
        List<BudgetLineItem> existingLineItems = budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1)
                .getBudgetLineItems();

        if (GlobalVariables.getMessageMap().hasNoErrors()) {
            for (BudgetLineItem budgetLineItem : existingLineItems) {
                budgetLineItem.refreshNonUpdateableReferences();
                if (budgetLineItem.getBudgetCategory().getBudgetCategoryTypeCode()
                        .equalsIgnoreCase(newBudgetCategory.getBudgetCategoryTypeCode())) {
                    existingPersonnelLineItems.add(budgetLineItem);
                    if (newBudgetLineItem.getCostElement().equalsIgnoreCase(budgetLineItem.getCostElement())
                            && (StringUtils.equals(newBudgetLineItem.getGroupName(),
                                    budgetLineItem.getGroupName())
                                    || (StringUtils.isEmpty(newBudgetLineItem.getGroupName())
                                            && StringUtils.isEmpty(budgetLineItem.getGroupName())))) {
                        //Existing ObjCode / Group Name combo - add the new Person to the Line Item's Person List
                        if (budgetPersonDetails.getPersonSequenceNumber().intValue() != -1) {
                            //This is NOT a Summary entry
                            if (getKcBusinessRulesEngine().applyRules(new AddPersonnelLineItemBudgetEvent(
                                    budget, "newBudgetPersonnelDetails", budgetLineItem))) {
                                addBudgetPersonnelDetails(budgetForm, budgetPeriod, budgetLineItem,
                                        budgetPersonDetails);
                            }
                        } else if (!getKcBusinessRulesEngine()
                                .applyRules(new AddSummaryPersonnelLineItemBudgetEvent(budget,
                                        "newBudgetPersonnelDetails", budgetLineItem))) {
                            existingCeGroupCombo = true;
                            break;
                        }

                        openTabLineItemIndex = budgetLineItem.getLineItemNumber();
                        setLineItemQuantity(budgetLineItem);
                        //set some flag to indicate path of progress
                        existingCeGroupCombo = true;
                        break;
                    }
                }
            }

            //If flag not set, then create a new Budget Line Item - ObjCode / Group Name combo is new
            if (!existingCeGroupCombo) {
                newBudgetLineItem.setBudgetPeriod(budgetPeriod.getBudgetPeriod());
                newBudgetLineItem.setBudgetPeriodId(budgetPeriod.getBudgetPeriodId());
                newBudgetLineItem.setBudgetPeriodBO(budgetPeriod);
                newBudgetLineItem.setBudgetCategory(newBudgetCategory);

                newBudgetLineItem.setStartDate(
                        budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1).getStartDate());
                newBudgetLineItem
                        .setEndDate(budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1).getEndDate());
                newBudgetLineItem.setStartDate(newBudgetLineItem.getStartDate());
                newBudgetLineItem.setEndDate(newBudgetLineItem.getEndDate());

                newBudgetLineItem.setBudgetId(budget.getBudgetId());
                newBudgetLineItem.setLineItemNumber(budgetForm.getBudgetDocument()
                        .getHackedDocumentNextValue(Constants.BUDGET_LINEITEM_NUMBER));
                newBudgetLineItem.setApplyInRateFlag(true);
                newBudgetLineItem.refreshReferenceObject("costElementBO");

                // on/off campus flag enhancement
                String onOffCampusFlag = budget.getOnOffCampusFlag();
                if (onOffCampusFlag.equalsIgnoreCase(BudgetConstants.DEFAULT_CAMPUS_FLAG)) {
                    newBudgetLineItem
                            .setOnOffCampusFlag(newBudgetLineItem.getCostElementBO().getOnOffCampusFlag());
                } else {
                    newBudgetLineItem
                            .setOnOffCampusFlag(onOffCampusFlag.equalsIgnoreCase(Constants.ON_CAMUS_FLAG));
                }
                newBudgetLineItem
                        .setBudgetCategoryCode(newBudgetLineItem.getCostElementBO().getBudgetCategoryCode());
                newBudgetLineItem.setLineItemSequence(newBudgetLineItem.getLineItemNumber());

                if (budgetPersonDetails.getPersonSequenceNumber().intValue() != -1) {
                    addBudgetPersonnelDetails(budgetForm, budgetPeriod, newBudgetLineItem, budgetPersonDetails);
                }
                setLineItemQuantity(newBudgetLineItem);

                budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1).getBudgetLineItems()
                        .add(newBudgetLineItem);
                recalculateBudgetPeriod(budgetForm, budget,
                        budget.getBudgetPeriod(budgetPeriod.getBudgetPeriod() - 1));
                getCalculationService().populateCalculatedAmount(budget, newBudgetLineItem);
                openTabLineItemIndex = newBudgetLineItem.getLineItemNumber();
            }

            BudgetLineItem newLineItemToAdd = budget.getNewBudgetLineItem();
            budgetForm.getNewBudgetLineItems().set(budgetCategoryTypeIndex, newLineItemToAdd);
            request.setAttribute("openTabLineItemIndex", openTabLineItemIndex);
            budgetForm.setNewBudgetPersonnelDetails(newLineItemToAdd.getNewBudgetPersonnelLineItem());
        }
    }

    return mapping.findForward(Constants.MAPPING_BASIC);
}

From source file:org.kuali.coeus.common.budget.impl.summary.BudgetSummaryServiceImpl.java

@Override
public String defaultWarningMessage(Budget budget) {
    List<BudgetPeriod> budgetPeriods = generateBudgetPeriods(budget);
    boolean dateChanged = false;
    boolean deletePeriodWithLineItem = false;

    for (BudgetPeriod budgetPeriod : budget.getBudgetPeriods()) {
        if (budgetPeriod.getBudgetPeriod() <= budgetPeriods.size()) {
            if (CollectionUtils.isNotEmpty(budgetPeriod.getBudgetLineItems()) && (budgetPeriod.getStartDate()
                    .compareTo(budgetPeriods.get(budgetPeriod.getBudgetPeriod() - 1).getStartDate()) != 0
                    || budgetPeriod.getEndDate().compareTo(
                            budgetPeriods.get(budgetPeriod.getBudgetPeriod() - 1).getEndDate()) != 0)) {
                dateChanged = true;//from   w  w w. j  a  va 2 s. c o  m
            }
        } else {
            if (CollectionUtils.isNotEmpty(budgetPeriod.getBudgetLineItems())) {
                deletePeriodWithLineItem = true;
            }
        }
    }

    if (dateChanged) {
        if (deletePeriodWithLineItem) {
            return BUDGET_DATE_CHANGE_AND_DELETE_WARNING_MSG;
        } else {
            return BUDGET_DATE_CHANGE_WARNING_MSG;
        }
    } else {
        if (deletePeriodWithLineItem) {
            return BUDGET_PERIOD_DELETE_WARNING_MSG;
        } else {
            return Constants.EMPTY_STRING;
        }

    }

}

From source file:org.kuali.coeus.common.committee.impl.bo.CommitteeBase.java

public String getCommitteeChair() {
    if (StringUtils.isBlank(committeeChair) && CollectionUtils.isNotEmpty(getCommitteeMemberships())) {
        List<String> committeeChairs = new ArrayList<String>();
        for (CommitteeMembershipBase committeeMembership : getCommitteeMemberships()) {
            if (isChairPerson(committeeMembership)) {
                committeeChairs.add(committeeMembership.getPersonName());
            }/*from   w  w  w . ja  va2s  . c om*/
            setCommitteeChair(committeeChairs.toString());
        }
    }
    return committeeChair;
}

From source file:org.kuali.coeus.common.committee.impl.bo.CommitteeScheduleBase.java

public boolean hasMeetingData() {
    boolean retVal = false;
    retVal = retVal || CollectionUtils.isNotEmpty(this.getCommitteeScheduleAttendances());
    retVal = retVal || CollectionUtils.isNotEmpty(this.getCommitteeScheduleMinutes());
    retVal = retVal || CollectionUtils.isNotEmpty(this.getCommScheduleActItems());
    retVal = retVal || CollectionUtils.isNotEmpty(this.getMinuteDocs());
    retVal = retVal || CollectionUtils.isNotEmpty(this.getScheduleAgendas());
    retVal = retVal || CollectionUtils.isNotEmpty(this.getLatestProtocolSubmissions());
    return retVal;
}