org.apache.tapestry5.internal.services

## Class ContextPathEncoderImpl

- java.lang.Object
- - org.apache.tapestry5.internal.services.ContextPathEncoderImpl

- All Implemented Interfaces:
    ContextPathEncoder

      public class ContextPathEncoderImpl
      extends Object
      implements ContextPathEncoder

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ContextPathEncoderImpl(ContextValueEncoder valueEncoder, URLEncoder urlEncoder, TypeCoercer typeCoercer)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `EventContext` | `decodePath(String path)` Inverse of `ContextPathEncoder.encodeIntoPath(Object[])`; the path is split into strings, and the string are decoded and constructed into an `EventContext`.
    `String` | `encodeIntoPath(EventContext context)` Encodes the context into a string.
    `String` | `encodeIntoPath(Object[] context)` Encodes the context values into a path string.
    `String` | `encodeValue(Object value)` Encodes a single value via the `ContextValueEncoder` service, returning the resulting string.

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

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

- - ### Constructor Detail

    - #### ContextPathEncoderImpl

          public ContextPathEncoderImpl(ContextValueEncoder valueEncoder,
                                URLEncoder urlEncoder,
                                TypeCoercer typeCoercer)

  - ### Method Detail

    - #### encodeValue

          public String encodeValue(Object value)

      Description copied from interface: `ContextPathEncoder`
      Encodes a single value via the `ContextValueEncoder` service, returning the resulting string. Even null is encoded, as per `URLEncoder.encode(String)`.
      Specified by:
        `encodeValue` in interface `ContextPathEncoder`

    - #### encodeIntoPath

          public String encodeIntoPath(Object[] context)

      Description copied from interface: `ContextPathEncoder`
      Encodes the context values into a path string. Each context value (if non-null) is first value encoded into a string via the `ContextValueEncoder` service. Those values are then encoded, via `URLEncoder.encode(String)` into URL-safe strings. The URL-safe strings are then concatenated together, separated with "/" characters.
      Specified by:
        `encodeIntoPath` in interface `ContextPathEncoder`
      Parameters:
        `context` - an array of objects to encode as the context (may be null)
      Returns:
        the path-encoded context, or the blank string if the context is empty

    - #### encodeIntoPath

          public String encodeIntoPath(EventContext context)

      Description copied from interface: `ContextPathEncoder`
      Encodes the context into a string. Returns the empty string if the context is empty.
      Specified by:
        `encodeIntoPath` in interface `ContextPathEncoder`
      Parameters:
        `context` - to encode
      Returns:
        encoded values separated by "/" characters, or the empty string

    - #### decodePath

          public EventContext decodePath(String path)

      Description copied from interface: `ContextPathEncoder`
      Inverse of `ContextPathEncoder.encodeIntoPath(Object[])`; the path is split into strings, and the string are decoded and constructed into an `EventContext`.
      Specified by:
        `decodePath` in interface `ContextPathEncoder`
      Parameters:
        `path` - to decode, possibly empty or null
      Returns:
        corresponding event context

${project.version} - Copyright © 2003-2014 The Apache Software Foundation.