List of usage examples for org.apache.commons.lang StringUtils indexOf
public static int indexOf(String str, String searchStr)
Finds the first index within a String, handling null
.
From source file:org.vulpe.fox.apt.strategies.VulpeForAllTemplateStrategy.java
protected String getClassName(final Object clazz) { if (StringUtils.indexOf(clazz.toString(), "<") > -1) { return StringUtils.substring(clazz.toString(), 0, StringUtils.indexOf(clazz.toString(), "<")); }//from www.j av a 2 s .co m return clazz.toString(); }
From source file:org.vulpe.fox.apt.strategies.VulpeForAllTemplateStrategy.java
protected String getIDType(final Object clazz) { if (StringUtils.indexOf(clazz.toString(), "<") > -1) { return StringUtils.substring(clazz.toString(), StringUtils.indexOf(clazz.toString(), "<") + 1, StringUtils.indexOf(clazz.toString(), ">")); }/*from w ww .j ava 2 s. co m*/ return "java.lang.Long"; }
From source file:pl.otros.logview.importer.UtilLoggingXmlLogImporter.java
String extractFileName(String clazz) { int clazzStart = StringUtils.lastIndexOf(clazz, '.') + 1; clazzStart = Math.max(0, clazzStart); int clazzEnd = StringUtils.indexOf(clazz, '$'); if (clazzEnd < 0) { clazzEnd = clazz.length();//from ww w .ja v a 2s.co m } String fileName = StringUtils.substring(clazz, clazzStart, clazzEnd); return fileName; }
From source file:pt.webdetails.cda.dataaccess.AbstractDataAccess.java
/** * Get a value iterator from a $FOREACH directive * * @return Iterable over values, or null if no results *//* w ww . j a v a 2s . c om*/ private Iterable<String> expandParameterIteration(String dataAccessId, int outColumnIdx, String[] dataAccessParameters) throws QueryException { final String EXC_TEXT = "Unable to expand parameter iteration. "; QueryOptions queryOptions = new QueryOptions(); queryOptions.setDataAccessId(dataAccessId); //set query parameters if (dataAccessParameters != null) { for (String paramDef : dataAccessParameters) { int attribIdx = StringUtils.indexOf(paramDef, '='); if (attribIdx > 0) { String paramName = StringUtils.trim(StringUtils.substring(paramDef, 0, attribIdx)); String paramValue = StringUtils.trim(StringUtils.substring(paramDef, attribIdx + 1)); queryOptions.addParameter(paramName, paramValue); } else { logger.error("Bad parameter definition, skipping: " + paramDef); } } } //do query and get selected columns logger.debug("expandParameterIteration: Doing inner query on CdaSettings [ " + cdaSettings.getId() + " (" + queryOptions.getDataAccessId() + ")]"); try { DataAccess dataAccess = getCdaSettings().getDataAccess(queryOptions.getDataAccessId()); TableModel tableModel = dataAccess.doQuery(queryOptions); if (outColumnIdx < 0 || outColumnIdx >= tableModel.getColumnCount()) { throw new QueryException(EXC_TEXT, new IllegalArgumentException("Output column index " + outColumnIdx + " out of range.")); } if (tableModel.getRowCount() < 1) { return null; } return new StringColumnIterable(tableModel, outColumnIdx); } catch (UnknownDataAccessException e) { throw new QueryException(EXC_TEXT, e); } }
From source file:pt.webdetails.cda.dataaccess.Parameter.java
private String getValueAsString(Object value) { String separator = getSeparator(); if (value == null) { if (getDefaultValue() != null) return getDefaultValue().toString(); else// w w w .j av a2 s . c o m return null; } else if (value instanceof String) { return (String) value; } else if (type != null) { switch (type) { case STRING_ARRAY://csvTokenizer compatible if (value instanceof List) { value = ((List) value).toArray(); } if (!(value instanceof String[]) && (value instanceof Object[])) { Object[] oldVal = (Object[]) value; String[] newVal = new String[oldVal.length]; for (int i = 0; i < oldVal.length; i++) { //force toString() newVal[i] = "" + oldVal[i]; } value = newVal; } String[] strArr = (String[]) value; int i = 0; StringBuilder strBuild = new StringBuilder(); for (String s : strArr) { if (i++ > 0) strBuild.append(separator); strBuild.append('"'); int lastWritten = 0; for (int sepIdx = StringUtils.indexOf(s, "'"); sepIdx >= 0; sepIdx = StringUtils.indexOf(s, "'", sepIdx)) {//quote separator strBuild.append(s.substring(lastWritten, sepIdx)); strBuild.append('"'); strBuild.append(separator); strBuild.append('"'); lastWritten = ++sepIdx; } strBuild.append(StringUtils.substring(s, lastWritten, s.length())); strBuild.append('"'); } return strBuild.toString(); case DATE: try { Date dt = (Date) getValue(); return (dt == null) ? null : "" + dt.getTime(); } catch (InvalidParameterException e) { logger.error("Parameter of date type " + getName() + " does not yield date.", e); } break; case DATE_ARRAY: case INTEGER_ARRAY: case NUMERIC_ARRAY: default://also handle whan we want a string and have an array if (value instanceof Object[]) { Object[] arr = (Object[]) value; i = 0; strBuild = new StringBuilder(); for (Object o : arr) { if (i++ > 0) strBuild.append(separator); if (o instanceof Date) strBuild.append(((Date) o).getTime()); else strBuild.append(o); } return strBuild.toString(); } //else toString } } return value.toString(); }
From source file:pt.webdetails.cda.utils.FormulaEvaluator.java
public static String replaceFormula(String text, FormulaContext context) throws InvalidParameterException { int startIdx = StringUtils.indexOf(text, FORMULA_BEGIN); int contentStartIdx = startIdx + FORMULA_BEGIN.length(); if (startIdx > -1) { int contentEndIdx = StringUtils.lastIndexOf(text, FORMULA_END); int endIdx = contentEndIdx + FORMULA_END.length(); if (contentEndIdx >= contentStartIdx) { String contents = StringUtils.substring(text, contentStartIdx, contentEndIdx); StringBuilder result = new StringBuilder(); result.append(StringUtils.substring(text, 0, startIdx)); result.append(processFormula(contents, context)); result.append(StringUtils.substring(text, endIdx, text.length())); return result.toString(); }/*from w w w. j ava 2s .co m*/ //TODO: else throw something } return text; }