當前位置: 首頁>>代碼示例>>Java>>正文


Java Escaper類代碼示例

本文整理匯總了Java中com.google.common.escape.Escaper的典型用法代碼示例。如果您正苦於以下問題:Java Escaper類的具體用法?Java Escaper怎麽用?Java Escaper使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


Escaper類屬於com.google.common.escape包,在下文中一共展示了Escaper類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: create

import com.google.common.escape.Escaper; //導入依賴的package包/類
@Override
public Processor create ( final String configuration ) throws IllegalArgumentException
{
    final FooBarConfiguration cfg = FooBarConfiguration.fromJson ( configuration );

    return new Processor () {

        @Override
        public void process ( final Object context )
        {
            System.out.format ( "Foo bar: %s - %s%n", cfg.getString1 (), context );
        }

        @Override
        public void streamHtmlState ( final PrintWriter writer )
        {
            final Escaper esc = HtmlEscapers.htmlEscaper ();
            writer.format ( "<p>This action is doing foo bar: <code>%s</code></p>", esc.escape ( cfg.getString1 () ) );
        }
    };
}
 
開發者ID:eclipse,項目名稱:packagedrone,代碼行數:22,代碼來源:FooBarProcessorFactory.java

示例2: getAsQuery

import com.google.common.escape.Escaper; //導入依賴的package包/類
public String getAsQuery() {
    StringBuffer sb = new StringBuffer();
    Escaper esc = UrlEscapers.urlFormParameterEscaper();

    if (!Strings.isNullOrEmpty(asset)) {
        sb.append("&asset=").append(esc.escape(asset));
    }
    if (startTime != null) {
        sb.append("&startTime=").append(startTime.getTime());
    }
    if (endTime != null) {
        sb.append("&endTime=").append(endTime.getTime());
    }
    String s = sb.toString();
    return s.length() > 1 ? s.substring(1) : s; // skipping the first &
}
 
開發者ID:webcerebrium,項目名稱:java-binance-api,代碼行數:17,代碼來源:BinanceHistoryFilter.java

示例3: encodePath

import com.google.common.escape.Escaper; //導入依賴的package包/類
public static String encodePath(String path) {
	if (path.isEmpty() || path.equals("/")) {
		return path;
	}
	
	StringBuilder sb = new StringBuilder();
	Escaper escaper = UrlEscapers.urlPathSegmentEscaper();
	Iterable<String> iterable = pathSplitter.split(path);
	Iterator<String> iterator = iterable.iterator();
	while (iterator.hasNext()) {
		String part = iterator.next();
		if (part.isEmpty()) {
			sb.append("/");
			continue;
		}
		
		part = escaper.escape(part);
		sb.append(part);
		if (iterator.hasNext()) {
			sb.append("/");
		}
	}
	
	return sb.toString();
}
 
開發者ID:code4wt,項目名稱:short-url,代碼行數:26,代碼來源:UrlUtils.java

示例4: exportDatabaseAsTable

import com.google.common.escape.Escaper; //導入依賴的package包/類
/** Export as table for statistical software (R, pandas, ...) */ 
public void exportDatabaseAsTable() throws IOException {
    List<FeedArticle> articles = getAllArticles();
    BufferedWriter table = new BufferedWriter(new OutputStreamWriter(
        new FileOutputStream("table.txt"), "UTF-8"));                                
    char delimit = '\t';        
    // to make it readable for pandas read_table, quote strings and remove newlines
    Function<String,String> strProcess = new Function<String,String>() {
      private Escaper rmquote = Escapers.builder().addEscape('"', "").build();        
      private Escaper rmnewline = Escapers.builder().addEscape('\n', "").build();        
      @Override public String apply(String s) {
        if (s == null) s = "";
        s = rmquote.escape(s);
        return new StringBuilder(s.length()+2).append('"').append(s).append('"').toString();
      }
    };       
    table.append(tableHeader(delimit)).append("\n");
    for (FeedArticle art : articles) {
        table.append(toTableRow(art, delimit, strProcess)).append("\n");            
    }
    table.close();
}
 
開發者ID:dkorenci,項目名稱:feedsucker,代碼行數:23,代碼來源:DatabaseTools.java

示例5: add

import com.google.common.escape.Escaper; //導入依賴的package包/類
public Builder add ( final String label, final String targetPattern, final String... pathSegments )
{
    Objects.requireNonNull ( targetPattern );
    Objects.requireNonNull ( pathSegments );

    final Escaper esc = UrlEscapers.urlPathSegmentEscaper ();

    final Object[] encoded = new String[pathSegments.length];
    for ( int i = 0; i < pathSegments.length; i++ )
    {
        encoded[i] = esc.escape ( pathSegments[i] );
    }

    this.entries.add ( new Entry ( label, MessageFormat.format ( targetPattern, encoded ) ) );
    return this;
}
 
開發者ID:eclipse,項目名稱:packagedrone,代碼行數:17,代碼來源:Breadcrumbs.java

示例6: uiReportMentionValueOccurrences

import com.google.common.escape.Escaper; //導入依賴的package包/類
private void uiReportMentionValueOccurrences(final Map<String, Object> model,
        final URI entityID, @Nullable final URI property) throws Throwable {

    // Do nothing in case the entity ID is missing
    if (entityID == null || property == null) {
        return;
    }

    // Compute the # of occurrences of all the values of the given property in entity mentions
    final Multiset<Value> propertyValues = HashMultiset.create();
    for (final Record mention : getEntityMentions(entityID, Integer.MAX_VALUE, null)) {
        propertyValues.addAll(mention.get(property, Value.class));
    }

    // Render the table
    final Escaper esc = UrlEscapers.urlFormParameterEscaper();
    final String linkTemplate = "ui?action=entity-mentions&entity="
            + esc.escape(entityID.stringValue()) + "&property="
            + esc.escape(Data.toString(property, Data.getNamespaceMap()))
            + "&value=${element}";
    model.put("valueOccurrencesTable", RenderUtils.renderMultisetTable(new StringBuilder(),
            propertyValues, "Property value", "# Mentions", linkTemplate));
}
 
開發者ID:dkmfbk,項目名稱:knowledgestore,代碼行數:24,代碼來源:Root.java

示例7: uiReportMentionPropertyOccurrences

import com.google.common.escape.Escaper; //導入依賴的package包/類
private void uiReportMentionPropertyOccurrences(final Map<String, Object> model,
        final URI entityID) throws Throwable {

    // Do nothing in case the entity ID is missing
    if (entityID == null) {
        return;
    }

    // Compute the # of occurrences of each property URI in entity mentions
    final Multiset<URI> propertyURIs = HashMultiset.create();
    for (final Record mention : getEntityMentions(entityID, Integer.MAX_VALUE, null)) {
        propertyURIs.addAll(mention.getProperties());
    }

    // Render the table
    final Escaper esc = UrlEscapers.urlFormParameterEscaper();
    final String linkTemplate = "ui?action=entity-mentions&entity="
            + esc.escape(entityID.stringValue()) + "&property=${element}";
    model.put("propertyOccurrencesTable", RenderUtils.renderMultisetTable(new StringBuilder(),
            propertyURIs, "Property", "# Mentions", linkTemplate));
}
 
開發者ID:dkmfbk,項目名稱:knowledgestore,代碼行數:22,代碼來源:Root.java

示例8: display

import com.google.common.escape.Escaper; //導入依賴的package包/類
public void display(String rule, HttpServletResponse res) throws IOException {
  res.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
  res.setContentType("text/html");
  res.setCharacterEncoding(UTF_8.name());
  CacheHeaders.setNotCacheable(res);

  Escaper html = HtmlEscapers.htmlEscaper();
  try (PrintWriter w = res.getWriter()) {
    w.write("<html><title>BUILD FAILED</title><body>");
    w.format("<h1>%s FAILED</h1>", html.escape(rule));
    w.write("<pre>");
    w.write(html.escape(RawParseUtils.decode(why)));
    w.write("</pre>");
    w.write("</body></html>");
  }
}
 
開發者ID:gerrit-review,項目名稱:gerrit,代碼行數:17,代碼來源:BazelBuild.java

示例9: transform

import com.google.common.escape.Escaper; //導入依賴的package包/類
@Override
public String[] transform(final InputRow inputRow) {
    final String value = inputRow.getValue(column);
    if (value == null) {
        return new String[1];
    }
    final Escaper escaper;
    switch (targetFormat) {
    case FORM_PARAMETER:
        escaper = UrlEscapers.urlFormParameterEscaper();
        break;
    case FRAGMENT:
        escaper = UrlEscapers.urlFragmentEscaper();
        break;
    case PATH_SEGMENT:
        escaper = UrlEscapers.urlPathSegmentEscaper();
        break;
    default:
        throw new UnsupportedOperationException();
    }
    final String escaped = escaper.escape(value);
    return new String[] { escaped };
}
 
開發者ID:datacleaner,項目名稱:DataCleaner,代碼行數:24,代碼來源:UrlEncoderTransformer.java

示例10: buildUrl

import com.google.common.escape.Escaper; //導入依賴的package包/類
public static URL buildUrl(final ConnectionDetails connectionDetails, final String path, final Map<String, String> params) throws MalformedURLException {
    final StringBuilder builder = new StringBuilder();
    if (!connectionDetails.getEndpoint().startsWith("http")) {
        builder.append(connectionDetails.isHttps() ? "https" : "http").append("://");
    }
    builder.append(connectionDetails.getEndpoint());
    if(!path.startsWith("/")) {
        builder.append('/');
    }

    final Escaper urlEscaper = SafeStringManipulation.getDs3Escaper();

    builder.append(urlEscaper.escape(path));

    if(params != null && params.size() > 0) {
        builder.append('?');
        builder.append(urlEscaper.escape(buildQueryString(params)));
    }
    return new URL(builder.toString());
}
 
開發者ID:SpectraLogic,項目名稱:ds3_java_sdk,代碼行數:21,代碼來源:NetUtils.java

示例11: describeOptionsHtml

