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

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

Introduction

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

Prototype

public static String uncapitalize(String str) 

Source Link

Document

Uncapitalizes a String changing the first letter to title case as per Character#toLowerCase(char) .

Usage

From source file:org.chililog.server.common.SystemProperties.java

/**
 * <p>/*from  w w w. j  a  va  2s.com*/
 * Loads/Reloads the properties. This method is NOT thread-safe and should only be called for unit-testing.
 * </p>
 * 
 * <p>
 * Use reflection to simulate the likes of:
 * <code>_chiliLogConfigDirectory = loadChiliLogConfigDirectory(properties);</code>
 * </p>
 * 
 * @throws Exception
 */
public void loadProperties() throws Exception {
    Class<SystemProperties> cls = SystemProperties.class;
    for (Field f : cls.getDeclaredFields()) {
        // Look for field names like CHILILOG_CONFIG_DIRECTORY
        String propertyNameFieldName = f.getName();
        if (!propertyNameFieldName.matches("^[A-Z0-9_]+$")) {
            continue;
        }

        // Build cache field (_chiliLogConfigDirectory) and method (loadChiliLogConfigDirectory) names
        String baseName = WordUtils.capitalizeFully(propertyNameFieldName, new char[] { '_' });
        baseName = baseName.replace("Chililog", "ChiliLog").replace("_", "");
        String cacheMethodName = "load" + baseName;
        String cacheFieldName = "_" + StringUtils.uncapitalize(baseName);

        // If field not exist, then skip
        Field cacheField = null;
        try {
            cacheField = cls.getDeclaredField(cacheFieldName);
        } catch (NoSuchFieldException e) {
            continue;
        }

        // Get and set the value
        Method m = cls.getDeclaredMethod(cacheMethodName, (Class[]) null);
        Object cacheValue = m.invoke(null, (Object[]) null);
        cacheField.set(this, cacheValue);
    }

    return;
}

From source file:org.codehaus.griffon.commons.ClassPropertyFetcher.java

private void init() {
    FieldCallback fieldCallback = new ReflectionUtils.FieldCallback() {
        public void doWith(Field field) {
            if (field.isSynthetic())
                return;
            final int modifiers = field.getModifiers();
            if (!Modifier.isPublic(modifiers))
                return;

            final String name = field.getName();
            if (name.indexOf('$') == -1) {
                boolean staticField = Modifier.isStatic(modifiers);
                if (staticField) {
                    staticFetchers.put(name, new FieldReaderFetcher(field, staticField));
                } else {
                    instanceFetchers.put(name, new FieldReaderFetcher(field, staticField));
                }/*w  w  w  . j a  va2s  .co m*/
            }
        }
    };

    MethodCallback methodCallback = new ReflectionUtils.MethodCallback() {
        public void doWith(Method method) throws IllegalArgumentException, IllegalAccessException {
            if (method.isSynthetic())
                return;
            if (!Modifier.isPublic(method.getModifiers()))
                return;
            if (Modifier.isStatic(method.getModifiers()) && method.getReturnType() != Void.class) {
                if (method.getParameterTypes().length == 0) {
                    String name = method.getName();
                    if (name.indexOf('$') == -1) {
                        if (name.length() > 3 && name.startsWith("get")
                                && Character.isUpperCase(name.charAt(3))) {
                            name = name.substring(3);
                        } else if (name.length() > 2 && name.startsWith("is")
                                && Character.isUpperCase(name.charAt(2))
                                && (method.getReturnType() == Boolean.class
                                        || method.getReturnType() == boolean.class)) {
                            name = name.substring(2);
                        }
                        PropertyFetcher fetcher = new GetterPropertyFetcher(method, true);
                        staticFetchers.put(name, fetcher);
                        staticFetchers.put(StringUtils.uncapitalize(name), fetcher);
                    }
                }
            }
        }
    };

    List<Class<?>> allClasses = resolveAllClasses(clazz);
    for (Class<?> c : allClasses) {
        Field[] fields = c.getDeclaredFields();
        for (Field field : fields) {
            try {
                fieldCallback.doWith(field);
            } catch (IllegalAccessException ex) {
                throw new IllegalStateException(
                        "Shouldn't be illegal to access field '" + field.getName() + "': " + ex);
            }
        }
        Method[] methods = c.getDeclaredMethods();
        for (Method method : methods) {
            try {
                methodCallback.doWith(method);
            } catch (IllegalAccessException ex) {
                throw new IllegalStateException(
                        "Shouldn't be illegal to access method '" + method.getName() + "': " + ex);
            }
        }
    }

    propertyDescriptors = BeanUtils.getPropertyDescriptors(clazz);
    for (PropertyDescriptor desc : propertyDescriptors) {
        Method readMethod = desc.getReadMethod();
        if (readMethod != null) {
            boolean staticReadMethod = Modifier.isStatic(readMethod.getModifiers());
            if (staticReadMethod) {
                staticFetchers.put(desc.getName(), new GetterPropertyFetcher(readMethod, staticReadMethod));
            } else {
                instanceFetchers.put(desc.getName(), new GetterPropertyFetcher(readMethod, staticReadMethod));
            }
        }
    }
}

