Uploaded image for project: 'OFBiz'
  1. OFBiz
  2. OFBIZ-10245

File transfer management with communicationEvent and new contactMech FTP_ADDRESS

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: Upcoming Branch
    • Component/s: content, party
    • Labels:
      None

      Description

      This Jira introduce a new way to manage file transfer in OFBiz.

      Inspired by mailing communication event management, a new communicationEventTypeId is created ('FILE_TRANSFER_COMM').

      Such commEvent with classics : partyIdFrom/partyIdTo/contactMechIdTo/entryDate etc. are analysed by a job (like sendEmailDated), to send associated contents to a configured FTP/SFTP/FTPS server. If failure happens, it is catched and stored in communicationEvent, waiting for a new try.

      For this purpose :

      1. A new contactMechTypeId is introduced (FtpAddress), with its corresponding table. This contactMech store needed information for basic user/password authentication (server url and protocol, port, username, password, etc.)
      2. A new service sendFileTransferDated (wip) that will look for pending file transfer and call following service.
      3. A new service sendCommEventAsFtp that take a selected commEvent, check its structure and manage its status after trying the associated content file transfers
      4. A new service sendContentToFtp, that take a content and transfer it to a given FtpAddress
      5. A seca createCommEventFromFtpTransfer on sendContentToFtp to manage plural content file transfer, creating children communicationEvent to follow each content transfer separately (only for several content transfers).
      6. A new Interface FtpClientInterface, with the 3 implementations of FTP, FTPS (To be Done), SFTP clients to manage Ftp connection and transfer
      7. A new property file to enable and manage redirection for testing purpose

      With this implementation, creating a communicationEvent, with a FtpAddress contactMechIdTo, and sendFileTransferDated job planned :

      • The file is transfered to the ftp : communication event status set to COM_COMPLETE
      • Error occured : communication event status set to COM_BOUNCED with error message on communicationEvent note

      The POC is working nicely for our customer, i adapted and tested it on trunk here : https://labs.nereide.fr/10031/Communautaire/compare/trunk...SendCommEventToFtp (some more job to be done, but in a working state)

      I can provide the current patch on demand but i will propose more polished work in some days.

      Looking forward reading you !

        Attachments

        1. OFBIZ-10245.patch
          71 kB
          Gil Portenseigne
        2. OFBIZ-10245-update-fields-2.patch
          7 kB
          Gil Portenseigne
        3. OFBIZ-10245-update-fileds.patch
          6 kB
          Deepak Dixit

          Activity

            People

            • Assignee:
              gil portenseigne Gil Portenseigne
              Reporter:
              gil portenseigne Gil Portenseigne
            • Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: