Example usage for org.apache.commons.lang StringUtils substringBetween

List of usage examples for org.apache.commons.lang StringUtils substringBetween

Introduction

In this page you can find the example usage for org.apache.commons.lang StringUtils substringBetween.

Prototype

public static String substringBetween(String str, String open, String close) 

Source Link

Document

Gets the String that is nested in between two Strings.

Usage

From source file:org.kuali.kra.irb.correspondence.ProtocolCorrespondenceTemplateAction.java

/**
 * This method returns the index of the selected correspondence template.
 * @param request// w  ww.j av a2s.  com
 * @return index
 */
protected int getSelectedCorrespondenceTemplate(HttpServletRequest request) {
    int index = -1;
    String parameterName = (String) request.getAttribute(KNSConstants.METHOD_TO_CALL_ATTRIBUTE);
    if (StringUtils.isNotBlank(parameterName)) {
        index = Integer.parseInt(StringUtils.substringBetween(parameterName, "correspondenceTemplate[", "]"));
    }
    return index;
}

From source file:org.kuali.kra.lookup.CustomAttributeLookupHelperServiceImpl.java

/**
 * Because the search results is using descriptive name, we need to reverse to use code in href. 
 * @see org.kuali.rice.kns.lookup.AbstractLookupableHelperServiceImpl#getCustomActionUrls(org.kuali.rice.kns.bo.BusinessObject, java.util.List)
 *//*from  ww w .ja va 2s . c om*/
@Override
public List<HtmlData> getCustomActionUrls(BusinessObject businessObject, List pkNames) {
    List<HtmlData> htmlDataList = super.getCustomActionUrls(businessObject, pkNames);
    Map<String, String> documentTypes = getReverseDocumentTypeMap();
    for (HtmlData htmlData : htmlDataList) {
        if (StringUtils.isNotBlank(((AnchorHtmlData) htmlData).getHref())) {
            String docType = StringUtils.substringBetween(((AnchorHtmlData) htmlData).getHref(),
                    "documentTypeName=", "&");
            if (StringUtils.isNotBlank(docType) && documentTypes.containsKey(docType)) {
                ((AnchorHtmlData) htmlData).setHref(
                        ((AnchorHtmlData) htmlData).getHref().replace(docType, documentTypes.get(docType)));
            }
        }

    }
    return htmlDataList;
}

From source file:org.kuali.kra.lookup.KraDocSearchCriteriaDTOLookupableHelperServiceImpl.java

protected void generateColumnAnchor(Collection resultTable) {
    for (ResultRow resultRow : (List<ResultRow>) resultTable) {
        for (Column column : resultRow.getColumns()) {
            if (column.getPropertyName().equals("copyDocument") && column.getColumnAnchor() != null) {
                AnchorHtmlData anchor = (AnchorHtmlData) column.getColumnAnchor();
                String docId = StringUtils.substringBetween(column.getPropertyValue(), "docId=", "&");
                anchor.setHref(StringUtils.substringBetween(column.getPropertyValue(), "<a href=\"", "docId=")
                        + "docId=" + docId);
                column.setColumnAnchor(anchor);
            }//from   w  w w.  j a  va  2  s .co  m
        }
    }
}

From source file:org.kuali.kra.proposaldevelopment.web.struts.action.ProposalDevelopmentAction.java

protected String getFormProperty(HttpServletRequest request, String methodToCall) {
    String parameterName = (String) request.getAttribute(KNSConstants.METHOD_TO_CALL_ATTRIBUTE);
    String formProperty = "";
    if (StringUtils.isNotBlank(parameterName)) {
        formProperty = StringUtils.substringBetween(parameterName, "." + methodToCall, ".line");
    }/*www . java 2  s .c  o m*/
    return formProperty;
}

From source file:org.kuali.kra.proposaldevelopment.web.struts.action.ProposalDevelopmentProposalAction.java

/**
 * This method reads a String value from the methodToCall form attribute.
 * @param request//from   w w w  . j  a v a2  s . c  o m
 * @param parameterName
 * @return
 */
private String getMethodToCallParameter(HttpServletRequest request, String parameterName) {
    String methodToCallAttribute = (String) request.getAttribute(KNSConstants.METHOD_TO_CALL_ATTRIBUTE);
    return StringUtils.substringBetween(methodToCallAttribute, "." + parameterName, ".");
}

From source file:org.kuali.kra.proposaldevelopment.web.struts.action.ProposalDevelopmentQuestionsAction.java

/**
 * This is specifically for 'lookup' return a value.
 * @see org.kuali.rice.kns.web.struts.action.KualiDocumentActionBase#refresh(org.apache.struts.action.ActionMapping, org.apache.struts.action.ActionForm, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
 *//*from w ww .j  ava 2s  . c  om*/
//TODO: Fix for multiple modules
@Override
public ActionForward refresh(ActionMapping mapping, ActionForm form, HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    ActionForward forward = super.refresh(mapping, form, request, response);
    if (request.getParameter("refreshCaller") != null
            && request.getParameter("refreshCaller").toString().equals("kualiLookupable")) {
        // Lookup field 'onchange' is not working if it is return a value from 'lookup', so do it on server side
        for (Object obj : request.getParameterMap().keySet()) {
            if (StringUtils.indexOf((String) obj, "questionnaireHelper.answerHeaders[") == 0) {
                ((ProposalDevelopmentForm) form).getQuestionnaireHelper()
                        .updateChildIndicator(Integer.parseInt(StringUtils.substringBetween((String) obj,
                                "questionnaireHelper.answerHeaders[", "].answers[")));
            } else if (StringUtils.indexOf((String) obj, "s2sQuestionnaireHelper.answerHeaders[") == 0) {
                ((ProposalDevelopmentForm) form).getS2sQuestionnaireHelper()
                        .updateChildIndicator(Integer.parseInt(StringUtils.substringBetween((String) obj,
                                "s2sQuestionnaireHelper.answerHeaders[", "].answers[")));
            }
        }
    }
    return forward;
}

From source file:org.kuali.kra.proposaldevelopment.web.struts.authorization.NarrativeTaskFactory.java

/**
 * Parses the method to call attribute to pick off the line number 
 * which should have an action performed on it.
 * @param request the HTTP request//from w w w .ja va2 s . c  o  m
 * @return the line number
 */
private int getSelectedLine(HttpServletRequest request) {
    int selectedLine = -1;
    String parameterName = (String) request.getAttribute(KNSConstants.METHOD_TO_CALL_ATTRIBUTE);
    if (StringUtils.isNotBlank(parameterName)) {
        String lineNumber = StringUtils.substringBetween(parameterName, ".line", ".");
        selectedLine = Integer.parseInt(lineNumber);
    }

    return selectedLine;
}

From source file:org.kuali.kra.questionnaire.print.QuestionnaireXmlStream.java

/**
 * Retrieves substring of document contents from maintainable tag name. Then use xml service to translate xml into a business
 * object.// w w  w.  j av  a 2  s . c o m
 */
private PersistableBusinessObject getBusinessObjectFromXML(String xmlDocumentContents, String objectTagName) {
    String objXml = StringUtils.substringBetween(xmlDocumentContents, "<" + objectTagName + ">",
            "</" + objectTagName + ">");
    objXml = "<" + objectTagName + ">" + objXml + "</" + objectTagName + ">";
    KualiDocumentXmlMaterializer kualiDocumentXmlMaterializer = (KualiDocumentXmlMaterializer) KNSServiceLocator
            .getXmlObjectSerializerService().fromXml(objXml);

    KraMaintenanceDocument kraMaintenanceDocument = (KraMaintenanceDocument) kualiDocumentXmlMaterializer
            .getDocument();
    PersistableBusinessObject businessObject = (PersistableBusinessObject) kraMaintenanceDocument
            .getDocumentBusinessObject();
    return businessObject;
}

From source file:org.kuali.kra.questionnaire.QuestionLookupAction.java

@Override
public ActionForward refresh(ActionMapping mapping, ActionForm form, HttpServletRequest request,
        HttpServletResponse response) throws Exception {
    ActionForward forward = super.refresh(mapping, form, request, response);
    QuestionLookupForm questionLookupForm = (QuestionLookupForm) form;
    String questions = Constants.EMPTY_STRING;
    if (questionLookupForm.getLookupResultsBOClassName() != null
            && questionLookupForm.getLookupResultsSequenceNumber() != null) {
        String lookupResultsSequenceNumber = questionLookupForm.getLookupResultsSequenceNumber();

        @SuppressWarnings("unchecked")
        Class<BusinessObject> lookupResultsBOClass = (Class<BusinessObject>) Class
                .forName(questionLookupForm.getLookupResultsBOClassName());

        Collection<BusinessObject> rawValues = KraServiceLocator.getService(LookupResultsService.class)
                .retrieveSelectedResultBOs(lookupResultsSequenceNumber, lookupResultsBOClass,
                        GlobalVariables.getUserSession().getPerson().getPrincipalId());
        int idx = 0;
        String idxString = StringUtils.substringBetween(questionLookupForm.getLookedUpCollectionName(), "[",
                "]");
        if (StringUtils.isNotBlank(idxString)) {
            idx = Integer.parseInt(idxString);
        }/*from ww  w . j  a v  a2  s.co m*/
        questionLookupForm.setSelectedQuestions(Constants.EMPTY_STRING);
        for (Iterator iter = rawValues.iterator(); iter.hasNext();) {
            Question question = (Question) iter.next();
            String desc = question.getQuestion();
            // need to deal with '"' in questio's description
            // This '"' caused trouble for document.getElementById("selectedQuestions").value;
            // It only getvalue up to '"', so not the whole string is returned
            if (desc.indexOf("\"") > 0) {
                desc = desc.replace("\"", "&#034;");
            }
            if (StringUtils.isBlank(questions)) {
                questions = question.getQuestionRefId() + PFP + desc + PFP + question.getQuestionTypeId() + PFP
                        + question.getSequenceNumber();
            } else {
                questions = questions + PQP + question.getQuestionRefId() + PFP + desc + PFP
                        + question.getQuestionTypeId() + PFP + question.getSequenceNumber();

            }
            questions = questions + PFP + getQuestionResponse(question);
        }
        questionLookupForm.setLookupResultsSequenceNumber(null);
    }

    questionLookupForm.setSelectedQuestions(questions);
    if (questionLookupForm.getNodeIndex() >= 0) {
        // when single lookup return, this refresh will be called too
        forward = mapping.findForward(SINGLE_LOOKUP);
    } else if (questionLookupForm.getNodeIndex() == -2) {
        forward = mapping.findForward(REPLACE_LOOKUP);
    } else {
        forward = mapping.findForward(MULTI_LOOKUP);
    }
    return forward;

}

From source file:org.kuali.kra.web.struts.action.KraTransactionalDocumentActionBase.java

/**
 * Retrieves substring of document contents from maintainable tag name. Then use xml service to translate xml into a business
 * object.//from   w  w w  . j av a 2 s  .c om
 */
private PersistableBusinessObject getBusinessObjectFromXML(String xmlDocumentContents, String objectTagName) {
    String objXml = StringUtils.substringBetween(xmlDocumentContents, "<" + objectTagName + ">",
            "</" + objectTagName + ">");
    objXml = "<" + objectTagName + ">" + objXml + "</" + objectTagName + ">";
    if (objXml.contains("itemDesctiption")) {
        objXml = objXml.replaceAll("itemDesctiption", "itemDescription");
    }
    PersistableBusinessObject businessObject = (PersistableBusinessObject) KNSServiceLocator
            .getXmlObjectSerializerService().fromXml(objXml);
    return businessObject;
}