Class JsMessage.Builder

java.lang.Object
com.google.javascript.jscomp.JsMessage.Builder
Enclosing class:
JsMessage

public static final class JsMessage.Builder extends Object
Contains functionality for creating JS messages. Generates authoritative keys and fingerprints for a message that must stay constant over time.

This implementation correctly processes unnamed messages and creates a key for them that looks like MSG_<fingerprint value>;.

  • Constructor Details Link icon

    • Builder Link icon

      public Builder()
  • Method Details Link icon

    • getKey Link icon

      public String getKey()
      Gets the message's key (e.g. "MSG_HELLO").
    • setKey Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setKey(String key)
      Parameters:
      key - a key that should uniquely identify this message; typically it is the message's name (e.g. "MSG_HELLO").
    • setSourceName Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setSourceName(String sourceName)
      Parameters:
      sourceName - The message's sourceName.
    • appendPart Link icon

      @CanIgnoreReturnValue public JsMessage.Builder appendPart(JsMessage.Part part)
    • appendParts Link icon

      @CanIgnoreReturnValue public JsMessage.Builder appendParts(List<JsMessage.Part> parts)
    • appendJsPlaceholderReference Link icon

      @CanIgnoreReturnValue public JsMessage.Builder appendJsPlaceholderReference(String name)
      Appends a placeholder reference to the message.
      Parameters:
      name - placeholder name in the format used in JS code (lowerCamelCaseWithOptional_12_34)
    • appendCanonicalPlaceholderReference Link icon

      @CanIgnoreReturnValue public JsMessage.Builder appendCanonicalPlaceholderReference(String name)
      Appends a placeholder reference to the message.
      Parameters:
      name - placeholder name in the format used in XML files (UPPER_SNAKE_CASE_12_34)
    • appendStringPart Link icon

      @CanIgnoreReturnValue public JsMessage.Builder appendStringPart(String part)
      Appends a translatable string literal to the message.
    • setPlaceholderNameToExampleMap Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setPlaceholderNameToExampleMap(Map<String,String> map)
    • setPlaceholderNameToOriginalCodeMap Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setPlaceholderNameToOriginalCodeMap(Map<String,String> map)
    • setDesc Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setDesc(@Nullable String desc)
      Sets the description of the message, which helps translators.
    • setMeaning Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setMeaning(@Nullable String meaning)
      Sets the programmer-specified meaning of this message, which forces this message to translate differently.
    • setAlternateId Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setAlternateId(@Nullable String alternateId)
      Sets the alternate message ID, to be used if the primary ID is not yet translated.
    • setIsAnonymous Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setIsAnonymous(boolean isAnonymous)
    • setId Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setId(String id)
    • setIsExternalMsg Link icon

      @CanIgnoreReturnValue public JsMessage.Builder setIsExternalMsg(boolean isExternalMsg)
    • hasParts Link icon

      public boolean hasParts()
      Gets whether at least one part has been appended.
    • getParts Link icon

      public List<JsMessage.Part> getParts()
    • build Link icon

      public JsMessage build()