Package com.xmlmind.assembly

## Class Profile

- java.lang.Object
- - com.xmlmind.assembly.Profile

-     public final class Profile
      extends Object

  A conditional processing profile.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `Profile.AttributeEntry` | A profiling attribute.

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `char` | `valueSeparator` | The character used to separate "tokens" when the value of a profiling attribute has multiple tokens.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Profile​(char separ)` | Constructs a profile using specified character as a token separator.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `clearEntries()` | Remove all profiling attributes.
    `Profile.AttributeEntry[]` | `getEntries()` | Returns an array containing all profiling attributes.
    `void` | `process​(Document doc)` | Process specified document.
    `void` | `putEntry​(Profile.AttributeEntry entry)` | Add or replace specified profiling attribute.
    `void` | `putEntry​(String attrName, String attrValue)` | Add or replace specified profiling attribute.
    `static String[]` | `splitEffectivityValue​(String value, char separ)` | Utility method: split specified profiling attribute value into multiple "token" using specified separator.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### valueSeparator

          public final char valueSeparator

      The character used to separate "tokens" when the value of a profiling attribute has multiple tokens.

  - ### Constructor Detail

    - #### Profile

          public Profile​(char separ)

      Constructs a profile using specified character as a token separator.
      See Also:
        `valueSeparator`

  - ### Method Detail

    - #### clearEntries

          public void clearEntries()

      Remove all profiling attributes.

    - #### putEntry

          public void putEntry​(String attrName,
                               String attrValue)
                        throws IllegalArgumentException

      Add or replace specified profiling attribute.
      Parameters:
        `attrName` - qualified name (using Clark's notation) of the profiling attribute
        `attrValue` - value, possibly containing multiple "tokens", of the profiling attribute
      Throws:
        `IllegalArgumentException` - if attribute name cannot be parsed or attribute value is null or empty

    - #### splitEffectivityValue

          public static String[] splitEffectivityValue​(String value,
                                                       char separ)

      Utility method: split specified profiling attribute value into multiple "token" using specified separator.

    - #### putEntry

          public void putEntry​(Profile.AttributeEntry entry)

      Add or replace specified profiling attribute.

    - #### getEntries

          public Profile.AttributeEntry[] getEntries()

      Returns an array containing all profiling attributes.

    - #### process

          public void process​(Document doc)

      Process specified document.