Example usage for org.apache.commons.lang3 StringUtils substring

List of usage examples for org.apache.commons.lang3 StringUtils substring

Introduction

In this page you can find the example usage for org.apache.commons.lang3 StringUtils substring.

Prototype

public static String substring(final String str, int start) 

Source Link

Document

Gets a substring from the specified String avoiding exceptions.

A negative start position can be used to start n characters from the end of the String.

A null String will return null .

Usage

From source file:org.massyframework.assembly.base.web.HttpResourceProcessorManagement.java

@Override
protected void addService(ExportServiceReference<HttpResourceProcessor> reference,
        HttpResourceProcessor service) {
    super.addService(reference, service);
    String[] extensionNames = service.getExtensionNames();
    for (String extensionName : extensionNames) {
        if (extensionName != null) {
            if (extensionName.startsWith("*")) {
                extensionName = StringUtils.substring(extensionName, 1);
            }//from   ww w.  j a v a 2  s  .  com
            if (!extensionName.startsWith(".")) {
                extensionName = "." + extensionName;
            }

            ServletContextAware.maybeToBind(service, servletContext);
            processorMap.putIfAbsent(extensionName, service);
        }
    }
}

From source file:org.massyframework.assembly.base.web.HttpResourceProcessorManagement.java

@Override
protected void removeService(ExportServiceReference<HttpResourceProcessor> reference,
        HttpResourceProcessor service) {
    String[] extensionNames = service.getExtensionNames();
    for (String extensionName : extensionNames) {
        if (extensionName != null) {
            if (extensionName.startsWith("*")) {
                extensionName = StringUtils.substring(extensionName, 1);
            }/*from www.  ja  v a2s .  co  m*/
            if (!extensionName.startsWith(".")) {
                extensionName = "." + extensionName;
            }

            processorMap.remove(extensionName, service);
        }
    }
    super.removeService(reference, service);
}

From source file:org.massyframework.modules.launching.DefaultAssemblyResourceLoader.java

/**
 * ???/*from   w  w  w .j a va 2 s .  c om*/
 * @param extensions
 */
protected Map<ModuleIdentifier, List<String>> parserAssemblyResources(String resources) {
    Map<ModuleIdentifier, List<String>> result = new LinkedHashMap<ModuleIdentifier, List<String>>();
    if (resources != null) {
        resources = StringUtils.replaceAll(resources, "", ",");
    }
    String[] texts = StringUtils.split(resources, ",");
    if (texts != null) {
        for (String text : texts) {
            int index = StringUtils.indexOf(text, "@");
            if (index < 0) {
                if (logger.isWarnEnabled()) {
                    logger.warn("incorrect format:" + text + ".");
                }
                continue;
            }

            String resource = StringUtils.substring(text, index);
            String moduleName = StringUtils.substring(text, index + 1, text.length());
            ModuleIdentifier identifier = ModuleIdentifierUtils.parse(moduleName);

            List<String> assemblyResources = result.get(identifier);
            if (assemblyResources == null) {
                assemblyResources = new ArrayList<String>();
                result.put(identifier, assemblyResources);
            }
            assemblyResources.add(resource);
        }
    }

    return result;
}

From source file:org.nqcx.generator.service.generate.impl.GenerateServiceImpl.java

/**
 * name & reference & veriable//from   w  w w.j  a  va2 s .c o  m
 *
 * @param g g
 */
