Class MllpTransactionEndpoint<AuditDatasetType extends MllpAuditDataset>
- 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<MllpTransactionEndpointConfiguration,AuditDatasetType,MllpTransactionComponent<AuditDatasetType>>
-
- org.openehealth.ipf.platform.camel.ihe.mllp.core.MllpTransactionEndpoint<AuditDatasetType>
-
- 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
,AuditableEndpoint<AuditDatasetType>
,InterceptableEndpoint<MllpTransactionEndpointConfiguration,MllpTransactionComponent<AuditDatasetType>>
,Hl7v2ConfigurationHolder<AuditDatasetType>
,HL7v2Endpoint<AuditDatasetType>
public class MllpTransactionEndpoint<AuditDatasetType extends MllpAuditDataset> extends MllpEndpoint<MllpTransactionEndpointConfiguration,AuditDatasetType,MllpTransactionComponent<AuditDatasetType>> implements AuditableEndpoint<AuditDatasetType>
Camel endpoint for MLLP-based eHealth transactions (like IHE PIX, PDQ, XAD-PID, etc.).- Author:
- Dmytro Rud
-
-
Constructor Summary
Constructors Constructor Description MllpTransactionEndpoint(MllpTransactionComponent<AuditDatasetType> mllpComponent, org.apache.camel.component.mina.MinaEndpoint wrappedEndpoint, MllpTransactionEndpointConfiguration config)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<Interceptor>
createInitialConsumerInterceptorChain()
List<Interceptor>
createInitialProducerInterceptorChain()
AuditContext
getAuditContext()
AuditStrategy<AuditDatasetType>
getClientAuditStrategy()
Returns client-side audit strategy instance.int
getInteractiveContinuationDefaultThreshold()
Returns default threshold for interactive continuation (relevant on consumer side only).InteractiveContinuationStorage
getInteractiveContinuationStorage()
Returns the interactive continuation storage bean.String
getInteractiveContinuationStorageType()
AuditStrategy<AuditDatasetType>
getServerAuditStrategy()
Returns server-side audit strategy instance.UnsolicitedFragmentationStorage
getUnsolicitedFragmentationStorage()
Returns the unsolicited fragmentation storage bean.String
getUnsolicitedFragmentationStorageType()
int
getUnsolicitedFragmentationThreshold()
Returns threshold for unsolicited message fragmentation (relevant on producer side only).boolean
isAudit()
Returns true when ATNA auditing should be performed.boolean
isAutoCancel()
Returns true, when the producer should automatically send a cancel message after it has collected all interactive continuation pieces.boolean
isSupportInteractiveContinuation()
Returnstrue
if this endpoint supports interactive continuation.boolean
isSupportUnsolicitedFragmentation()
Returnstrue
if this endpoint supports unsolicited message fragmentation.-
Methods inherited from class org.openehealth.ipf.platform.camel.ihe.mllp.core.MllpEndpoint
configureProperties, createExchange, createExchange, createPollingConsumer, doCreateConsumer, doCreateProducer, equals, getCamelContext, getCharsetName, getClientAuthType, getClientAuthTypeClass, getComponent, getComponentType, getConfig, getConfiguration, getCustomInterceptorFactories, getCustomInterceptorFactoryList, getDispatcher, getEndpointKey, getEndpointUri, getExchangePattern, getHl7v2TransactionConfiguration, getHost, getInteractionId, getInterceptableComponent, getInterceptableConfiguration, getIoFilters, getMllpComponent, getNakFactory, getPort, getSegmentFragmentationThreshold, getSslCiphers, getSslContext, getSslProtocols, getTimeout, getWrappedEndpoint, hashCode, isLenientProperties, isSingleton, isSslSecure, isSupportSegmentFragmentation, setCamelContext, setEndpointUriIfNotSpecified, setExchangePattern, toString
-
Methods inherited from class org.apache.camel.support.DefaultEndpoint
configureConsumer, configurePollingConsumer, createAsyncProducer, createEndpointUri, doInit, doStart, doStop, getExceptionHandler, getId, getPollingConsumerBlockTimeout, getPollingConsumerQueueSize, isAutowiredEnabled, isBridgeErrorHandler, isLazyStartProducer, isPollingConsumerBlockWhenFull, isSynchronous, setAutowiredEnabled, setBridgeErrorHandler, setComponent, setEndpointUri, setExceptionHandler, setLazyStartProducer, setPollingConsumerBlockTimeout, setPollingConsumerBlockWhenFull, setPollingConsumerQueueSize, setProperties, setSynchronous
-
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
configureProperties, createAsyncProducer, createExchange, createExchange, createPollingConsumer, getCamelContext, getEndpointBaseUri, getEndpointKey, getEndpointUri, isLenientProperties, isSingletonProducer, setCamelContext
-
Methods inherited from interface org.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint
createConsumer, createProducer, getCustomInterceptors
-
-
-
-
Constructor Detail
-
MllpTransactionEndpoint
public MllpTransactionEndpoint(MllpTransactionComponent<AuditDatasetType> mllpComponent, org.apache.camel.component.mina.MinaEndpoint wrappedEndpoint, MllpTransactionEndpointConfiguration config)
Constructor.- Parameters:
mllpComponent
- MLLP Component instance which is creating this endpoint.wrappedEndpoint
- The original camel-mina endpoint instance.config
- Configuration parameters.
-
-
Method Detail
-
createInitialConsumerInterceptorChain
public List<Interceptor> createInitialConsumerInterceptorChain()
- Specified by:
createInitialConsumerInterceptorChain
in interfaceInterceptableEndpoint<MllpTransactionEndpointConfiguration,MllpTransactionComponent<AuditDatasetType extends MllpAuditDataset>>
- Returns:
- the initial chain of consumer interceptors for this endpoint
-
createInitialProducerInterceptorChain
public List<Interceptor> createInitialProducerInterceptorChain()
- Specified by:
createInitialProducerInterceptorChain
in interfaceInterceptableEndpoint<MllpTransactionEndpointConfiguration,MllpTransactionComponent<AuditDatasetType extends MllpAuditDataset>>
- Returns:
- the initial chain of producer interceptors for this endpoint
-
getAuditContext
public AuditContext getAuditContext()
- Specified by:
getAuditContext
in interfaceAuditableEndpoint<AuditDatasetType extends MllpAuditDataset>
- Returns:
- audit context to be used for this endpoint
-
isAudit
@ManagedAttribute(description="Audit Enabled") public boolean isAudit()
Returns true when ATNA auditing should be performed.- Specified by:
isAudit
in interfaceAuditableEndpoint<AuditDatasetType extends MllpAuditDataset>
- Returns:
- true when ATNA auditing should be performed.
-
getClientAuditStrategy
public AuditStrategy<AuditDatasetType> getClientAuditStrategy()
Description copied from interface:AuditableEndpoint
Returns client-side audit strategy instance.- Specified by:
getClientAuditStrategy
in interfaceAuditableEndpoint<AuditDatasetType extends MllpAuditDataset>
- Returns:
- client-side audit strategy instance
-
getServerAuditStrategy
public AuditStrategy<AuditDatasetType> getServerAuditStrategy()
Description copied from interface:AuditableEndpoint
Returns server-side audit strategy instance.- Specified by:
getServerAuditStrategy
in interfaceAuditableEndpoint<AuditDatasetType extends MllpAuditDataset>
- Returns:
- server-side audit strategy instance
-
isSupportUnsolicitedFragmentation
@ManagedAttribute(description="Support Unsolicited Fragmentation Enabled") public boolean isSupportUnsolicitedFragmentation()
Returnstrue
if this endpoint supports unsolicited message fragmentation.
-
getUnsolicitedFragmentationThreshold
@ManagedAttribute(description="Unsolicited Fragmentation Threshold") public int getUnsolicitedFragmentationThreshold()
Returns threshold for unsolicited message fragmentation (relevant on producer side only).
-
getUnsolicitedFragmentationStorage
public UnsolicitedFragmentationStorage getUnsolicitedFragmentationStorage()
Returns the unsolicited fragmentation storage bean.
-
getUnsolicitedFragmentationStorageType
@ManagedAttribute(description="Unsolicited Fragmentation Storage Cache Type") public String getUnsolicitedFragmentationStorageType()
-
isSupportInteractiveContinuation
@ManagedAttribute(description="Support Interactive Continuation Enabled") public boolean isSupportInteractiveContinuation()
Returnstrue
if this endpoint supports interactive continuation.
-
getInteractiveContinuationDefaultThreshold
@ManagedAttribute(description="Interactive Continuation Default Threshold") public int getInteractiveContinuationDefaultThreshold()
Returns default threshold for interactive continuation (relevant on consumer side only).This value will be used when interactive continuation is generally supported by this endpoint and is particularly applicable for the current response message, and the corresponding request message does not set the records count threshold explicitly (RCP-2-1==integer, RCP-2-2=='RD').
-
getInteractiveContinuationStorage
public InteractiveContinuationStorage getInteractiveContinuationStorage()
Returns the interactive continuation storage bean.
-
isAutoCancel
@ManagedAttribute(description="Auto Cancel Enabled") public boolean isAutoCancel()
Returns true, when the producer should automatically send a cancel message after it has collected all interactive continuation pieces.
-
getInteractiveContinuationStorageType
@ManagedAttribute(description="Interactive Continuation Storage Cache Type") public String getInteractiveContinuationStorageType()
-
-