Skip to content

Composite components #3270

Open
Open
@jjansenvr

Description

EPIC

Goal

The concept of a composite Senders is the creation create a new FF building Block based on a regular "adapter" (set of pipes and senders).

This will allow us to create an ecosystem with composite senders that can extend our framework with connectors for external systems. currently we would create an adapter or sub adapter and copy this making it difficult to manage versions and reuse.

The newly created Sender (or Pipe) will be implemented by creating a java interface for the documentation and implementation by the Frank developer.

For a reference how this would look check the CmisSender in the frankdoc and frankflow

Description

De refinement van compositSender is gebaseerd op een aantal uitprobeersels en review van deze code

We zijn tot de conclusie gekomen dat we de sender willen definiëren in Java en de achterliggende logica in FF adapter XML (te noemen FF component).
De java code van de sender bevat alle documentatie, interface (input/output attributes en params)
Daarnaast willen we graag de abstractie, compositeSender maken zodat we daar functies kunnen maken om het maken van de specifieke compositeSenders makkelijker te maken.

De eerste poging was om een salesforceSender te creëren (met dank aan Jaco) was het schrijven van een stuk java code (sender) in eerste instatie gebaseerd op de localsender. In de configure worden de waardes in het FF component overschreven en in de send message kunnen eventuele sessionkeys worden doorgegeven

Deze simpelste oplossing bevat nog een paar problemen:

  1. Configure kan niet alles overschrijven (soms is het een referentie naar een
  2. Timing problemen van open en start
  3. Je kan maar een Composit sender gebruiken anders kans op threading problemen

Het verbeterde design om deze problemen op te lossen.

De compositeSenders initialiseert in de configure fase de benodigde FF componenten in een eigen configuratie, elker sender instantie initialiseert daarmee zijn eigen component implementatie

image

Een CompositeSender bijvoorbeeld de SalesForceSender implementeert de CompositeSender (BASE class), deze zorgt ervoor dat de overschrijven attributen makkelijk te benaderen zijn alsmede de implementatie van de daadwerkelijke communicatie tussen de composite sender en de component implementatie.

De salesforceSender zelf bevat de documentatie op bericht param en attribuut niveau.

Aandachtspunten:

  • Minimale ff versie ergens vastleggen en “warning mechanisme”
  • Eco systeem voor composite senders

Tasks

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    • Status

      No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions