@Tags(value={"jms","messaging","integration","queue","topic","publish","subscribe"}) @CapabilityDescription(value="Provides a generic service to create vendor specific javax.jms.ConnectionFactory implementations. The Connection Factory can be served once this service is configured successfully.") @DynamicProperty(name="The name of a Connection Factory configuration property.", value="The value of a given Connection Factory configuration property.", description="The properties that are set following Java Beans convention where a property name is derived from the \'set*\' method of the vendor specific ConnectionFactory\'s implementation. For example, \'com.ibm.mq.jms.MQConnectionFactory.setChannel(String)\' would imply \'channel\' property and \'com.ibm.mq.jms.MQConnectionFactory.setTransportType(int)\' would imply \'transportType\' property.", expressionLanguageScope=VARIABLE_REGISTRY) @SeeAlso(classNames={"org.apache.nifi.jms.processors.ConsumeJMS","org.apache.nifi.jms.processors.PublishJMS"}) public class JMSConnectionFactoryProvider extends AbstractControllerService implements JMSConnectionFactoryProviderDefinition, VerifiableControllerService
ConnectionFactory specific to the third party JMS system.
It accomplishes it by adjusting current classpath by adding to it the
additional resources (i.e., JMS client libraries) provided by the user via
JMSConnectionFactoryProperties.JMS_CLIENT_LIBRARIES, allowing it then to create an instance of the
target ConnectionFactory based on the provided
JMSConnectionFactoryProperties.JMS_CONNECTION_FACTORY_IMPL which can be than access via
getConnectionFactory() method.
| Modifier and Type | Field and Description |
|---|---|
protected JMSConnectionFactoryHandler |
delegate |
private static String |
ESTABLISH_CONNECTION |
private static String |
VERIFY_JMS_INTERACTION |
| Constructor and Description |
|---|
JMSConnectionFactoryProvider() |
| Modifier and Type | Method and Description |
|---|---|
private javax.jms.Connection |
createConnection(javax.jms.ConnectionFactory connectionFactory,
List<ConfigVerificationResult> results,
javax.jms.ExceptionListener exceptionListener,
ComponentLog logger) |
private void |
createSession(javax.jms.Connection connection,
List<ConfigVerificationResult> results,
Exception capturedException,
ComponentLog logger) |
javax.jms.ConnectionFactory |
getConnectionFactory() |
protected PropertyDescriptor |
getSupportedDynamicPropertyDescriptor(String propertyDescriptorName) |
protected List<PropertyDescriptor> |
getSupportedPropertyDescriptors() |
void |
onDisabled() |
void |
onEnabled(ConfigurationContext context) |
void |
resetConnectionFactory(javax.jms.ConnectionFactory cachedFactory) |
List<ConfigVerificationResult> |
verify(ConfigurationContext context,
ComponentLog verificationLogger,
Map<String,String> variables) |
abstractClearConfigContext, abstractStoreConfigContext, disabled, enabled, getConfigurationContext, getControllerServiceLookup, getIdentifier, getLogger, getNodeTypeProvider, getProperty, getStateManager, init, initialize, isEnabledcustomValidate, equals, getPropertyDescriptor, getPropertyDescriptors, hashCode, onPropertyModified, toString, validateclone, finalize, getClass, notify, notifyAll, wait, wait, waitinitialize, isStatefulgetIdentifier, getPropertyDescriptor, getPropertyDescriptors, onPropertyModified, validateprivate static final String ESTABLISH_CONNECTION
private static final String VERIFY_JMS_INTERACTION
protected volatile JMSConnectionFactoryHandler delegate
protected List<PropertyDescriptor> getSupportedPropertyDescriptors()
getSupportedPropertyDescriptors in class AbstractConfigurableComponentprotected PropertyDescriptor getSupportedDynamicPropertyDescriptor(String propertyDescriptorName)
getSupportedDynamicPropertyDescriptor in class AbstractConfigurableComponent@OnEnabled public void onEnabled(ConfigurationContext context)
@OnDisabled public void onDisabled()
public javax.jms.ConnectionFactory getConnectionFactory()
getConnectionFactory in interface IJMSConnectionFactoryProviderpublic void resetConnectionFactory(javax.jms.ConnectionFactory cachedFactory)
resetConnectionFactory in interface IJMSConnectionFactoryProviderpublic List<ConfigVerificationResult> verify(ConfigurationContext context, ComponentLog verificationLogger, Map<String,String> variables)
verify in interface VerifiableControllerServiceprivate javax.jms.Connection createConnection(javax.jms.ConnectionFactory connectionFactory,
List<ConfigVerificationResult> results,
javax.jms.ExceptionListener exceptionListener,
ComponentLog logger)
private void createSession(javax.jms.Connection connection,
List<ConfigVerificationResult> results,
Exception capturedException,
ComponentLog logger)
Copyright © 2022 Apache NiFi Project. All rights reserved.