private void nrv(Generate g) {
    if (g == null)
        return;

    g.setProvideOReference(g.getProvideOPackage() + "." + g.getProvideO());
    g.setProvideOVeriable(StringUtils.uncapitalize(g.getProvideO()));
    g.setProvideProvideReference(g.getProvideProvidePackage() + "." + g.getProvideProvide());
    g.setProvideProvideVeriable(StringUtils.uncapitalize(StringUtils.substring(g.getProvideProvide(), 1)));

    g.setDaoPOReference(g.getDaoPOPackage() + "." + g.getDaoPO());
    g.setDaoPOVeriable(StringUtils.uncapitalize(g.getDaoPO()));
    g.setDaoMapperReference(g.getDaoMapperPackage() + "." + g.getDaoMapper());
    g.setDaoMapperVeriable(StringUtils.uncapitalize(StringUtils.substring(g.getDaoMapper(), 1)));
    g.setDaoJpaReference(g.getDaoJpaPackage() + "." + g.getDaoJpa());
    g.setDaoJpaVeriable(StringUtils.uncapitalize(StringUtils.substring(g.getDaoJpa(), 1)));
    g.setDaoDAOReference(g.getDaoDAOPackage() + "." + g.getDaoDAO());
    g.setDaoDAOVeriable(StringUtils.uncapitalize(StringUtils.substring(g.getDaoDAO(), 1)));
    g.setDaoDAOImplReference(g.getDaoDAOImplPackage() + "." + g.getDaoDAOImpl());

    g.setDaoBaseTestPackage(g.getpPackage() + ".dao");
    g.setDaoBaseTest("BaseDAOTest");
    g.setDaoBaseTestReference(g.getDaoBaseTestPackage() + "." + g.getDaoBaseTest());
    g.setDaoDAOTestPackage(g.getDaoDAOTestPackage());
    g.setDaoDAOTest(g.getDaoDAOTest());

    g.setServiceDOReference(g.getServiceDOPackage() + "." + g.getServiceDO());
    g.setServiceDOVeriable(StringUtils.uncapitalize(g.getServiceDO()));
    g.setServiceServiceReference(g.getServiceServicePackage() + "." + g.getServiceService());
    g.setServiceServiceVeriable(StringUtils.uncapitalize(StringUtils.substring(g.getServiceService(), 1)));
    g.setServiceServiceImplReference(g.getServiceServiceImplPackage() + "." + g.getServiceServiceImpl());

    g.setServiceBaseTestPackage(g.getpPackage() + ".service");
    g.setServiceBaseTest("BaseServiceTest");
    g.setServiceBaseTestReference(g.getServiceBaseTestPackage() + "." + g.getServiceBaseTest());
    g.setServiceServiceTestPackage(g.getServiceServiceTestPackage());
    g.setServiceServiceTest(g.getServiceServiceTest());

    g.setWebVOReference(g.getWebVOPackage() + "." + g.getWebVO());
    g.setWebVOVeriable(StringUtils.uncapitalize(g.getWebVO()));
    g.setWebControllerReference(g.getWebControllerPackage() + "." + g.getWebController());
    g.setWebControllerVeriable(StringUtils.uncapitalize(StringUtils.substring(g.getWebController(), 1)));

    g.setWebAbstractControllerPackage(g.getpPackage() + ".web.controller");
    g.setWebAbstractController("AbstractController");
    g.setWebAbstractControllerReference(
            g.getWebAbstractControllerPackage() + "." + g.getWebAbstractController());
}

From source file:org.omnaest.utils.strings.parser.ParserState.java

private List<ParserState.Match> parseInternal(String remainingText,
        Iterator<TokenPath.StackElement> stackIterator, int lookup) {
    final boolean stackHasNext = stackIterator.hasNext();
    final boolean remainingTextIsEmpty = StringUtils.isEmpty(remainingText);

    List<ParserState.Match> retlist = !stackHasNext && remainingTextIsEmpty ? new ArrayList<ParserState.Match>()
            : null;//w  w w . ja v a 2 s.  co m

    if (stackHasNext && (lookup <= -1 || lookup > 0)) {
        TokenPath.StackElement stackElement = stackIterator.next();

        final int localLookup = stackElement.getLookup();
        final int reducedLookup = Math.max(Math.max(lookup - 1, localLookup), -1);
        final int normalizedLookup = Math.max(Math.max(lookup, localLookup), -1);

        if (stackElement instanceof TokenPath.StackElementPattern) {
            TokenPath.StackElementPattern stackElementPattern = (TokenPath.StackElementPattern) stackElement;
            Pattern pattern = stackElementPattern.getPattern();

            Matcher matcher = pattern.matcher(remainingText);
            boolean lookingAt = matcher.lookingAt();
            if (lookingAt) {
                if (remainingTextIsEmpty) {
                    retlist = ListUtils.emptyList();
                } else {
                    final int end = matcher.end();
                    final String remainingTextNew = StringUtils.substring(remainingText, end);
                    retlist = this.parseInternal(remainingTextNew, stackIterator, reducedLookup);

                    if (retlist != null) {
                        final String token = matcher.group();
                        Grammar.TokenAction tokenAction = stackElement.getTokenAction();
                        ParserState.Match match = new Match(token);
                        match.addTokenAction(tokenAction);

                        retlist = ListUtils.add(retlist, 0, match);
                    }
                }
            }
        } else if (stackElement instanceof TokenPath.StackElementTokenPath) {
            TokenPath.StackElementTokenPath stackElementTokenPath = (TokenPath.StackElementTokenPath) stackElement;
            final Grammar.TokenPath[] tokenPathes = stackElementTokenPath.getTokenPathes();
            final Grammar.TokenAction tokenAction = stackElement.getTokenAction();
            if (tokenPathes != null) {
                for (Grammar.TokenPath tokenPathCurrent : tokenPathes) {
                    retlist = this.parseInternal(remainingText, tokenPathCurrent, normalizedLookup);
                    if (retlist != null) {
                        ParserState.Match lastElement = ListUtils.lastElement(retlist);
                        if (lastElement != null) {
                            lastElement.addTokenAction(tokenAction);
                        }
                        break;
                    }
                }
            }
        }
    }

    return retlist;
}

From source file:org.openestate.is24.restapi.utils.XmlUtils.java

/**
 * Write a {@link String} value into XML output
 * with a valid phone number country code.
 *
 * @param value//  w w  w  .  j a  v a 2s . co m
 * value to write
 *
 * @return
 * XML string
 *
 * @throws IllegalArgumentException
 * if a validation error occured
 */
