Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
If scripted properties are removed from a script in InvokeScriptedProcessor, they do not become unsupported properties when the script is reloaded. For example, load the following script:
class GroovyProcessor implements Processor {
def ComponentLog log
def REL_SUCCESS = new Relationship.Builder().name("success")
.description("FlowFiles that were successfully processed").build()
@Override
Set<Relationship> getRelationships()
def PASS = new PropertyDescriptor.Builder().name('Password')
.required(true).sensitive(true).addValidator(Validator.VALID).build()
def NS_USER = new PropertyDescriptor.Builder().name('NS Username')
.required(true).sensitive(false).addValidator(Validator.VALID).build()
@Override
List<PropertyDescriptor> getPropertyDescriptors()
@Override
PropertyDescriptor getPropertyDescriptor(String name) {
switch(name)
}
@Override
void onTrigger(ProcessContext context, ProcessSessionFactory sessionFactory) throws ProcessException {
try
catch (e)
{ throw new ProcessException(e) }}
@Override
void initialize(ProcessorInitializationContext context)
@Override
Collection<ValidationResult> validate(ValidationContext context)
@Override
void onPropertyModified(PropertyDescriptor descriptor, String oldValue, String newValue) { }
@Override
String getIdentifier() { return null }
}
processor = new GroovyProcessor()
Then go back into the configuration dialog and remove one of the properties, then click Apply. The removed property should now be an unsupported property (not a dynamic property).
Attachments
Issue Links
- links to