From source file:org.codehaus.groovy.grails.commons.ClassPropertyFetcher.java

private void init() {
    FieldCallback fieldCallback = new ReflectionUtils.FieldCallback() {
        public void doWith(Field field) {
            if (field.isSynthetic()) {
                return;
            }//  ww  w.ja  v  a2s . c o  m
            final int modifiers = field.getModifiers();
            if (!Modifier.isPublic(modifiers)) {
                return;
            }

            final String name = field.getName();
            if (name.indexOf('$') == -1) {
                boolean staticField = Modifier.isStatic(modifiers);
                if (staticField) {
                    staticFetchers.put(name, new FieldReaderFetcher(field, staticField));
                } else {
                    instanceFetchers.put(name, new FieldReaderFetcher(field, staticField));
                }
            }
        }
    };

    MethodCallback methodCallback = new ReflectionUtils.MethodCallback() {
        public void doWith(Method method) throws IllegalArgumentException, IllegalAccessException {
            if (method.isSynthetic()) {
                return;
            }
            if (!Modifier.isPublic(method.getModifiers())) {
                return;
            }
            if (Modifier.isStatic(method.getModifiers()) && method.getReturnType() != Void.class) {
                if (method.getParameterTypes().length == 0) {
                    String name = method.getName();
                    if (name.indexOf('$') == -1) {
                        if (name.length() > 3 && name.startsWith("get")
                                && Character.isUpperCase(name.charAt(3))) {
                            name = name.substring(3);
                        } else if (name.length() > 2 && name.startsWith("is")
                                && Character.isUpperCase(name.charAt(2))
                                && (method.getReturnType() == Boolean.class
                                        || method.getReturnType() == boolean.class)) {
                            name = name.substring(2);
                        }
                        PropertyFetcher fetcher = new GetterPropertyFetcher(method, true);
                        staticFetchers.put(name, fetcher);
                        staticFetchers.put(StringUtils.uncapitalize(name), fetcher);
                    }
                }
            }
        }
    };

    List<Class<?>> allClasses = resolveAllClasses(clazz);
    for (Class<?> c : allClasses) {
        Field[] fields = c.getDeclaredFields();
        for (Field field : fields) {
            try {
                fieldCallback.doWith(field);
            } catch (IllegalAccessException ex) {
                throw new IllegalStateException(
                        "Shouldn't be illegal to access field '" + field.getName() + "': " + ex);
            }
        }
        Method[] methods = c.getDeclaredMethods();
        for (Method method : methods) {
            try {
                methodCallback.doWith(method);
            } catch (IllegalAccessException ex) {
                throw new IllegalStateException(
                        "Shouldn't be illegal to access method '" + method.getName() + "': " + ex);
            }
        }
    }

    propertyDescriptors = BeanUtils.getPropertyDescriptors(clazz);
    for (PropertyDescriptor desc : propertyDescriptors) {
        Method readMethod = desc.getReadMethod();
        if (readMethod != null) {
            boolean staticReadMethod = Modifier.isStatic(readMethod.getModifiers());
            if (staticReadMethod) {
                staticFetchers.put(desc.getName(), new GetterPropertyFetcher(readMethod, staticReadMethod));
            } else {
                instanceFetchers.put(desc.getName(), new GetterPropertyFetcher(readMethod, staticReadMethod));
            }
        }
    }
}

