Interface NotifiableBinding

All Superinterfaces:
Binding

public interface NotifiableBinding extends Binding
Internal contract every generated Binding implementation provides so Binders#notifyChanged(Object) can route a model mutation to the bindings that observe it. Application code never references this directly -- the Binding interface remains the public handle returned from Binders.bind.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    matches(Object model)
    True when this binding's source object IS model (identity, not equality).
    model.getClass().getName() -- the registry key Binders.notifyChanged uses to find the bindings that care about this model class.

    Methods inherited from interface Binding

    commit, disconnect, getValidator, refresh
  • Method Details

    • modelTypeName

      String modelTypeName()
      model.getClass().getName() -- the registry key Binders.notifyChanged uses to find the bindings that care about this model class. Stored at bind time so it survives obfuscation: the value is whatever getName() returned at bind, which is guaranteed to match notifyChanged's lookup within a single execution.
    • matches

      boolean matches(Object model)
      True when this binding's source object IS model (identity, not equality). The notification fan-out uses identity so multiple independent instances of the same @Bindable class don't refresh each other.