public static String printPhoneNumberCountryCode(String value) {
    String val = StringUtils.trimToNull(value);

    // ggf. "+"-Zeichen voranstellen
    if (val != null && !val.startsWith("+")) {
        // ggf. doppelte fhrende Nullen entfernen
        if (val.startsWith("00"))
            val = StringUtils.substring(val, 2);

        val = "+" + val;
    }

    if (val == null || !val.matches("\\+[1-9]\\d{0,3}")) {
        throw new IllegalArgumentException("The provided country phone code '" + value + "' is invalid!");
    }

    return val;
}

From source file:org.opens.tanaguru.ruleimplementation.link.AbstractDownloadableLinkRuleImplementation.java

/**
 * //from   ww w . j  av a  2  s. c o m
 * @param uri
 * @return whether the current link has a proper extension (link.html)
 * @throws URIException
 */
private boolean isLinkWithProperExtension(URI uri) throws URIException {
    if (uri.hasQuery()) {
        return false;
    }
    String path = uri.getPath();
    if (StringUtils.isBlank(path) || StringUtils.equals(path, SLASH_CHAR)) {
        return false;
    }
    int lastSlash = StringUtils.lastIndexOf(path, SLASH_CHAR);
    if (StringUtils.substring(path, lastSlash).contains(POINT_CHAR)) {
        return true;
    }

    return false;
}

From source file:org.power.commons.io.FileUtils.java

/**
 * ????// ww w  .  j  ava2  s.  c  o  m
 *
 * @param path 
 * @return ?
 */
public static FileNameAndExtension getFileNameAndExtension(String path, boolean extensionToLowerCase) {
    path = StringUtils.trimToEmpty(path);

    String fileName = path;
    String extension = null;

    if (!StringUtils.isEmpty(path)) {
        // ?index >= 0extension != null?name.
        int index = path.lastIndexOf('.');

        if (index >= 0) {
            extension = StringUtils.trimToNull(StringUtils.substring(path, index + 1));

            if (!StringUtils.containsNone(extension, "/\\")) {
                extension = null;
                index = -1;
            }
        }

        if (index >= 0) {
            fileName = StringUtils.substring(path, 0, index);
        }
    }

    return new FileNameAndExtension(fileName, extension, extensionToLowerCase);
}

From source file:org.spicyurl.UrlParser.java

/**
 * /*from   w  w w.j a va 2 s  .c  o  m*/
 * @param pathQueryFregment
 *            - first char should be the seperator (PATH '/', QUERY '?' or
 *            FRAGMENT '?')
 */
private void parsePathQueryFregment(String sepPathQueryFregment) {
    char firstSeperator = CharUtils.toChar(sepPathQueryFregment);
    String pathQueryFregment = StringUtils.substring(sepPathQueryFregment, 1);

    switch (firstSeperator) {
    case PATH_SEP_CHAR:
        int secondSeperatorIdx = StringUtils.indexOfAny(pathQueryFregment, QUERY_SEP, FRAGMENT_SEP);
        if (secondSeperatorIdx == -1) {
            url.setPath(pathQueryFregment);
        } else {
            url.setPath(StringUtils.substring(pathQueryFregment, 0, secondSeperatorIdx));
            if (pathQueryFregment.charAt(secondSeperatorIdx) == FRAGMENT_SEP_CHAR) {
                url.setFragment(StringUtils.substring(pathQueryFregment, secondSeperatorIdx + 1));
            } else {
                parseQueryFregmant(StringUtils.substring(pathQueryFregment, secondSeperatorIdx + 1));
            }
        }
        break;
    case QUERY_SEP_CHAR:
        parseQueryFregmant(pathQueryFregment);
        break;
    case FRAGMENT_SEP_CHAR:
        url.setFragment(pathQueryFregment);
        break;
    }
}

From source file:ostepu.process.process.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods. (hier wird der richtige Unterbefehl ausgewhlt)
 *
 * @param request  servlet request//from  ww w.  j  a  v  a 2  s .c  o m
 * @param response servlet response
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response) {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out;
    try {
        out = response.getWriter();
    } catch (IOException ex) {
        Logger.getLogger(process.class.getName()).log(Level.SEVERE, null, ex);
        response.setStatus(500);
        return;
    }
    String pathInfo = StringUtils.substring(request.getRequestURI(), request.getContextPath().length());

    // ldt die Anmeldedaten (eventuell fr eine httpAuth)
    httpAuth.loadLocalAuthData(getServletContext());

    String method = request.getMethod();
    try {
        Matcher matcher;
        for (int i = 0; i < restPattern.length; i++) {
            String[] pattern = restPattern[i];
            if (method == null ? pattern[0] != null : !method.equals(pattern[0])) {
                continue;
            }
            Pattern regExGetCommands = Pattern.compile(pattern[1]);
            matcher = regExGetCommands.matcher(pathInfo);
            if (matcher.find()) {
                if (restCommands[i] != null) {
                    restCommands[i].execute(getServletContext(), request, response);
                }
                return;
            }
        }

    } finally {
        out.close();
    }
    try {
        response.sendError(409);
    } catch (IOException ex) {
        Logger.getLogger(process.class.getName()).log(Level.SEVERE, null, ex);
        response.setStatus(500);
    }
}