From source file:org.cvrgrid.hl7.fileparse.PicuDataLoader.java

public static void main(String[] args) throws Exception {

    PicuDataLoader picuDataLoader = new PicuDataLoader();
    SimpleDateFormat fromUser = new SimpleDateFormat("yyyyMMddHHmmss");
    SimpleDateFormat myFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    OpenTSDBConfiguration openTSDBConfiguration = picuDataLoader.getOpenTSDBConfiguration();
    String urlString = openTSDBConfiguration.getOpenTSDBUrl();
    HL7Measurements hl7Measurements = new HL7Measurements();
    HashMap<String, String> measurementNames = hl7Measurements.getMeasurementNames();
    XSSFWorkbook wb = readFile(openTSDBConfiguration.getAwareSupportedParams());
    XSSFSheet sheet = wb.getSheetAt(0);//from  www  .  j  av a2s . co m
    for (int r = 1; r < 280; r++) {
        XSSFRow row = sheet.getRow(r);
        if (row == null) {
            continue;
        }
        String key = row.getCell(2).getStringCellValue();
        String value = row.getCell(1).getStringCellValue();
        value = value.replaceAll(":", "/");
        measurementNames.put(key, value);
    }
    HashMap<String, PatientInfo> idMatch = new HashMap<String, PatientInfo>();
    File f = new File(openTSDBConfiguration.getIdMatch());
    if (f.exists()) {
        wb = readFile(openTSDBConfiguration.getIdMatch());
        sheet = wb.getSheetAt(0);
        for (int r = 1; r < sheet.getLastRowNum() + 1; r++) {
            XSSFRow row = sheet.getRow(r);
            PatientInfo patInfo = new PatientInfo();
            patInfo.setPicuSubject(row.getCell(1).getBooleanCellValue());
            patInfo.setFirstName(row.getCell(3).getStringCellValue());
            patInfo.setLastName(row.getCell(4).getStringCellValue());
            patInfo.setBirthDateTime(row.getCell(5).getStringCellValue());
            patInfo.setGender(row.getCell(6).getStringCellValue());
            patInfo.setBirthplace(row.getCell(7).getStringCellValue());
            patInfo.setEarliestDataPoint(row.getCell(8).getStringCellValue());
            LinkedList<String> locations = new LinkedList<String>();
            String lSet = row.getCell(10).getStringCellValue();
            lSet = lSet.replaceAll("\\[", "");
            lSet = lSet.replaceAll("\\]", "");
            String[] locationSet = lSet.split(",");
            for (String location : locationSet) {
                locations.add(location.trim());
            }
            patInfo.setLocations(locations);
            LinkedList<String> variables = new LinkedList<String>();
            String vSet = row.getCell(12).getStringCellValue();
            vSet = vSet.replaceAll("\\[", "");
            vSet = vSet.replaceAll("\\]", "");
            String[] variableSet = vSet.split(",");
            for (String variable : variableSet) {
                variables.add(variable.trim());
            }
            patInfo.setVariables(variables);
            idMatch.put(patInfo.getHash(), patInfo);
        }
    }
    System.out.println("Existing Subject Count: " + idMatch.size());
    String processedFile = openTSDBConfiguration.getProcessedFile();
    String rootDir = openTSDBConfiguration.getRootDir();
    ArrayList<String> processedFiles = new ArrayList<String>();
    File processedFileContents = new File(processedFile);
    getProcessedFiles(processedFileContents, processedFiles);
    ArrayList<String> messageFiles = new ArrayList<String>();
    File rootDirContents = new File(rootDir);
    getDirectoryContents(rootDirContents, processedFiles, messageFiles);
    XSSFWorkbook workbook;
    XSSFSheet sheetOut, sheetOut2;
    if (processedFiles.size() > 1) {
        workbook = readFile(openTSDBConfiguration.getIdMatch());
        sheetOut = workbook.getSheetAt(0);
        sheetOut2 = workbook.getSheetAt(1);
    } else {
        workbook = new XSSFWorkbook();
        sheetOut = workbook.createSheet("idMatch");
        sheetOut2 = workbook.createSheet(openTSDBConfiguration.getIdMatchSheet());
    }
    for (String filePath : messageFiles) {
        System.out.println("     File: " + filePath);
        FileReader reader = new FileReader(filePath);

        Hl7InputStreamMessageIterator iter = new Hl7InputStreamMessageIterator(reader);

        while (iter.hasNext()) {
            HashMap<String, String> tags = new HashMap<String, String>();
            Message next = iter.next();
            ORU_R01 oru = new ORU_R01();
            oru.parse(next.encode());
            PatientInfo patInfo = new PatientInfo();
            if (Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 5, 0, 2, 1) != null)
                patInfo.setFirstName(Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 5, 0, 2, 1).trim());
            if (Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 5, 0, 1, 1) != null)
                patInfo.setLastName(Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 5, 0, 1, 1).trim());
            if (Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 7, 0, 1, 1) != null)
                patInfo.setBirthDateTime(
                        Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 7, 0, 1, 1).trim());
            if (Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 8, 0, 1, 1) != null)
                patInfo.setGender(Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 8, 0, 1, 1).trim());
            if (Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 23, 0, 1, 1) != null)
                patInfo.setBirthplace(Terser.get(oru.getRESPONSE().getPATIENT().getPID(), 23, 0, 1, 1).trim());
            LinkedList<String> locations = new LinkedList<String>();
            LinkedList<String> variables = new LinkedList<String>();
            if (idMatch.get(patInfo.getHash()) != null) {
                patInfo = idMatch.get(patInfo.getHash());
                locations = patInfo.getLocations();
                variables = patInfo.getVariables();
            }
            if (!locations
                    .contains(Terser.get(oru.getRESPONSE().getPATIENT().getVISIT().getPV1(), 3, 0, 1, 1))) {
                locations.add(Terser.get(oru.getRESPONSE().getPATIENT().getVISIT().getPV1(), 3, 0, 1, 1));
                if (locations.peekLast().startsWith("ZB04"))
                    patInfo.setPicuSubject(true);
            }
            tags.put("subjectId", patInfo.getHash());
            String time = Terser.get(oru.getRESPONSE().getORDER_OBSERVATION().getOBR(), 7, 0, 1, 1);
            Date timepoint = fromUser.parse(time);
            String reformattedTime = myFormat.format(timepoint);
            if (patInfo.getEarliestDataPoint().equalsIgnoreCase("")) {
                patInfo.setEarliestDataPoint(reformattedTime);
            }
            List<ORU_R01_OBSERVATION> observations = oru.getRESPONSE().getORDER_OBSERVATION()
                    .getOBSERVATIONAll();
            for (ORU_R01_OBSERVATION observation : observations) {
                String seriesName = Terser.get(observation.getOBX(), 3, 0, 1, 1);
                if (measurementNames.get(seriesName) != null) {
                    seriesName = measurementNames.get(seriesName);
                } else {
                    seriesName = seriesName.replaceFirst("\\d", "#");
                    seriesName = measurementNames.get(seriesName);
                }

                StringBuffer buff = new StringBuffer();

                String[] tokens = seriesName.split(" ");
                for (String i : tokens) {
                    i = i.replaceAll("\\(", "");
                    i = i.replaceAll("\\)", "");
                    buff.append(StringUtils.capitalize(i));
                }

                String measurementValue = Terser.get(observation.getOBX(), 5, 0, 1, 1);
                String units = Terser.get(observation.getOBX(), 6, 0, 1, 1);
                if (units != null) {
                    units = units.replaceAll(":", "");
                    units = units.replaceAll("cm_h2o", "cmH2O");
                    units = units.replaceAll("\\(min/m2\\)", "MinPerMeterSquared");
                    units = units.replaceAll("l", "liters");
                    units = units.replaceAll("mliters", "milliliters");
                    units = units.replaceAll("g.m", "gramMeters");
                    units = units.replaceAll("dyn.sec.cm-5", "dyneSecondsPerQuinticCentimeter");
                    units = units.replaceAll("dyneSecondsPerQuinticCentimeter.m2",
                            "dyneSecondsPerQuinticCentimeterPerMeterSquared");
                    units = units.replaceAll("m2", "MeterSquared");
                    units = units.replaceAll("min", "Min");
                    units = units.replaceAll("/", "Per");
                    units = units.replaceAll("%", "percent");
                    units = units.replaceAll("#", "Count");
                    units = units.replaceAll("celiters", "Celsius");
                    units = units.replaceAll("mm\\(hg\\)", "mmHg");
                } else {
                    units = "percent";
                }
                seriesName = "vitals." + StringUtils.uncapitalize(units);
                seriesName += "." + StringUtils.uncapitalize(buff.toString());
                seriesName = seriesName.trim();
                if (!variables.contains(StringUtils.uncapitalize(buff.toString())))
                    variables.add(StringUtils.uncapitalize(buff.toString()));
                IncomingDataPoint dataPoint = new IncomingDataPoint(seriesName, timepoint.getTime(),
                        measurementValue, tags);
                TimeSeriesStorer.storeTimePoint(urlString, dataPoint);
            }
            patInfo.setLocations(locations);
            patInfo.setVariables(variables);
            idMatch.put(patInfo.getHash(), patInfo);
        }
        System.out.println("     Subject Count: " + idMatch.size());
        int rowNum = 0;
        Set<String> keys = idMatch.keySet();
        TreeSet<String> sortedKeys = new TreeSet<String>(keys);
        for (String key : sortedKeys) {
            XSSFRow row = sheetOut.createRow(rowNum);
            XSSFRow row2 = sheetOut2.createRow(rowNum);
            XSSFCell cell, cell2;
            if (rowNum == 0) {
                cell = row.createCell(0);
                cell.setCellValue("Count");
                cell = row.createCell(1);
                cell.setCellValue("PICU Subject?");
                cell = row.createCell(2);
                cell.setCellValue("Hash");
                cell = row.createCell(3);
                cell.setCellValue("First Name");
                cell = row.createCell(4);
                cell.setCellValue("Last Name");
                cell = row.createCell(5);
                cell.setCellValue("Birth Date/Time");
                cell = row.createCell(6);
                cell.setCellValue("Gender");
                cell = row.createCell(7);
                cell.setCellValue("Birthplace");
                cell = row.createCell(8);
                cell.setCellValue("First Time Point");
                cell = row.createCell(9);
                cell.setCellValue("Location Count");
                cell = row.createCell(10);
                cell.setCellValue("Locations");
                cell = row.createCell(11);
                cell.setCellValue("Variable Count");
                cell = row.createCell(12);
                cell.setCellValue("Variables");
                cell2 = row2.createCell(0);
                cell2.setCellValue("Count");
                cell2 = row2.createCell(1);
                cell2.setCellValue("PICU Subject?");
                cell2 = row2.createCell(2);
                cell2.setCellValue("Hash");
                cell2 = row2.createCell(3);
                cell2.setCellValue("First Name");
                cell2 = row2.createCell(4);
                cell2.setCellValue("Last Name");
                cell2 = row2.createCell(5);
                cell2.setCellValue("Birth Date/Time");
                cell2 = row2.createCell(6);
                cell2.setCellValue("Gender");
                cell2 = row2.createCell(7);
                cell2.setCellValue("Birthplace");
                cell2 = row2.createCell(8);
                cell2.setCellValue("First Time Point");
                cell2 = row2.createCell(9);
                cell2.setCellValue("Location Count");
                cell2 = row2.createCell(10);
                cell2.setCellValue("Locations");
                cell2 = row2.createCell(11);
                cell2.setCellValue("Variable Count");
                cell2 = row2.createCell(12);
                cell2.setCellValue("Variables");
            } else {
                cell = row.createCell(0);
                cell.setCellValue(rowNum);
                cell = row.createCell(1);
                cell.setCellValue(idMatch.get(key).isPicuSubject());
                cell = row.createCell(2);
                cell.setCellValue(key);
                cell = row.createCell(3);
                cell.setCellValue(idMatch.get(key).getFirstName());
                cell = row.createCell(4);
                cell.setCellValue(idMatch.get(key).getLastName());
                cell = row.createCell(5);
                cell.setCellValue(idMatch.get(key).getBirthDateTime());
                cell = row.createCell(6);
                cell.setCellValue(idMatch.get(key).getGender());
                cell = row.createCell(7);
                cell.setCellValue(idMatch.get(key).getBirthplace());
                cell = row.createCell(8);
                cell.setCellValue(idMatch.get(key).getEarliestDataPoint());
                cell = row.createCell(9);
                cell.setCellValue(idMatch.get(key).getLocations().size());
                cell = row.createCell(10);
                cell.setCellValue(idMatch.get(key).getLocations().toString());
                cell = row.createCell(11);
                cell.setCellValue(idMatch.get(key).getVariables().size());
                cell = row.createCell(12);
                cell.setCellValue(idMatch.get(key).getVariables().toString());
                if (idMatch.get(key).isPicuSubject()) {
                    cell2 = row2.createCell(0);
                    cell2.setCellValue(rowNum);
                    cell2 = row2.createCell(1);
                    cell2.setCellValue(idMatch.get(key).isPicuSubject());
                    cell2 = row2.createCell(2);
                    cell2.setCellValue(key);
                    cell2 = row2.createCell(3);
                    cell2.setCellValue(idMatch.get(key).getFirstName());
                    cell2 = row2.createCell(4);
                    cell2.setCellValue(idMatch.get(key).getLastName());
                    cell2 = row2.createCell(5);
                    cell2.setCellValue(idMatch.get(key).getBirthDateTime());
                    cell2 = row2.createCell(6);
                    cell2.setCellValue(idMatch.get(key).getGender());
                    cell2 = row2.createCell(7);
                    cell2.setCellValue(idMatch.get(key).getBirthplace());
                    cell2 = row2.createCell(8);
                    cell2.setCellValue(idMatch.get(key).getEarliestDataPoint());
                    cell2 = row2.createCell(9);
                    cell2.setCellValue(idMatch.get(key).getLocations().size());
                    cell2 = row2.createCell(10);
                    cell2.setCellValue(idMatch.get(key).getLocations().toString());
                    cell2 = row2.createCell(11);
                    cell2.setCellValue(idMatch.get(key).getVariables().size());
                    cell2 = row2.createCell(12);
                    cell2.setCellValue(idMatch.get(key).getVariables().toString());
                }
            }
            rowNum++;
        }
    }

    if (messageFiles.size() > 0) {
        try {

            FileOutputStream out = new FileOutputStream(new File(openTSDBConfiguration.getIdMatch()));
            workbook.write(out);
            out.close();
            System.out.println("Excel written successfully...");
            PrintWriter writer = new PrintWriter(rootDir + "done.txt", "UTF-8");
            for (String filePath : processedFiles) {
                writer.println(filePath);
            }
            for (String filePath : messageFiles) {
                writer.println(filePath);
            }
            writer.close();
            System.out.println("done.txt written successfully...");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    } else {
        System.out.println("Nothing new to process...");
    }
}

