Package: org.apache.groovy.swing.binding

## [Java] Class BindPath

- org.apache.groovy.swing.binding.BindPath

-     public class BindPath
      extends Object

  The bind path object. This class represents one "step" in the bind path.

- - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public void` | `addAllListeners(PropertyChangeListener listener, Object newObject, Set updateSet)` Adds all the listeners to the objects in the bind path.
    `` | `public void` | `addListeners(PropertyChangeListener listener, Object newObject, Set updateSet)` Add listeners to a specific object.
    `` | `public TriggerBinding` | `getSyntheticTriggerBinding(Object newObject)` Resolves the synthetic trigger binding that matches the supplied object and property.
    `` | `public void` | `removeListeners()` Remove listeners, believing that our bould flags are accurate and it removes only as declared.
    `` | `public void` | `updateLocalSyntheticProperties(Map<String, TriggerBinding> synthetics)` Refreshes the synthetic trigger bindings that apply to this path segment.
    `` | `public void` | `updatePath(PropertyChangeListener listener, Object newObject, Set updateSet)` Called when we detect a change somewhere down our path.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### public void addAllListeners(PropertyChangeListener listener, Object newObject, Set updateSet)

      Adds all the listeners to the objects in the bind path. This assumes that we are not added as listeners to any of them, hence it is not idempotent.

      Parameters:
        `listener` - This listener to attach.
        `newObject` - The object we should read our property off of.
        `updateSet` - The list of objects we have added listeners to

    - #### public void addListeners(PropertyChangeListener listener, Object newObject, Set updateSet)

      Add listeners to a specific object. Updates the bould flags and update set

      Parameters:
        `listener` - This listener to attach.
        `newObject` - The object we should read our property off of.
        `updateSet` - The list of objects we have added listeners to

    - #### public TriggerBinding getSyntheticTriggerBinding(Object newObject)

      Resolves the synthetic trigger binding that matches the supplied object and property.

      Parameters:
        `newObject` - the current object for this path segment
      Returns:
        the matching trigger binding, or `null`

    - #### public void removeListeners()

      Remove listeners, believing that our bould flags are accurate and it removes only as declared.

    - #### public void updateLocalSyntheticProperties(Map<String, TriggerBinding> synthetics)

      Refreshes the synthetic trigger bindings that apply to this path segment.

      Parameters:
        `synthetics` - all known synthetic trigger bindings

    - #### public void updatePath(PropertyChangeListener listener, Object newObject, Set updateSet)

      Called when we detect a change somewhere down our path. First, check to see if our object is changing. If so remove our old listener Next, update the reference object the children have and recurse Finally, add listeners if we have a different object

      Parameters:
        `listener` - This listener to attach.
        `newObject` - The object we should read our property off of.
        `updateSet` - The list of objects we have added listeners to