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, CamelContextAware, Endpoint, IsSingleton, Service, ShutdownableService, HasId, StatefulService, 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 Details

    • MllpTransactionEndpoint

      public MllpTransactionEndpoint(MllpTransactionComponent<AuditDatasetType> mllpComponent, org.apache.camel.component.netty.NettyEndpoint wrappedEndpoint, MllpTransactionEndpointConfiguration config)
      Constructor.
      Parameters:
      mllpComponent - MLLP Component instance which is creating this endpoint.
      wrappedEndpoint - The original camel-netty endpoint instance.
      config - Configuration parameters.
  • Method Details

    • createInitialConsumerInterceptorChain

      public List<Interceptor> createInitialConsumerInterceptorChain()
      Specified by:
      createInitialConsumerInterceptorChain in interface InterceptableEndpoint<MllpTransactionEndpointConfiguration,MllpTransactionComponent<AuditDatasetType extends MllpAuditDataset>>
      Returns:
      the initial chain of consumer interceptors for this endpoint
    • createInitialProducerInterceptorChain

      public List<Interceptor> createInitialProducerInterceptorChain()
      Specified by:
      createInitialProducerInterceptorChain in interface InterceptableEndpoint<MllpTransactionEndpointConfiguration,MllpTransactionComponent<AuditDatasetType extends MllpAuditDataset>>
      Returns:
      the initial chain of producer interceptors for this endpoint
    • getAuditContext

      public AuditContext getAuditContext()
      Specified by:
      getAuditContext in interface AuditableEndpoint<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 interface AuditableEndpoint<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 interface AuditableEndpoint<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 interface AuditableEndpoint<AuditDatasetType extends MllpAuditDataset>
      Returns:
      server-side audit strategy instance
    • isSupportUnsolicitedFragmentation

      @ManagedAttribute(description="Support Unsolicited Fragmentation Enabled") public boolean isSupportUnsolicitedFragmentation()
      Returns true 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()
      Returns true 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()