- Enclosing interface:
Flags that the factory can return to control aspects of the extension framework.
Enum Constant Details
NON_VIRTUAL_FACTORYpublic static final ExtensionFactory.FactoryFlag NON_VIRTUAL_FACTORYThe factory provides a concrete instance to back the extension type.
Unless this flag is present, factories do not create an object to attach to but register method handlers for every method on an extension type.
E.g. the SQLObject handler is an example of a virtual factory that processes every method in an interface class without requiring an implementation of the extension type. The extension framework will execute the method handlers and pass in a proxy object instead of an underlying instance.
When this flag is present, the
ExtensionFactory.attach(Class, HandleSupplier)method will never be called.
DONT_USE_PROXYpublic static final ExtensionFactory.FactoryFlag DONT_USE_PROXYDo not wrap the backing object methods into
ExtensionHandlerinstances and return a
Proxyinstance but return it as is. This allows the factory to suport class objects as well as interfaces.
This is a corner use case and should normally not be used by any standard extension.
Legacy extension factories that need every method on an interface forwarded to the underlying implementation class can set this flag to bypass the proxy logic of the extension framework.
valuespublic static ExtensionFactory.FactoryFlag values()Returns an array containing the constants of this enum type, in the order they are declared.
- an array containing the constants of this enum type, in the order they are declared
valueOfReturns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)