Class Reference

java.lang.Object
org.apache.xbean.recipe.Reference
Direct Known Subclasses:
ReferenceRecipe.WrapperReference

public class Reference extends Object
Reference is a named (lazy) reference from one object to another. This data class is updated when the reference is resolved which can be immedately when the ref is created, or later when an instance with the referenced name is created.

When the reference is resolved, an optional Action will be invoked which is commonly used to update a property on the source object of the reference.

  • Field Details

    • name

      private final String name
    • resolved

      private boolean resolved
    • instance

      private Object instance
    • action

      private Reference.Action action
  • Constructor Details

    • Reference

      public Reference(String name)
      Create a reference to the specified name.
      Parameters:
      name - the name of the referenced object
  • Method Details

    • getName

      public String getName()
      Gets the name of the referenced object.
      Returns:
      name the name of the referenced object
    • isResolved

      public boolean isResolved()
      Has this reference been resolved?
      Returns:
      true if the reference has been resolved; false otherwise
    • get

      public Object get()
      Gets the referenced object instance or null if the reference has not been resolved yet;
      Returns:
      the referenced object instance or null
    • set

      public void set(Object object)
      Sets the referenced object instance. If an action is registered the onSet method is invoked.
      Parameters:
      object - the reference instance
    • setAction

      public void setAction(Reference.Action action)
      Registers an action to invoke when the instance is set. If the instance, has already been set, the onSet method will immedately be invoked.