Class MllpEndpoint<ConfigType extends MllpEndpointConfiguration,AuditDatasetType extends MllpAuditDataset,ComponentType extends MllpComponent<ConfigType,AuditDatasetType>>
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.support.DefaultEndpoint
-
- org.openehealth.ipf.platform.camel.ihe.mllp.core.MllpEndpoint<ConfigType,AuditDatasetType,ComponentType>
-
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.CamelContextAware,org.apache.camel.Endpoint,org.apache.camel.IsSingleton,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.HasId,org.apache.camel.StatefulService,org.apache.camel.SuspendableService,org.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint<ConfigType,ComponentType>,Hl7v2ConfigurationHolder<AuditDatasetType>,HL7v2Endpoint<AuditDatasetType>
- Direct Known Subclasses:
MllpDispatchEndpoint,MllpTransactionEndpoint
@ManagedResource(description="Managed IPF MLLP ITI Endpoint") public abstract class MllpEndpoint<ConfigType extends MllpEndpointConfiguration,AuditDatasetType extends MllpAuditDataset,ComponentType extends MllpComponent<ConfigType,AuditDatasetType>> extends org.apache.camel.support.DefaultEndpoint implements org.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint<ConfigType,ComponentType>, HL7v2Endpoint<AuditDatasetType>
A wrapper for standard camel-netty endpoint which provides support for IHE PIX/PDQ-related extensions.- Author:
- Dmytro Rud
-
-
Constructor Summary
Constructors Constructor Description MllpEndpoint(ComponentType mllpComponent, org.apache.camel.component.netty.NettyEndpoint wrappedEndpoint, ConfigType config)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidconfigureProperties(Map options)org.apache.camel.ExchangecreateExchange()org.apache.camel.ExchangecreateExchange(org.apache.camel.ExchangePattern pattern)org.apache.camel.PollingConsumercreatePollingConsumer()org.apache.camel.ConsumerdoCreateConsumer(org.apache.camel.Processor processor)Returns the original starting point of the camel-netty route which will be wrapped into a set of PIX/PDQ-specific interceptors inEndpoint.createConsumer(Processor).org.apache.camel.ProducerdoCreateProducer()Returns the original camel-netty producer which will be wrapped into a set of PIX/PDQ-specific interceptors inEndpoint.createProducer().booleanequals(Object object)org.apache.camel.CamelContextgetCamelContext()StringgetCharsetName()org.apache.camel.ComponentgetComponent()StringgetComponentType()protected ConfigTypegetConfig()org.apache.camel.component.netty.NettyConfigurationgetConfiguration()List<org.openehealth.ipf.platform.camel.ihe.core.InterceptorFactory>getCustomInterceptorFactories()String[]getCustomInterceptorFactoryList()ConsumerDispatchingInterceptorgetDispatcher()StringgetEndpointKey()StringgetEndpointUri()org.apache.camel.ExchangePatterngetExchangePattern()Hl7v2TransactionConfiguration<AuditDatasetType>getHl7v2TransactionConfiguration()Returns transaction configuration.StringgetHost()Hl7v2InteractionId<AuditDatasetType>getInteractionId()ComponentTypegetInterceptableComponent()ConfigTypegetInterceptableConfiguration()protected ComponentTypegetMllpComponent()NakFactory<AuditDatasetType>getNakFactory()Returns transaction-specific ACK and NAK factory.intgetPort()longgetRequestTimeout()intgetSegmentFragmentationThreshold()Returns threshold for segment fragmentation.longgetTimeout()protected org.apache.camel.component.netty.NettyEndpointgetWrappedEndpoint()inthashCode()booleanisLenientProperties()booleanisSingleton()booleanisSupportSegmentFragmentation()Returnstrueif this endpoint supports segment fragmentation.voidsetCamelContext(org.apache.camel.CamelContext camelContext)voidsetEndpointUriIfNotSpecified(String value)voidsetExchangePattern(org.apache.camel.ExchangePattern exchangePattern)StringtoString()-
Methods inherited from class org.apache.camel.support.DefaultEndpoint
configureConsumer, configureExchange, configurePollingConsumer, createAsyncProducer, createEndpointUri, doInit, doStart, doStop, getExceptionHandler, getId, getPollingConsumerBlockTimeout, getPollingConsumerQueueSize, isAutowiredEnabled, isBridgeErrorHandler, isLazyStartProducer, isPollingConsumerBlockWhenFull, isPollingConsumerCopy, setAutowiredEnabled, setBridgeErrorHandler, setComponent, setEndpointUri, setExceptionHandler, setLazyStartProducer, setPollingConsumerBlockTimeout, setPollingConsumerBlockWhenFull, setPollingConsumerCopy, setPollingConsumerQueueSize, setProperties
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doLifecycleChange, doResume, doShutdown, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.camel.Endpoint
configureExchange, createAsyncProducer, getEndpointBaseUri, isSingletonProducer
-
Methods inherited from interface org.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint
createConsumer, createInitialConsumerInterceptorChain, createInitialProducerInterceptorChain, createProducer, getCustomInterceptors
-
-
-
-
Constructor Detail
-
MllpEndpoint
public MllpEndpoint(ComponentType mllpComponent, org.apache.camel.component.netty.NettyEndpoint wrappedEndpoint, ConfigType config)
Constructor.- Parameters:
mllpComponent- MLLP Component instance which is creating this endpoint.wrappedEndpoint- The original camel-netty endpoint instance.config- Configuration parameters.
-
-
Method Detail
-
getInterceptableComponent
public ComponentType getInterceptableComponent()
- Specified by:
getInterceptableComponentin interfaceorg.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint<ConfigType extends MllpEndpointConfiguration,AuditDatasetType extends MllpAuditDataset>
-
getInterceptableConfiguration
public ConfigType getInterceptableConfiguration()
- Specified by:
getInterceptableConfigurationin interfaceorg.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint<ConfigType extends MllpEndpointConfiguration,AuditDatasetType extends MllpAuditDataset>
-
doCreateProducer
public org.apache.camel.Producer doCreateProducer() throws ExceptionReturns the original camel-netty producer which will be wrapped into a set of PIX/PDQ-specific interceptors inEndpoint.createProducer().- Specified by:
doCreateProducerin interfaceorg.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint<ConfigType extends MllpEndpointConfiguration,AuditDatasetType extends MllpAuditDataset>- Throws:
Exception
-
doCreateConsumer
public org.apache.camel.Consumer doCreateConsumer(org.apache.camel.Processor processor) throws ExceptionReturns the original starting point of the camel-netty route which will be wrapped into a set of PIX/PDQ-specific interceptors inEndpoint.createConsumer(Processor).- Specified by:
doCreateConsumerin interfaceorg.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint<ConfigType extends MllpEndpointConfiguration,AuditDatasetType extends MllpAuditDataset>- Parameters:
processor- The original consumer processor.- Throws:
Exception
-
getHl7v2TransactionConfiguration
public Hl7v2TransactionConfiguration<AuditDatasetType> getHl7v2TransactionConfiguration()
Returns transaction configuration.- Specified by:
getHl7v2TransactionConfigurationin interfaceHl7v2ConfigurationHolder<ConfigType extends MllpEndpointConfiguration>
-
getNakFactory
public NakFactory<AuditDatasetType> getNakFactory()
Returns transaction-specific ACK and NAK factory.- Specified by:
getNakFactoryin interfaceHl7v2ConfigurationHolder<ConfigType extends MllpEndpointConfiguration>
-
getInteractionId
public Hl7v2InteractionId<AuditDatasetType> getInteractionId()
- Specified by:
getInteractionIdin interfaceHl7v2ConfigurationHolder<ConfigType extends MllpEndpointConfiguration>
-
isSupportSegmentFragmentation
@ManagedAttribute(description="Support Segment Fragmentation Enabled") public boolean isSupportSegmentFragmentation()
Returnstrueif this endpoint supports segment fragmentation.
-
getSegmentFragmentationThreshold
@ManagedAttribute(description="Segment Fragmentation Threshold") public int getSegmentFragmentationThreshold()
Returns threshold for segment fragmentation.
-
getComponentType
@ManagedAttribute(description="Component Type Name") public String getComponentType()
-
getHost
@ManagedAttribute(description="Netty Host") public String getHost()
-
getPort
@ManagedAttribute(description="Netty Port") public int getPort()
-
getCharsetName
@ManagedAttribute(description="Netty Character Set") public String getCharsetName()
-
getRequestTimeout
@ManagedAttribute(description="Netty Request Timeout") public long getRequestTimeout()
-
getTimeout
@ManagedAttribute(description="Netty Request Timeout") public long getTimeout()
-
getCustomInterceptorFactories
public List<org.openehealth.ipf.platform.camel.ihe.core.InterceptorFactory> getCustomInterceptorFactories()
- Returns:
- the customInterceptorFactories
-
getDispatcher
public ConsumerDispatchingInterceptor getDispatcher()
-
getCustomInterceptorFactoryList
@ManagedAttribute(description="Custom Interceptor Factories") public String[] getCustomInterceptorFactoryList()
- Returns:
- the customInterceptors as array of string names
-
configureProperties
public void configureProperties(Map options)
- Specified by:
configurePropertiesin interfaceorg.apache.camel.Endpoint- Overrides:
configurePropertiesin classorg.apache.camel.support.DefaultEndpoint
-
createExchange
public org.apache.camel.Exchange createExchange()
- Specified by:
createExchangein interfaceorg.apache.camel.Endpoint- Overrides:
createExchangein classorg.apache.camel.support.DefaultEndpoint
-
createExchange
public org.apache.camel.Exchange createExchange(org.apache.camel.ExchangePattern pattern)
- Specified by:
createExchangein interfaceorg.apache.camel.Endpoint- Overrides:
createExchangein classorg.apache.camel.support.DefaultEndpoint
-
createPollingConsumer
public org.apache.camel.PollingConsumer createPollingConsumer() throws Exception- Specified by:
createPollingConsumerin interfaceorg.apache.camel.Endpoint- Overrides:
createPollingConsumerin classorg.apache.camel.support.DefaultEndpoint- Throws:
Exception
-
equals
public boolean equals(Object object)
- Overrides:
equalsin classorg.apache.camel.support.DefaultEndpoint
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()
- Specified by:
getCamelContextin interfaceorg.apache.camel.CamelContextAware- Specified by:
getCamelContextin interfaceorg.apache.camel.Endpoint- Overrides:
getCamelContextin classorg.apache.camel.support.DefaultEndpoint
-
getComponent
public org.apache.camel.Component getComponent()
- Overrides:
getComponentin classorg.apache.camel.support.DefaultEndpoint
-
getConfiguration
public org.apache.camel.component.netty.NettyConfiguration getConfiguration()
-
getEndpointKey
public String getEndpointKey()
- Specified by:
getEndpointKeyin interfaceorg.apache.camel.Endpoint- Overrides:
getEndpointKeyin classorg.apache.camel.support.DefaultEndpoint
-
getEndpointUri
public String getEndpointUri()
- Specified by:
getEndpointUriin interfaceorg.apache.camel.Endpoint- Overrides:
getEndpointUriin classorg.apache.camel.support.DefaultEndpoint
-
getExchangePattern
public org.apache.camel.ExchangePattern getExchangePattern()
- Specified by:
getExchangePatternin interfaceorg.apache.camel.Endpoint- Overrides:
getExchangePatternin classorg.apache.camel.support.DefaultEndpoint
-
hashCode
public int hashCode()
- Overrides:
hashCodein classorg.apache.camel.support.DefaultEndpoint
-
isLenientProperties
public boolean isLenientProperties()
- Specified by:
isLenientPropertiesin interfaceorg.apache.camel.Endpoint- Overrides:
isLenientPropertiesin classorg.apache.camel.support.DefaultEndpoint
-
isSingleton
public boolean isSingleton()
- Specified by:
isSingletonin interfaceorg.apache.camel.IsSingleton- Overrides:
isSingletonin classorg.apache.camel.support.DefaultEndpoint
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext)
- Specified by:
setCamelContextin interfaceorg.apache.camel.CamelContextAware- Specified by:
setCamelContextin interfaceorg.apache.camel.Endpoint- Overrides:
setCamelContextin classorg.apache.camel.support.DefaultEndpoint
-
setEndpointUriIfNotSpecified
public void setEndpointUriIfNotSpecified(String value)
- Overrides:
setEndpointUriIfNotSpecifiedin classorg.apache.camel.support.DefaultEndpoint
-
setExchangePattern
public void setExchangePattern(org.apache.camel.ExchangePattern exchangePattern)
- Overrides:
setExchangePatternin classorg.apache.camel.support.DefaultEndpoint
-
toString
public String toString()
- Overrides:
toStringin classorg.apache.camel.support.DefaultEndpoint
-
getConfig
protected ConfigType getConfig()
-
getMllpComponent
protected ComponentType getMllpComponent()
-
getWrappedEndpoint
protected org.apache.camel.component.netty.NettyEndpoint getWrappedEndpoint()
-
-