List of usage examples for org.springframework.util StringUtils trimTrailingCharacter
public static String trimTrailingCharacter(String str, char trailingCharacter)
From source file:org.zalando.github.spring.pagination.StringToLinkRelation.java
@Override public LinkRelation apply(String input) { Iterable<String> splittResult = splitter.split(input); String link = Iterables.get(splittResult, 0); link = StringUtils.trimAllWhitespace(link); link = StringUtils.trimLeadingCharacter(link, '<'); link = StringUtils.trimTrailingCharacter(link, '>'); String relation = Iterables.get(splittResult, 1); relation = StringUtils.trimAllWhitespace(relation); return new LinkRelation(link, relation); }
From source file:com.verigreen.collector.rest.filters.BlockTestingResourcesFilter.java
private static String trim(String s, char charToTrim) { String result = StringUtils.trimLeadingCharacter(s, charToTrim); result = StringUtils.trimTrailingCharacter(result, charToTrim); return result; }
From source file:com.companyname.plat.commons.client.HttpRestfulClient.java
private String buildRequestJasonObject(Map<String, String> params) { if (params == null) { return null; }/*from w ww. j a v a 2 s.co m*/ Iterator iterator = params.entrySet().iterator(); Map.Entry entry = null; StringBuilder keyValPair = new StringBuilder(); while (iterator.hasNext()) { entry = (Map.Entry<String, String>) iterator.next(); keyValPair.append(entry.getKey()); keyValPair.append(":"); keyValPair.append("\"" + entry.getValue() + "\","); } return "{" + StringUtils.trimTrailingCharacter(keyValPair.toString(), ',') + "}"; }
From source file:org.zenoss.zep.index.impl.solr.SolrQueryBuilder.java
private void useFullText(String fieldName, Set<String> values) { if (values == null || values.isEmpty()) return;//w w w .j a v a2 s .c om for (String value : values) { // Check for empty string final String tmp_value = StringUtils.trimLeadingCharacter(StringUtils.trimTrailingCharacter(value, '*'), '*'); if (tmp_value.isEmpty()) continue; else { final String unquoted = unquote(tmp_value); if (unquoted.isEmpty()) continue; } clauses.add(complexPhraseQuery(fieldName, StringUtils.trimLeadingCharacter(value, '*'))); } }
From source file:org.zenoss.zep.index.impl.solr.SolrQueryBuilder.java
private void useIdentifier(String fieldName, Set<String> values) { if (values == null || values.isEmpty()) return;/*from w w w . j av a 2 s . c o m*/ for (String value : values) { value = StringUtils.trimTrailingCharacter(value, '*'); final String unquoted = unquote(value); if (value.isEmpty() || !unquoted.equals(value)) { clauses.add(termQuery(nonAnalyzed(fieldName), unquoted)); } else if (value.length() < IndexConstants.MIN_NGRAM_SIZE) { clauses.add(prefixQuery(fieldName, value)); } else { clauses.add(termQuery(fieldName, value)); } } }
From source file:org.zenoss.zep.index.impl.lucene.LuceneQueryBuilder.java
private void buildIdentifierFilters(List<Filter> filters, String fieldName, Set<String> values) throws ZepException { if (values == null || values.isEmpty()) return;/* www.ja va 2 s . c o m*/ final Analyzer analyzer = new LuceneIdentifierAnalyzer(); for (String value : values) { final Filter filter; value = StringUtils.trimTrailingCharacter(value, '*'); final String unquoted = unquote(value); if (value.isEmpty() || !unquoted.equals(value)) { filter = filterCache.get(WILDCARD, new Term(nonAnalyzed(fieldName), unquoted.toLowerCase())); } else if (value.length() < LuceneIdentifierAnalyzer.MIN_NGRAM_SIZE) { filter = filterCache.get(PREFIX, new Term(fieldName, value.toLowerCase())); } else { // Use NGramPhraseQuery (new in Lucene 3.5 and optimized for searching NGram fields) List<String> tokens = getTokens(fieldName, analyzer, value); Term[] terms = new Term[tokens.size()]; int i = 0; for (String token : tokens) terms[i++] = new Term(fieldName, token); filter = filterCache.get(NGRAM, terms); } filters.add(filter); } }
From source file:org.zenoss.zep.index.impl.solr.SolrQueryBuilder.java
private void usePath(String fieldName, Set<String> values) { if (values == null || values.isEmpty()) return;// ww w. j a va 2s.com for (String value : values) { if (value.startsWith("/")) { if (value.endsWith("/")) clauses.add(prefixQuery(nonAnalyzed(fieldName), value)); else if (value.endsWith("*")) clauses.add(prefixQuery(nonAnalyzed(fieldName), StringUtils.trimTrailingCharacter(value, '*'))); else clauses.add(termQuery(nonAnalyzed(fieldName), value)); } else { clauses.add(complexPhraseQuery(fieldName, StringUtils.trimLeadingCharacter(StringUtils.trimTrailingCharacter(value, '*'), '*'))); } } }
From source file:org.zenoss.zep.index.impl.solr.SolrQueryBuilder.java
private void useWildcard(String fieldName, Set<String> values) { if (values == null || values.isEmpty()) return;//from ww w .j ava2s .co m for (String value : values) { // Check for empty string final String tmp_value = StringUtils.trimLeadingCharacter(StringUtils.trimTrailingCharacter(value, '*'), '*'); if (tmp_value.isEmpty()) continue; else { final String unquoted = unquote(tmp_value); if (unquoted.isEmpty()) continue; } clauses.add(escape(fieldName) + ":" + escape(value, USUAL_EXCLUDING_WILDCARDS, true)); } }
From source file:org.zenoss.zep.index.impl.lucene.LuceneQueryBuilder.java
private void buildWildcardFilters(List<Filter> filters, String fieldName, Set<String> values) { if (values == null || values.isEmpty()) return;/* w ww . j a v a2 s. c o m*/ for (String value : values) { // Check for empty string final String tmp_value = StringUtils.trimTrailingCharacter(value, '*'); final String unquoted = unquote(tmp_value); if (tmp_value.isEmpty() || unquoted.isEmpty()) value = unquoted; Term term = new Term(fieldName, value); filters.add(filterCache.get(WILDCARD, term)); } }
From source file:com.idtmatter.insta4j.client.FullInstaClient.java
/** * ReOrders the position of the folders/* w w w . j ava2s .c o m*/ * * @param folderPositionMap A <K,V> map where K = Folder Id and V = position * @return A list of the accounts user-created folders. This only includes organizational folders and does * not include RSS-feed folders or starred-subscription folders, as the implementation of those is changing in the near future */ public List<InstaRecordBean> setFolderOrder(final Map<Integer, Long> folderPositionMap) { final WebResource resource = client.resource(INSTAPAPER_BASE_API_URL).path("/api/1/folders/set_order"); final MultivaluedMap<String, String> postData = new MultivaluedMapImpl(); final StringBuilder stringBuilder = new StringBuilder(); final Set<Integer> folderIds = folderPositionMap.keySet(); for (final Integer folderId : folderIds) { stringBuilder.append( Integer.toString(folderId) + ":" + Long.toString(folderPositionMap.get(folderId)) + ","); } final String ordermap = StringUtils.trimTrailingCharacter(stringBuilder.toString(), ','); if (log.isDebugEnabled()) { log.debug(ordermap); } postData.add("order", ordermap); return processJsonResponse(resource.type(MediaType.APPLICATION_FORM_URLENCODED) .accept(MediaType.APPLICATION_JSON).post(ClientResponse.class, postData)); }