Class FtpProducer

  • All Implemented Interfaces:
    org.ikasan.connector.listener.TransactionCommitFailureListener, org.ikasan.spec.component.endpoint.Producer<org.ikasan.filetransfer.Payload>, org.ikasan.spec.configuration.Configured<FtpProducerConfiguration>, org.ikasan.spec.configuration.ConfiguredResource<FtpProducerConfiguration>, org.ikasan.spec.management.ManagedResource

    public class FtpProducer
    extends java.lang.Object
    implements org.ikasan.spec.component.endpoint.Producer<org.ikasan.filetransfer.Payload>, org.ikasan.spec.management.ManagedResource, org.ikasan.spec.configuration.ConfiguredResource<FtpProducerConfiguration>, org.ikasan.connector.listener.TransactionCommitFailureListener
    FTP Implementation of a producer based on the JCA specification.
    Author:
    Middleware Team
    • Field Detail

      • configuredResourceId

        protected java.lang.String configuredResourceId
        configured resource id
      • activeFileTransferConnectionTemplate

        protected FileTransferConnectionTemplate activeFileTransferConnectionTemplate
        Currently active connection template
      • alternateFileTransferConnectionTemplate

        protected FileTransferConnectionTemplate alternateFileTransferConnectionTemplate
        Alternate template to be used in cases of failure
      • isCriticalOnStartup

        protected boolean isCriticalOnStartup
        determines whether this managed resource failure will fail the startup of the flow
    • Constructor Detail

      • FtpProducer

        public FtpProducer​(org.springframework.transaction.jta.JtaTransactionManager transactionManager,
                           org.ikasan.connector.basefiletransfer.outbound.persistence.BaseFileTransferDao baseFileTransferDao,
                           org.ikasan.connector.util.chunking.model.dao.FileChunkDao fileChunkDao,
                           org.ikasan.connector.base.command.TransactionalResourceCommandDAO transactionalResourceCommandDAO,
                           FileBasedPasswordHelper fileBasedPasswordHelper)
    • Method Detail

      • getConfiguredResourceId

        public java.lang.String getConfiguredResourceId()
        Specified by:
        getConfiguredResourceId in interface org.ikasan.spec.configuration.ConfiguredResource<FtpProducerConfiguration>
      • setConfiguredResourceId

        public void setConfiguredResourceId​(java.lang.String configuredResourceId)
        Specified by:
        setConfiguredResourceId in interface org.ikasan.spec.configuration.ConfiguredResource<FtpProducerConfiguration>
      • invoke

        public void invoke​(org.ikasan.filetransfer.Payload payload)
                    throws org.ikasan.spec.component.endpoint.EndpointException
        Specified by:
        invoke in interface org.ikasan.spec.component.endpoint.Producer<org.ikasan.filetransfer.Payload>
        Throws:
        org.ikasan.spec.component.endpoint.EndpointException
      • switchActiveConnection

        protected void switchActiveConnection()
        Switch the active connection to the other connection template.
      • startManagedResource

        public void startManagedResource()
        Specified by:
        startManagedResource in interface org.ikasan.spec.management.ManagedResource
      • stopManagedResource

        public void stopManagedResource()
        Specified by:
        stopManagedResource in interface org.ikasan.spec.management.ManagedResource
      • isCriticalOnStartup

        public boolean isCriticalOnStartup()
        Specified by:
        isCriticalOnStartup in interface org.ikasan.spec.management.ManagedResource
      • setCriticalOnStartup

        public void setCriticalOnStartup​(boolean isCriticalOnStartup)
        Specified by:
        setCriticalOnStartup in interface org.ikasan.spec.management.ManagedResource
      • setManagedResourceRecoveryManager

        public void setManagedResourceRecoveryManager​(org.ikasan.spec.management.ManagedResourceRecoveryManager managedResourceRecoveryManager)
        Specified by:
        setManagedResourceRecoveryManager in interface org.ikasan.spec.management.ManagedResource
      • getConnectionSpec

        protected FTPConnectionSpec getConnectionSpec()
        Utility method to aid testing of this class
        Returns:
      • commitFailureOccurred

        public void commitFailureOccurred​(org.ikasan.connector.listener.TransactionCommitEvent event)
        Specified by:
        commitFailureOccurred in interface org.ikasan.connector.listener.TransactionCommitFailureListener