Class LiteralPathElement

java.lang.Object
com.bazaarvoice.jolt.common.pathelement.BasePathElement
com.bazaarvoice.jolt.common.pathelement.LiteralPathElement
All Implemented Interfaces:
EvaluatablePathElement, MatchablePathElement, PathElement

public class LiteralPathElement extends BasePathElement implements MatchablePathElement, EvaluatablePathElement
Meant to be an immutable PathElement from a Spec, and therefore shareable across threads running multiple transforms using the same spec.
  • Field Details

    • canonicalForm

      private final String canonicalForm
  • Constructor Details

    • LiteralPathElement

      public LiteralPathElement(String key)
  • Method Details

    • evaluate

      public String evaluate(WalkedPath walkedPath)
      Description copied from interface: EvaluatablePathElement
      Evaluate this key as if it is an write path element.
      Specified by:
      evaluate in interface EvaluatablePathElement
      Parameters:
      walkedPath - "up the tree" list of LiteralPathElements, that may be used by this key as it is computing
      Returns:
      String path element to use for write tree building
    • match

      public MatchedElement match(String dataKey, WalkedPath walkedPath)
      Description copied from interface: MatchablePathElement
      See if this PathElement matches the given dataKey. If it does not match, this method returns null. If this PathElement does match, it returns a LiteralPathElement with subKeys filled in.
      Specified by:
      match in interface MatchablePathElement
      Parameters:
      dataKey - String key value from the input data
      walkedPath - "up the tree" list of LiteralPathElements, that may be used by this key as it is computing its match
      Returns:
      null or a matched LiteralPathElement
    • getCanonicalForm

      public String getCanonicalForm()
      Description copied from interface: PathElement
      Get the canonical form of this PathElement. Really only interesting for the Reference Path element, where it will expand "invalid input: '&'" to "invalid input: '&'0(0)".
      Specified by:
      getCanonicalForm in interface PathElement
      Returns:
      canonical String version of this PathElement