Globale Synchronisierungsmöglichkeit für Jameica / Hibiscus

 
faiteanu
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 53
Dabei seit: 04 / 2021
Betreff:

Globale Synchronisierungsmöglichkeit für Jameica / Hibiscus

 · 
Gepostet: 25.05.2021 - 21:36 Uhr  ·  #1
Hallo Olaf,

mittlerweile gibt es neben Hibiscus noch andere Plugins, die regelmäßig Daten synchronisieren können, wie beispielsweise der DepotViewer mit Wertpapierkursen oder der DocManager mit den Bankdokumenten.
Aktuell hat jedes der Plugins einen eigenen Synchronisieren-Button und als Benutzer muss man jeden davon einzeln anklicken.

Es gibt zwar den SynchronizeJobProvider und SynchronizeJob, den man theoretisch verwenden könnte, aber die sind beide direkt an Hibiscus-Konten gebunden, so dass man sie nicht gut für andere Synchronisierungen verwenden kann.

In Jameica gibt es die AppointmentProviderRegistry, in die sich jedes Plugin für den Kalender einklinken kann. Siehst du eine Chance, so etwas auch für allgemeine Jobs bereit zu stellen?

Viele Grüße,
Fabian
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10780
Dabei seit: 03 / 2005
Betreff:

Re: Globale Synchronisierungsmöglichkeit für Jameica / Hibiscus

 · 
Gepostet: 26.05.2021 - 07:22 Uhr  ·  #2
Die Kontensynchronisierung heisst ja eben so, weil immer der Bezug zu einem Konto da ist. Hierbei muss es sich aber nicht um ein FinTS-fähiges Konto handeln. Die Mashup-Plugins von Sebastian verwenden die API ja auch. Ehrlich gesagt sehe ich keinen Weg, wie man diesen Kontobezug da sinnvoll entfernen oder noch weiter verallgemeinern können sollte. Schließlich wird sie ja auch aus Hibiscus heraus gestartet - eben dort, wo die Konten verwaltet werden.

Bei Wertpapierkursen oder den Bankdokumenten muss doch auch in irgend einer Form ein Konto vorhanden sein?
faiteanu
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 53
Dabei seit: 04 / 2021
Betreff:

Re: Globale Synchronisierungsmöglichkeit für Jameica / Hibiscus

 · 
Gepostet: 26.05.2021 - 22:29 Uhr  ·  #3
Ich habe absichtlich nicht von der Hibiscus-Kontensynchronisierung gesprochen, sondern Synchronisierung allgemein in Jameica.
Der Jameica-Kalender funktioniert ja auch ohne Hibiscus und einzelne Konten.

Bei Wertpapierkursen beispielsweise gibt es kein Konto, es ist auch keines nötig.

Aktuell sieht die Sache so aus:
 


Die entsprechende Listenansicht zusammen mit der jeweils implementierenden Klasse könnte so aussehen:

Girokonto 123, Bank xy | hbci.SynchronizeEngine
Depot 234, Bank xy | hbci.SynchronizeEngine
Girokonto 333, Bank zz| hbci.SynchronizeEngine
Dokumente Account 123, Bank xy | docmanager.SynchronizeEngine
Dokumente Account 444, Telefonanbieter abc | docmanager.SynchronizeEngine
Wertpapierkurse | DepotViewer.SynchronizeEngine

Vorne zeigt man eine Checkbox für jedes Element an und unter der ganzen Liste ist ein einziger Sync-Button.
Ist das nachvollziehbar?
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10780
Dabei seit: 03 / 2005
Betreff:

Re: Globale Synchronisierungsmöglichkeit für Jameica / Hibiscus

 · 
Gepostet: 27.05.2021 - 08:50 Uhr  ·  #4
Zitat geschrieben von faiteanu

Ist das nachvollziehbar?

Ich hatte eigentlich schon richtig verstanden, worum es dir da ging. Ich kann aber nicht den Kontobezug aus der Hibiscus-Synchronisierung heraus operieren und die ganze Synchronisierung nach Jameica verschieben. Dann müssten neben Hibiscus auch die Mashup-Addons und eventuelle noch andere umgebaut werden. Das halte ich für zu aufwändig und steht nicht im Verhältnis zum Aufwand.

Der Abruf für den Depotviewer und die Dokumente beziehen sich doch aber auch auf eine Bank. Dort muss doch dann auch irgend eine Art Konto existieren.

Oder hast du mal eine eigene Implementierung eines SynchronizeBackend ausprobiert? In der Liste der Synchronisierungsaufgaben werden alle Synchronisierungsjobs - ohne explizite Angabe eines Kontos geladen:

Code

    for (SynchronizeBackend backend:backends)
    {
      [...]
      List<SynchronizeJob> jobs = backend.getSynchronizeJobs(null); // fuer alle Konten


Dort müsstest du doch mit einem eigenen SynchronizeBackend eigene SynchronizeJobs liefern können.
Gewählte Zitate für Mehrfachzitierung:   0