From source file:org.eclipse.wb.android.internal.model.property.event.ListenerInfo.java

/**
 * @return the name of listener method, to display for user. For example <code>key</code> for
 *         <code>addKeyListener()</code>.
 */// ww  w  .jav a 2  s . c o  m
private static String _getListenerSimpleName(Method addListenerMethod) {
    String name = addListenerMethod.getName();
    // convert into simple name
    name = StringUtils.removeStart(name, "set");
    name = StringUtils.removeEnd(name, "Listener");
    name = StringUtils.uncapitalize(name);
    // if become empty, use full name
    if (name.length() == 0) {
        name = addListenerMethod.getName();
    }
    return name;
}

From source file:org.eclipse.wb.internal.core.databinding.model.CodeGenerationSupport.java

private static String createName(String[] names) {
    Assert.isTrue(names.length > 0);//from   www  .j a  va2  s  .  co m
    for (int i = 0; i < names.length; i++) {
        names[i] = convertName(names[i]);
    }
    return StringUtils.uncapitalize(StringUtils.join(names));
}

From source file:org.eclipse.wb.internal.core.model.property.event.ListenerInfo.java

/**
 * @return the name of listener method, to display for user. For example <code>key</code> for
 *         <code>addKeyListener()</code>.
 *///from ww  w .  j a v  a2  s  .  com
