Interface ConfigBeanProxy

All Known Subinterfaces:
VersionedConfigBeanProxy

@Customizer(ConfigBeanProxyCustomizer.class) public interface ConfigBeanProxy
Marker interface that signifies that the interface is meant to be used as a strongly-typed proxy to Dom.

To obtain the Dom object, use Dom.unwrap(ConfigBeanProxy). This design allows the interfaces to be implemented by other code outside DOM more easily.

Author:
Kohsuke Kawaguchi
See Also:
  • Method Details

    • getParent

      @Customize default ConfigBeanProxy getParent()
      Returns the parent element of this configuration element.

      It is possible to return a not null parent while the parent knows nothing of this child element. This could happen when the child element was removed from the configuration tree, yet it's parent would not have been reset.

      Returns:
      the parent configuration node.
    • getParent

      @Customize default <T extends ConfigBeanProxy> T getParent(Class<T> type)
      Returns the typed parent element of this configuration element.

      It is possible to return a not null parent while the parent knows nothing of this child element. This could happen when the child element was removed from the configuration tree, yet it's parent would not have been reset.

      Parameters:
      type - parent's type
      Returns:
      the parent configuration node.
    • createChild

      @Customize default <T extends ConfigBeanProxy> T createChild(Class<T> type) throws TransactionFailure
      Creates a child element of this configuration element
      Parameters:
      type - the child element type
      Returns:
      the newly created child instance
      Throws:
      TransactionFailure - when called outside the boundaries of a transaction
    • deepCopy

      @Customize default ConfigBeanProxy deepCopy(ConfigBeanProxy parent) throws TransactionFailure
      Performs a deep copy of this configuration element and returns it. The parent of this configuration must be locked in a transaction and the newly created child will be automatically enrolled in the parent's transaction.
      Parameters:
      parent - the writable copy of the parent
      Returns:
      a deep copy of itself.
      Throws:
      TransactionFailure - if the transaction cannot be completed.