Class StandardParameterProviderNode
java.lang.Object
org.apache.nifi.controller.AbstractComponentNode
org.apache.nifi.controller.parameter.StandardParameterProviderNode
- All Implemented Interfaces:
Authorizable,ComponentAuthorizable,ComponentNode,ParameterProviderNode
public class StandardParameterProviderNode
extends AbstractComponentNode
implements ParameterProviderNode
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Stringprivate final List<ParameterGroup> private static final Patternprivate final AtomicReference<ParameterProviderDetails> private final Authorizableprivate final Lockprivate final Set<ParameterContext> private final ReadWriteLockprivate final ControllerServiceLookupprivate final Lock -
Constructor Summary
ConstructorsConstructorDescriptionStandardParameterProviderNode(LoggableComponent<ParameterProvider> parameterProvider, String id, Authorizable parentAuthorizable, ControllerServiceProvider controllerServiceProvider, ValidationContextFactory validationContextFactory, String componentType, String canonicalClassName, ReloadComponent reloadComponent, ExtensionManager extensionManager, ValidationTrigger validationTrigger, boolean isExtensionMissing) StandardParameterProviderNode(LoggableComponent<ParameterProvider> parameterProvider, String id, Authorizable parentAuthorizable, ControllerServiceProvider controllerServiceProvider, ValidationContextFactory validationContextFactory, ReloadComponent reloadComponent, ExtensionManager extensionManager, ValidationTrigger validationTrigger) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddReference(ParameterContext reference) configureParameters(Collection<Parameter> parameters, ParameterGroupConfiguration groupConfiguration) Filters the list of parameters based on the parameter names and sets the sensitivity accordinglyprotected StringvoidfindFetchedParameterGroup(String parameterGroupName) Class<?> getFetchedParametersToApply(Collection<ParameterGroupConfiguration> parameterGroupConfigurations) getFetchedParameterUpdateMap(ParameterContext parameterContext, ParameterGroupConfiguration parameterGroupConfiguration) Using the existing parameters from the ParameterContext and the fetched parameters in the provider, constructs a map from Parameter name to updated Parameter (or null if the parameter has been removed in the fetch).protected ParameterContextbooleanbooleanbooleanvoidvoidremoveReference(ParameterContext reference) voidsetComments(String comment) voidsetParameterProvider(LoggableComponent<ParameterProvider> parameterProvider) toProvidedParameters(Collection<Parameter> parameters) Sets provided = true on all parameters in the listtoString()protected List<ValidationResult> voidverifyCanApplyParameters(Collection<ParameterGroupConfiguration> parameterGroupConfigurations) voidvoidvoidverifyConfiguration(ConfigurationContext context, ComponentLog logger, ExtensionManager extensionManager) voidMethods inherited from class org.apache.nifi.controller.AbstractComponentNode
computeValidationErrors, decrementReferenceCounts, equals, getAdditionalClasspathResources, getAdditionalClasspathResources, getAdditionalClasspathResources, getAnnotationData, getCanonicalClassName, getComponentType, getEffectivePropertyValue, getEffectivePropertyValues, getExtensionManager, getIdentifier, getName, getProperties, getProperty, getPropertyDescriptor, getPropertyDescriptors, getRawPropertyValue, getRawPropertyValues, getReferencedAttributeNames, getReferencedParameterNames, getReloadComponent, getValidationContext, getValidationContextFactory, getValidationErrors, getValidationErrors, getValidationState, getValidationStatus, getValidationStatus, hashCode, incrementReferenceCounts, isClasspathDifferent, isExtensionMissing, isReferencingParameter, isReferencingParameter, isReloadAdditionalResourcesNecessary, isSensitiveDynamicProperty, mapRawValueToEffectiveValue, onParametersModified, onPropertyModified, overwriteProperties, pauseValidationTrigger, performFlowAnalysisOnThis, performValidation, performValidation, performValidation, refreshProperties, reloadAdditionalResourcesIfNecessary, resetValidationState, resumeValidationTrigger, setAdditionalResourcesFingerprint, setAnnotationData, setExtensionMissing, setName, setProperties, validateReferencedControllerServices, verifyCanUpdateBundle, verifyCanUpdateProperties, verifyConfigMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.nifi.authorization.resource.Authorizable
authorize, checkAuthorization, getRequestedResource, isAuthorizedMethods inherited from interface org.apache.nifi.controller.ComponentNode
authorize, checkAuthorization, getAdditionalClasspathResources, getAnnotationData, getCanonicalClassName, getClassLoaderIsolationKey, getComponentType, getEffectivePropertyValue, getEffectivePropertyValues, getIdentifier, getName, getProperties, getProperty, getPropertyDescriptor, getPropertyDescriptors, getRawPropertyValue, getRawPropertyValues, getReferencedAttributeNames, getReferencedParameterNames, getValidationErrors, getValidationStatus, getValidationStatus, isExtensionMissing, isReferencingParameter, isReferencingParameter, isReloadAdditionalResourcesNecessary, isSensitiveDynamicProperty, isSupportsSensitiveDynamicProperties, onParametersModified, pauseValidationTrigger, performValidation, performValidation, performValidation, refreshProperties, reloadAdditionalResourcesIfNecessary, resetValidationState, resumeValidationTrigger, setAnnotationData, setExtensionMissing, setName, setProperties, setProperties, verifyCanUpdateBundle, verifyCanUpdateProperties
-
Field Details
-
PARAMETER_NAME_PATTERN
-
parameterProviderRef
-
serviceLookup
-
rwLock
-
readLock
-
writeLock
-
referencingParameterContexts
-
fetchedParameterGroups
-
comment
-
parentAuthorizable
-
-
Constructor Details
-
StandardParameterProviderNode
public StandardParameterProviderNode(LoggableComponent<ParameterProvider> parameterProvider, String id, Authorizable parentAuthorizable, ControllerServiceProvider controllerServiceProvider, ValidationContextFactory validationContextFactory, ReloadComponent reloadComponent, ExtensionManager extensionManager, ValidationTrigger validationTrigger) -
StandardParameterProviderNode
public StandardParameterProviderNode(LoggableComponent<ParameterProvider> parameterProvider, String id, Authorizable parentAuthorizable, ControllerServiceProvider controllerServiceProvider, ValidationContextFactory validationContextFactory, String componentType, String canonicalClassName, ReloadComponent reloadComponent, ExtensionManager extensionManager, ValidationTrigger validationTrigger, boolean isExtensionMissing)
-
-
Method Details
-
getParentAuthorizable
- Specified by:
getParentAuthorizablein interfaceAuthorizable
-
getResource
- Specified by:
getResourcein interfaceAuthorizable
-
isRestricted
public boolean isRestricted()- Specified by:
isRestrictedin interfaceComponentNode
-
getComponentClass
- Specified by:
getComponentClassin interfaceComponentNode
-
isDeprecated
public boolean isDeprecated()- Specified by:
isDeprecatedin interfaceComponentNode
-
getParameterContext
- Specified by:
getParameterContextin classAbstractComponentNode
-
getComponent
- Specified by:
getComponentin interfaceComponentNode
-
getBundleCoordinate
- Specified by:
getBundleCoordinatein interfaceComponentNode
-
getLogger
- Specified by:
getLoggerin interfaceComponentNode
-
getParameterProvider
- Specified by:
getParameterProviderin interfaceParameterProviderNode
-
setParameterProvider
- Specified by:
setParameterProviderin interfaceParameterProviderNode
-
reload
- Specified by:
reloadin interfaceComponentNode- Throws:
ParameterProviderInstantiationException
-
isValidationNecessary
public boolean isValidationNecessary()- Specified by:
isValidationNecessaryin interfaceComponentNode
-
getParentProcessGroup
- Specified by:
getParentProcessGroupin interfaceComponentNode
-
getConfigurationContext
- Specified by:
getConfigurationContextin interfaceParameterProviderNode
-
verifyModifiable
- Specified by:
verifyModifiablein classAbstractComponentNode- Throws:
IllegalStateException
-
getComments
- Specified by:
getCommentsin interfaceParameterProviderNode
-
setComments
- Specified by:
setCommentsin interfaceParameterProviderNode
-
verifyCanClearState
public void verifyCanClearState()- Specified by:
verifyCanClearStatein interfaceParameterProviderNode
-
toString
- Overrides:
toStringin classAbstractComponentNode
-
getProcessGroupIdentifier
- Specified by:
getProcessGroupIdentifierin interfaceComponentAuthorizable
-
getParameterLookup
- Specified by:
getParameterLookupin interfaceComponentNode
-
getReferences
- Specified by:
getReferencesin interfaceParameterProviderNode
-
addReference
- Specified by:
addReferencein interfaceParameterProviderNode
-
removeReference
- Specified by:
removeReferencein interfaceParameterProviderNode
-
validateConfig
- Specified by:
validateConfigin classAbstractComponentNode
-
verifyCanFetchParameters
public void verifyCanFetchParameters()- Specified by:
verifyCanFetchParametersin interfaceParameterProviderNode
-
fetchParameters
public void fetchParameters()- Specified by:
fetchParametersin interfaceParameterProviderNode
-
findFetchedParameterGroup
- Specified by:
findFetchedParameterGroupin interfaceParameterProviderNode
-
verifyCanApplyParameters
public void verifyCanApplyParameters(Collection<ParameterGroupConfiguration> parameterGroupConfigurations) - Specified by:
verifyCanApplyParametersin interfaceParameterProviderNode
-
verifyCanDelete
public void verifyCanDelete()- Specified by:
verifyCanDeletein interfaceParameterProviderNode
-
verifyConfiguration
public List<ConfigVerificationResult> verifyConfiguration(ConfigurationContext context, ComponentLog logger, ExtensionManager extensionManager) - Specified by:
verifyConfigurationin interfaceParameterProviderNode
-
getFetchedParameterUpdateMap
private Map<String,Parameter> getFetchedParameterUpdateMap(ParameterContext parameterContext, ParameterGroupConfiguration parameterGroupConfiguration) Using the existing parameters from the ParameterContext and the fetched parameters in the provider, constructs a map from Parameter name to updated Parameter (or null if the parameter has been removed in the fetch).- Parameters:
parameterContext- A ParameterContextparameterGroupConfiguration- The configuration for the fetched parameter group- Returns:
- A map from name to Parameter (or null if parameter should be removed)
-
configureParameters
private List<Parameter> configureParameters(Collection<Parameter> parameters, ParameterGroupConfiguration groupConfiguration) Filters the list of parameters based on the parameter names and sets the sensitivity accordingly- Parameters:
parameters- A list of ParametersgroupConfiguration- The user's configuration of the fetched parameters- Returns:
- A list of parameters with the configured sensitivities (only those found in the configuration will be included)
-
toProvidedParameters
Sets provided = true on all parameters in the list- Parameters:
parameters- A list of Parameters- Returns:
- An equivalent list, but with provided = true
-
getParameterGroupConfigurations
- Specified by:
getParameterGroupConfigurationsin interfaceParameterProviderNode
-
getFetchedParametersToApply
public List<ParametersApplication> getFetchedParametersToApply(Collection<ParameterGroupConfiguration> parameterGroupConfigurations) - Specified by:
getFetchedParametersToApplyin interfaceParameterProviderNode
-
determineClasloaderIsolationKey
- Overrides:
determineClasloaderIsolationKeyin classAbstractComponentNode
-