private static String _getListenerSimpleName(Method addListenerMethod) {
    String name = addListenerMethod.getName();
    // convert into simple name
    name = StringUtils.removeStart(name, "add");
    name = StringUtils.removeEnd(name, "Listener");
    name = StringUtils.removeEnd(name, "Handler");
    name = StringUtils.uncapitalize(name);
    // if become empty, use full name
    if (name.length() == 0) {
        name = addListenerMethod.getName();
    }
    return name;
}

From source file:org.eclipse.wb.internal.core.model.property.event.ListenerMethodProperty.java

/**
 * @return the reduced title of {@link ListenerMethodInfo}, for example use "gained" instead of
 *         "focusGained" for {@link FocusListener}.
 *///from   w w  w. ja  v a2s .c o m
private static String getTitle(ListenerInfo listener, ListenerMethodInfo method) {
    String listenerTitle = listener.getName();
    String methodTitle = method.getName();
    if (methodTitle.startsWith(listenerTitle) && !methodTitle.equals(listenerTitle)) {
        return StringUtils.uncapitalize(methodTitle.substring(listenerTitle.length()));
    }
    return methodTitle;
}

From source file:org.eclipse.wb.internal.core.model.variable.NamesManager.java

/**
 * @return the basic name of variable (without prefix/suffix or uniqueness test) for given
 *         component and text, or <code>null</code> if no valid name can be generated.
 *//*from   w ww  .  java  2s .  co m*/
