List of usage examples for org.apache.commons.lang3 StringUtils substringAfterLast
public static String substringAfterLast(final String str, final String separator)
Gets the substring after the last occurrence of a separator.
From source file:io.adeptj.runtime.servlet.ErrorPages.java
static void renderErrorPage(HttpServletRequest req, HttpServletResponse resp) { String statusCode = StringUtils.substringAfterLast(req.getRequestURI(), SLASH); if (StringUtils.equals(TEMPLATE_ERROR, req.getRequestURI())) { ErrorPages.renderGenericErrorPage(req, resp); } else if (StringUtils.equals(STATUS_500, statusCode)) { ErrorPages.render500Page(req, resp); } else if (RequestUtil.hasException(req) && StringUtils.equals(STATUS_500, statusCode)) { ErrorPages.render500PageWithExceptionTrace(req, resp); } else if (Configs.of().undertow().getStringList(KEY_STATUS_CODES).contains(statusCode)) { ErrorPages.renderErrorPageForStatusCode(req, resp, statusCode); } else {/* www .ja v a2 s . com*/ ResponseUtil.sendError(resp, HttpServletResponse.SC_NOT_FOUND); } }
From source file:com.quatico.base.aem.test.api.AemMatchers.java
public static Matcher<String> pathEndsWithUuid() { return new TypeSafeMatcher<String>() { @Override// www . j a v a 2 s .com protected boolean matchesSafely(String value) { try { UUID.fromString(StringUtils.substringAfterLast(value, "/")); } catch (IllegalArgumentException ex) { return false; } return true; } @Override public void describeTo(Description description) { description.appendText("String should end with a UUID"); } }; }
From source file:io.wcm.handler.mediasource.inline.InlineRendition.java
/** * @param resource Binary resource/* w w w .j a va 2 s . c o m*/ * @param media Media metadata * @param mediaArgs Media args * @param fileName File name */ InlineRendition(Resource resource, Media media, MediaArgs mediaArgs, String fileName, Adaptable adaptable) { this.resource = resource; this.media = media; this.mediaArgs = mediaArgs; this.adaptable = adaptable; // detect image dimension String processedFileName = fileName; // check if scaling is possible String fileExtension = StringUtils.substringAfterLast(processedFileName, "."); boolean isImage = FileExtension.isImage(fileExtension); Dimension dimension = null; Dimension scaledDimension = null; if (isImage) { // get dimension from image binary dimension = getImageDimension(); // check if scaling is required scaledDimension = getScaledDimension(dimension); if (scaledDimension != null && !scaledDimension.equals(SCALING_NOT_POSSIBLE_DIMENSION)) { // overwrite image dimension of {@link Rendition} instance with scaled dimensions dimension = scaledDimension; // change extension to JPEG because scaling always produces JPEG images processedFileName = StringUtils.substringBeforeLast(processedFileName, ".") + "." + FileExtension.JPEG; } } this.fileName = processedFileName; this.imageDimension = dimension; // build media url (it is null if no rendition is available for the given media args) this.url = buildMediaUrl(scaledDimension); // set first media format as resolved format - because only the first is supported if (url != null && mediaArgs.getMediaFormats() != null && mediaArgs.getMediaFormats().length > 0) { this.resolvedMediaFormat = mediaArgs.getMediaFormats()[0]; } }
From source file:blue.lapis.pore.impl.event.PoreEventImplTest.java
@Test public void checkName() { Class<?> bukkitEvent = eventImpl.getSuperclass(); String poreName = event;/*from ww w . j a v a 2 s . c o m*/ String porePackage = StringUtils.substringBeforeLast(poreName, "."); poreName = StringUtils.substringAfterLast(poreName, "."); String bukkitName = StringUtils.removeStart(bukkitEvent.getName(), BUKKIT_PREFIX); String bukkitPackage = StringUtils.substringBeforeLast(bukkitName, "."); bukkitName = StringUtils.substringAfterLast(bukkitName, "."); String expectedName = "Pore" + bukkitName; assertEquals(poreName + " should be called " + expectedName, poreName, expectedName); assertEquals(poreName + " is in wrong package: should be in " + PORE_PREFIX + bukkitPackage, porePackage, bukkitPackage); }
From source file:info.magnolia.test.fixture.JcrPropertyServlet.java
@Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { final String path = request.getParameter("path"); final String workspace = StringUtils.defaultString(request.getParameter("workspace"), RepositoryConstants.CONFIG); final String value = request.getParameter("value"); final boolean delete = Boolean.valueOf(request.getParameter("delete")); final String nodePath = StringUtils.substringBeforeLast(path, "/"); final String propertyName = StringUtils.substringAfterLast(path, "/"); try {/*from w w w . ja va 2 s . c om*/ final Node node = SessionUtil.getNode(workspace, nodePath); if (node == null) { throw new ServletException("Node does not exist [" + nodePath + "]"); } final String returnValue = PropertyUtil.getString(node, propertyName); if (value != null) { node.setProperty(propertyName, value); node.getSession().save(); log.info("Changing value of '{}' from [{}] to [{}]", path, returnValue, value); } else if (delete) { if (node.hasProperty(propertyName)) { Property property = node.getProperty(propertyName); property.remove(); node.getSession().save(); log.info("Removed property '{}' from [{}].", propertyName, path); } else { log.info("No property '{}' found at [{}].", propertyName, path); } } response.getWriter().write(String.valueOf(returnValue)); } catch (RepositoryException e) { log.warn("Could not handle property [{}] from workspace [{}]", new Object[] { path, workspace }); throw new ServletException("Could not read property [" + path + "]"); } }
From source file:de.jfachwert.net.EMailAdresse.java
/** * Der Domain Part, der hinter dem @-Zeichen steht und fuer den die * Syntaxregeln des Domain Name Systems gelten, besteht mindestens aus drei * Teilen: einem Hostnamen (z. B. ein Firmenname), einem Punkt und einer * Top-Level-Domain.//from w w w . j a v a2 s . c o m * * @return z.B. "fachwert.de" */ public Domainname getDomainPart() { return new Domainname(StringUtils.substringAfterLast(this.getCode(), "@")); }
From source file:com.xpn.xwiki.internal.filter.output.PropertyClassOutputFilterStream.java
@Override public void beginWikiClassProperty(String name, String type, FilterEventParameters parameters) throws FilterException { if (this.enabled) { ComponentManager componentManager = this.componentManagerProvider.get(); this.currentClassPropertyMeta = null; PropertyClassProvider provider;// w w w . ja v a2 s. c om // First try to use the specified class type as hint. try { if (componentManager.hasComponent(PropertyClassProvider.class, type)) { provider = componentManager.getInstance(PropertyClassProvider.class, type); } else { // In previous versions the class type was the full Java class name of the property class // implementation. Extract the hint by removing the Java package prefix and the Class suffix. String classType = StringUtils.removeEnd(StringUtils.substringAfterLast(type, "."), "Class"); if (componentManager.hasComponent(PropertyClassProvider.class, classType)) { provider = componentManager.getInstance(PropertyClassProvider.class, classType); } else { this.logger.warn("Unknown property type [{}]", type); return; } } } catch (ComponentLookupException e) { throw new FilterException( String.format("Failed to get instance of the property class provider for type [%s]", type), e); } this.currentClassPropertyMeta = provider.getDefinition(); if (this.entity == null) { // We should use PropertyClassInterface (instead of PropertyClass, its default implementation) but it // doesn't have the set methods and adding them would breaks the backwards compatibility. We make the // assumption that all property classes extend PropertyClass. this.entity = (PropertyClass) provider.getInstance(); } this.entity.setName(name); this.entity.setObject(this.currentXClass); } }
From source file:com.adobe.acs.commons.mcp.form.AbstractResourceImpl.java
@Override public String getName() { return StringUtils.substringAfterLast(path, "/"); }
From source file:info.magnolia.imaging.ImagingServlet.java
@Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { final String generatorName = getImageGeneratorName(request); final ImageGenerator generator = getGenerator(generatorName); if (generator == null) { throw new IllegalArgumentException("No ImageGenerator with name " + generatorName); }//from ww w. j av a 2 s .c o m final ParameterProviderFactory parameterProviderFactory = generator.getParameterProviderFactory(); final ParameterProvider p = parameterProviderFactory.newParameterProviderFor(request); if (validateFileExtension) { String outputFormat = generator.getOutputFormat(p).getFormatName(); String requestedPath = StringUtils.substringAfterLast(request.getPathInfo(), "/"); // don't take part of node name as extension, we support dots in node names! String requestedFormat = StringUtils.substringAfterLast(requestedPath, "."); if (!StringUtils.equals(outputFormat, requestedFormat)) { response.sendError(HttpServletResponse.SC_NOT_FOUND); return; } } try { // TODO -- mimetype etc. final ImageStreamer streamer = getStreamer(parameterProviderFactory); streamer.serveImage(generator, p, response.getOutputStream()); response.flushBuffer(); // IOUtils.closeQuietly(response.getOutputStream()); } catch (ImagingException e) { throw new ServletException(e); // TODO } }
From source file:com.zht.common.generator.excute.impl.JSPGeneratorImplNew.java
@Override public void genjsp_update(String entityFullClassName, String controllerNameSpace, GenEntity genEntity, List<GenEntityProperty> genEntityPropertyList) { JSPModelNew jSPModel = new JSPModelNew(); //??/*from w w w. ja va2s . co m*/ String entitySimpleClassName = StringUtils.substringAfterLast(entityFullClassName, "."); // String str = StringUtils.substringBeforeLast(entityFullClassName, "."); str = StringUtils.substringBeforeLast(str, "."); String firstLower = ZStrUtil.toLowerCaseFirst(entitySimpleClassName); jSPModel.setControllerNameSpace(controllerNameSpace); jSPModel.setEntityFullClassName(entityFullClassName); jSPModel.setEntitySimpleClassName(entitySimpleClassName); jSPModel.setGenEntity(genEntity); jSPModel.setGenEntityPropertyList(genEntityPropertyList); Map<String, Object> data = new HashMap<String, Object>(); data.put("model", jSPModel); String filePath = new String(GenConstant.project_path + "WebRoot/WEB-INF/jsp/" + controllerNameSpace + "/" + firstLower + "Update.jsp"); super.generate(GenConstant.jsp_add_template_dir, data, filePath); }