Exposing Processor Properties
Most Processors will require some amount of user configuration before they are able to be used. The properties that a Processor supports are exposed to the Framework via the
getSupportedPropertyDescriptors method. This method takes no arguments and returns a
PropertyDescriptor objects. The order of the objects in the List is important in that it dictates the order in which the properties will be rendered in the User Interface.
PropertyDescriptor object is constructed by creating a new instance of the
PropertyDescriptor.Builder object, calling the appropriate methods on the builder, and finally calling the
While this method covers most of the use cases, it is sometimes desirable to allow users to configure additional properties whose name are not known. This can be achieved by overriding the
getSupportedDynamicPropertyDescriptor method. This method takes a
String as its only argument, which indicates the name of the property. The method returns a
PropertyDescriptor object that can be used to validate both the name of the property, as well as the value. Any PropertyDescriptor that is returned from this method should be built setting the value of
isDynamic to true in the
PropertyDescriptor.Builder class. The default behavior of AbstractProcessor is to not allow any dynamically created properties.