private static String getNameForText(JavaInfo javaInfo, String text) {
    ComponentDescription description = javaInfo.getDescription();
    IPreferenceStore preferences = description.getToolkit().getPreferences();
    // prepare component class name for variable
    String classNameForVariable;
    {
        String qualifiedClassName = ReflectionUtils.getCanonicalName(description.getComponentClass());
        String shortClassName = CodeUtils.getShortClass(qualifiedClassName);
        classNameForVariable = StringUtilities.stripLeadingUppercaseChars(shortClassName, 1);
    }
    // prepare "text" part of template
    String textPart;
    {
        textPart = text.toLowerCase();
        textPart = WordUtils.capitalize(textPart);
        // remove HTML tags
        textPart = StringUtilities.stripHtml(textPart);
        // get first "wordsLimit" words to prevent too long identifiers
        {
            int wordsLimit = preferences.getInt(IPreferenceConstants.P_VARIABLE_TEXT_WORDS_LIMIT);
            if (wordsLimit > 0) {
                String[] strings = StringUtils.split(textPart);
                if (strings.length > wordsLimit) {
                    textPart = "";
                    for (int i = 0; i < wordsLimit; i++) {
                        textPart += strings[i];
                    }
                }
            }
        }
        // remove invalid characters
        textPart = StringUtilities.removeNonLatinCharacters(textPart);
        // is there any remaining symbol? :)
        if (textPart.length() == 0) {
            return null;
        }
    }
    // use template
    String name;
    {
        Map<String, String> valueMap = Maps.newTreeMap();
        {
            valueMap.put("class_name", classNameForVariable);
            valueMap.put("text", textPart);
            valueMap.put("default_name", getName(javaInfo));
            valueMap.put("class_acronym", getAcronym(javaInfo));
        }
        // use template
        String template = preferences.getString(IPreferenceConstants.P_VARIABLE_TEXT_TEMPLATE);
        name = StrSubstitutor.replace(template, valueMap);
    }
    // final modifications
    name = StringUtils.uncapitalize(name);
    return name;
}

From source file:org.eclipse.wb.internal.core.model.variable.NamesManager.java

/**
 * @return the default base variable name for given component class.
 */// ww  w.  java  2  s.co m
public static String getDefaultName(String qualifiedClassName) {
    String name = CodeUtils.getShortClass(qualifiedClassName);
    // check if class name has only upper case characters
    {
        boolean onlyUpper = true;
        for (int i = 0; i < name.length(); i++) {
            onlyUpper &= Character.isUpperCase(name.charAt(i));
        }
        if (onlyUpper) {
            return name.toLowerCase();
        }
    }
    // check if class name starts from lower case character
    if (Character.isLowerCase(name.charAt(0))) {
        return name + '_';
    }
    // remove all upper case characters from beginning except last one (most right from beginning)
    {
        int index = 0;
        {
            int maxIndex = name.length() - 1;
            while (index < maxIndex && Character.isUpperCase(name.charAt(index + 1))) {
                index++;
            }
        }
        name = name.substring(index);
    }
    //
    return StringUtils.uncapitalize(name);
}