PropertyDescriptor
PropertyDescriptor defines a property that is to be used by a Processor,
ReportingTask, or ControllerService. The definition of a property includes its name, a
description of the property, an optional default value, validation logic, and an indicator
as to whether or not the property is required in order for the Processor to be valid.
PropertyDescriptors are created by instantiating an instance of the
PropertyDescriptor.Builder
class, calling the appropriate methods to
fill in the details about the property, and finally calling the build
method.