T - der konkrete Typ des JobProviders.SynchronizeBackendHBCISynchronizeBackend, ScriptingSynchronizeBackendpublic abstract class AbstractSynchronizeBackend<T extends SynchronizeJobProvider> extends java.lang.Object implements SynchronizeBackend
| Modifier and Type | Class | Description |
|---|---|---|
protected class |
AbstractSynchronizeBackend.JobGroup |
Abstrakte Basis-Klasse, die die Jobs nach Konten gruppiert und ausfuehrt.
|
protected class |
AbstractSynchronizeBackend.Synchronization |
Container fuer alle auszufuehrenden Jobs gruppiert nach Konto.
|
protected class |
AbstractSynchronizeBackend.Worker |
Implementierung des eigentlichen Worker-Threads.
|
| Modifier and Type | Field | Description |
|---|---|---|
protected static de.willuhn.util.I18N |
i18n |
|
protected AbstractSynchronizeBackend.Worker |
worker |
QUEUE_ERROR, QUEUE_STATUS| Constructor | Description |
|---|---|
AbstractSynchronizeBackend() |
| Modifier and Type | Method | Description |
|---|---|---|
<R> R |
create(java.lang.Class<? extends SynchronizeJob> type,
Konto konto) |
Liefert eine Instanz des angegebenen Job-Typs.
|
protected abstract AbstractSynchronizeBackend.JobGroup |
createJobGroup(Konto k) |
Muss ueberschrieben werden, um dort eine Instanz der JobGroup zurueckzuliefern,
in der die sync()-Funktion implementiert ist.
|
SynchronizeSession |
execute(java.util.List<SynchronizeJob> jobs) |
Fuehrt die uebergebenen Jobs auf dem Backend aus.
|
SynchronizeSession |
getCurrentSession() |
Liefert die aktuelle Session oder NULL wenn gerade keine laeuft.
|
protected java.lang.Class<? extends SynchronizeJob> |
getImplementor(java.lang.Class<? extends SynchronizeJob> type,
Konto konto) |
Liefert die passende Implementierung fuer den angegebenen Job.
|
protected abstract java.lang.Class<T> |
getJobProviderInterface() |
Liefert das Marker-Interface der Job-Provider des Backends.
|
protected java.util.List<T> |
getJobProviders() |
Liefert unsere Job-Provider.
|
java.util.List<java.lang.String> |
getPropertyNames(Konto k) |
Liefert eine optionale Liste mit Property-Namen, die in Hibiscus
in den Sync-Einstellungen als Eingabefelder fuer zusaetzliche Konfigurationsoptionen
angezeigt werden sollen.
|
java.util.List<SynchronizeJob> |
getSynchronizeJobs(Konto k) |
Liefert eine Liste der auszufuehrenden Synchronisierungsjobs auf dem angegebenen Konto.
|
java.util.List<Konto> |
getSynchronizeKonten(Konto k) |
Liefert eine Liste der Konten, fuer die die Synchronisierung ausgefuehrt
werden.
|
boolean |
supports(java.lang.Class<? extends SynchronizeJob> type,
Konto konto) |
Liefert true, wenn das Backend den angegebenen Job-Typ fuer das angegebene Konto unterstuetzt.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetNameprotected static final de.willuhn.util.I18N i18n
protected AbstractSynchronizeBackend.Worker worker
public java.util.List<Konto> getSynchronizeKonten(Konto k)
k - das Konto.protected abstract java.lang.Class<T> getJobProviderInterface()
protected abstract AbstractSynchronizeBackend.JobGroup createJobGroup(Konto k)
k - das Konto der Gruppe.protected java.util.List<T> getJobProviders()
protected java.lang.Class<? extends SynchronizeJob> getImplementor(java.lang.Class<? extends SynchronizeJob> type, Konto konto)
type - der Typ des Jobs.konto - das Konto, fuer das der Job gesucht wird.public <R> R create(java.lang.Class<? extends SynchronizeJob> type, Konto konto) throws de.willuhn.util.ApplicationException
SynchronizeBackendcreate in interface SynchronizeBackendtype - der zu erstellende Job-Typ.konto - das Konto.de.willuhn.util.ApplicationException - bei einem Anwendungsfehler.Kann ueberschrieben werden, um weitere Checks durchzufuehren oder weitere Context-Properties im Job zu setzen.public boolean supports(java.lang.Class<? extends SynchronizeJob> type, Konto konto)
SynchronizeBackendsupports in interface SynchronizeBackendtype - der zu pruefende Job-Typ.konto - das Konto.Kann ueberschrieben werden, um weitere Checks durchzufuehren.public final java.util.List<SynchronizeJob> getSynchronizeJobs(Konto k)
SynchronizeBackendgetSynchronizeJobs in interface SynchronizeBackendk - das Konto.
Wenn kein Konto angegeben ist, werden die Jobs aller Konten zurueckgeliefert.SynchronizeBackend.getSynchronizeJobs(de.willuhn.jameica.hbci.rmi.Konto)public java.util.List<java.lang.String> getPropertyNames(Konto k)
SynchronizeBackendgetPropertyNames in interface SynchronizeBackendk - das Konto.SynchronizeBackend.getPropertyNames(de.willuhn.jameica.hbci.rmi.Konto)public SynchronizeSession execute(java.util.List<SynchronizeJob> jobs) throws de.willuhn.util.ApplicationException, de.willuhn.jameica.system.OperationCanceledException
SynchronizeBackendexecute in interface SynchronizeBackendjobs - die auszufuehrenden Jobs.de.willuhn.util.ApplicationException - bei einem Anwendungsfehler.de.willuhn.jameica.system.OperationCanceledException - wenn der User die Synchronisierung abgebrochen hat.Kann ueberschrieben werden, um weitere Checks durchzufuehren.public final SynchronizeSession getCurrentSession()
SynchronizeBackendgetCurrentSession in interface SynchronizeBackendSynchronizeBackend.getCurrentSession()