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 Details

    • 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 Details

    • getInterceptableComponent

      public ComponentType getInterceptableComponent()
      Specified by:
      getInterceptableComponent in interface org.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint<ConfigType extends MllpEndpointConfiguration,AuditDatasetType extends MllpAuditDataset>
    • getInterceptableConfiguration

      public ConfigType getInterceptableConfiguration()
      Specified by:
      getInterceptableConfiguration in interface org.openehealth.ipf.platform.camel.ihe.core.InterceptableEndpoint<ConfigType extends MllpEndpointConfiguration,AuditDatasetType extends MllpAuditDataset>
    • doCreateProducer

      public org.apache.camel.Producer doCreateProducer() throws Exception
      Returns the original camel-netty producer which will be wrapped into a set of PIX/PDQ-specific interceptors in Endpoint.createProducer().
      Specified by:
      doCreateProducer in interface org.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 Exception
      Returns the original starting point of the camel-netty route which will be wrapped into a set of PIX/PDQ-specific interceptors in Endpoint.createConsumer(Processor).
      Specified by:
      doCreateConsumer in interface org.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:
      getHl7v2TransactionConfiguration in interface Hl7v2ConfigurationHolder<ConfigType extends MllpEndpointConfiguration>
    • getNakFactory

      public NakFactory<AuditDatasetType> getNakFactory()
      Returns transaction-specific ACK and NAK factory.
      Specified by:
      getNakFactory in interface Hl7v2ConfigurationHolder<ConfigType extends MllpEndpointConfiguration>
    • getInteractionId

      public Hl7v2InteractionId<AuditDatasetType> getInteractionId()
      Specified by:
      getInteractionId in interface Hl7v2ConfigurationHolder<ConfigType extends MllpEndpointConfiguration>
    • isSupportSegmentFragmentation

      @ManagedAttribute(description="Support Segment Fragmentation Enabled") public boolean isSupportSegmentFragmentation()
      Returns true if 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:
      configureProperties in interface org.apache.camel.Endpoint
      Overrides:
      configureProperties in class org.apache.camel.support.DefaultEndpoint
    • createExchange

      public org.apache.camel.Exchange createExchange()
      Specified by:
      createExchange in interface org.apache.camel.Endpoint
      Overrides:
      createExchange in class org.apache.camel.support.DefaultEndpoint
    • createExchange

      public org.apache.camel.Exchange createExchange(org.apache.camel.ExchangePattern pattern)
      Specified by:
      createExchange in interface org.apache.camel.Endpoint
      Overrides:
      createExchange in class org.apache.camel.support.DefaultEndpoint
    • createPollingConsumer

      public org.apache.camel.PollingConsumer createPollingConsumer() throws Exception
      Specified by:
      createPollingConsumer in interface org.apache.camel.Endpoint
      Overrides:
      createPollingConsumer in class org.apache.camel.support.DefaultEndpoint
      Throws:
      Exception
    • equals

      public boolean equals(Object object)
      Overrides:
      equals in class org.apache.camel.support.DefaultEndpoint
    • getCamelContext

      public org.apache.camel.CamelContext getCamelContext()
      Specified by:
      getCamelContext in interface org.apache.camel.CamelContextAware
      Specified by:
      getCamelContext in interface org.apache.camel.Endpoint
      Overrides:
      getCamelContext in class org.apache.camel.support.DefaultEndpoint
    • getComponent

      public org.apache.camel.Component getComponent()
      Overrides:
      getComponent in class org.apache.camel.support.DefaultEndpoint
    • getConfiguration

      public org.apache.camel.component.netty.NettyConfiguration getConfiguration()
    • getEndpointKey

      public String getEndpointKey()
      Specified by:
      getEndpointKey in interface org.apache.camel.Endpoint
      Overrides:
      getEndpointKey in class org.apache.camel.support.DefaultEndpoint
    • getEndpointUri

      public String getEndpointUri()
      Specified by:
      getEndpointUri in interface org.apache.camel.Endpoint
      Overrides:
      getEndpointUri in class org.apache.camel.support.DefaultEndpoint
    • getExchangePattern

      public org.apache.camel.ExchangePattern getExchangePattern()
      Specified by:
      getExchangePattern in interface org.apache.camel.Endpoint
      Overrides:
      getExchangePattern in class org.apache.camel.support.DefaultEndpoint
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class org.apache.camel.support.DefaultEndpoint
    • isLenientProperties

      public boolean isLenientProperties()
      Specified by:
      isLenientProperties in interface org.apache.camel.Endpoint
      Overrides:
      isLenientProperties in class org.apache.camel.support.DefaultEndpoint
    • isSingleton

      public boolean isSingleton()
      Specified by:
      isSingleton in interface org.apache.camel.IsSingleton
      Overrides:
      isSingleton in class org.apache.camel.support.DefaultEndpoint
    • setCamelContext

      public void setCamelContext(org.apache.camel.CamelContext camelContext)
      Specified by:
      setCamelContext in interface org.apache.camel.CamelContextAware
      Specified by:
      setCamelContext in interface org.apache.camel.Endpoint
      Overrides:
      setCamelContext in class org.apache.camel.support.DefaultEndpoint
    • setEndpointUriIfNotSpecified

      public void setEndpointUriIfNotSpecified(String value)
      Overrides:
      setEndpointUriIfNotSpecified in class org.apache.camel.support.DefaultEndpoint
    • setExchangePattern

      public void setExchangePattern(org.apache.camel.ExchangePattern exchangePattern)
      Overrides:
      setExchangePattern in class org.apache.camel.support.DefaultEndpoint
    • toString

      public String toString()
      Overrides:
      toString in class org.apache.camel.support.DefaultEndpoint
    • getConfig

      protected ConfigType getConfig()
    • getMllpComponent

      protected ComponentType getMllpComponent()
    • getWrappedEndpoint

      protected org.apache.camel.component.netty.NettyEndpoint getWrappedEndpoint()