import com.google.common.escape.Escaper; //導入依賴的package包/類
/**
 * Returns a description of all the options this parser can digest. In addition to {@link Option}
 * annotations, this method also interprets {@link OptionsUsage} annotations which give an
 * intuitive short description for the options.
 */
public String describeOptionsHtml(Escaper escaper, String productName) {
  StringBuilder desc = new StringBuilder();
  LinkedHashMap<OptionDocumentationCategory, List<OptionDefinition>> optionsByCategory =
      getOptionsSortedByCategory();
  ImmutableMap<OptionDocumentationCategory, String> optionCategoryDescriptions =
      OptionFilterDescriptions.getOptionCategoriesEnumDescription(productName);

  for (Entry<OptionDocumentationCategory, List<OptionDefinition>> e :
      optionsByCategory.entrySet()) {
    desc.append("<dl>");
    String categoryDescription = optionCategoryDescriptions.get(e.getKey());
    List<OptionDefinition> categorizedOptionsList = e.getValue();

    // Describe the category if we're going to end up using it at all.
    if (!categorizedOptionsList.isEmpty()) {
      desc.append(escaper.escape(categoryDescription)).append(":\n");
    }
    // Describe the options in this category.
    for (OptionDefinition optionDef : categorizedOptionsList) {
      OptionsUsage.getUsageHtml(optionDef, desc, escaper, impl.getOptionsData(), true);
    }
    desc.append("</dl>\n");
  }
  return desc.toString();
}
 
開發者ID:bazelbuild,項目名稱:bazel,代碼行數:31,代碼來源:OptionsParser.java

示例12: composeObject

import com.google.common.escape.Escaper; //導入依賴的package包/類
@Override
public void composeObject(Iterable<String> source, GcsFilename dest, long timeoutMillis)
    throws IOException {
  StringBuilder xmlContent = new StringBuilder(Iterables.size(source) * 50);
  Escaper escaper = XmlEscapers.xmlContentEscaper();
  xmlContent.append("<ComposeRequest>");
  for (String srcFileName : source) {
    xmlContent.append("<Component><Name>")
        .append(escaper.escape(srcFileName))
        .append("</Name></Component>");
  }
  xmlContent.append("</ComposeRequest>");
  HTTPRequest req = makeRequest(
      dest, COMPOSE_QUERY_STRINGS, PUT, timeoutMillis, xmlContent.toString().getBytes(UTF_8));
  HTTPResponse resp;
  try {
    resp = urlfetch.fetch(req);
  } catch (IOException e) {
    throw createIOException(new HTTPRequestInfo(req), e);
  }
  if (resp.getResponseCode() != 200) {
    throw HttpErrorHandler.error(new HTTPRequestInfo(req), resp);
  }
}
 
開發者ID:GoogleCloudPlatform,項目名稱:appengine-gcs-client,代碼行數:25,代碼來源:OauthRawGcsService.java

示例13: getPathAndQuery

import com.google.common.escape.Escaper; //導入依賴的package包/類
public String getPathAndQuery() {
  String url = this.path;
  boolean isFirst = true;
  for (Map.Entry<String, String> queryParameter : this.queryParameters.entries()) {
    if (isFirst) {
      url += "?";
      isFirst = false;
    } else {
      url += "&";
    }
    Escaper escaper = UrlEscapers.urlFormParameterEscaper();
    url += escaper.escape(queryParameter.getKey()) + "=" + escaper.escape(queryParameter.getValue());
  }

  return url;
}
 
開發者ID:HuygensING,項目名稱:timbuctoo,代碼行數:17,代碼來源:HttpRequest.java

示例14: getPathAndQuery

import com.google.common.escape.Escaper; //導入依賴的package包/類
public String getPathAndQuery() {

    String url = this.path;
    boolean isFirst = true;
    for (Map.Entry<String, String> queryParameter : this.queryParameters.entries()) {
      if (isFirst) {
        url += "?";
        isFirst = false;
      } else {
        url += "&";
      }
      Escaper escaper = UrlEscapers.urlFormParameterEscaper();
      url += escaper.escape(queryParameter.getKey()) + "=" + escaper.escape(queryParameter.getValue());
    }

    return url;
  }
 
開發者ID:HuygensING,項目名稱:timbuctoo,代碼行數:18,代碼來源:HttpRequest.java

示例15: assertBasic

import com.google.common.escape.Escaper; //導入依賴的package包/類
/**
 * Asserts that an escaper behaves correctly with respect to null inputs.
 *
 * @param escaper the non-null escaper to test
 */
public static void assertBasic(Escaper escaper) throws IOException {
  // Escapers operate on characters: no characters, no escaping.
  Assert.assertEquals("", escaper.escape(""));
  // Assert that escapers throw null pointer exceptions.
  try {
    escaper.escape((String) null);
    Assert.fail("exception not thrown when escaping a null string");
  } catch (NullPointerException e) {
    // pass
  }
}
 
開發者ID:zugzug90,項目名稱:guava-mock,代碼行數:17,代碼來源:EscaperAsserts.java


注:本文中的com.google.common.escape.Escaper類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。