AddonClientFactory

@PublicApi
public final class AddonClientFactory



Stellt ein AddonClient bereit.

Zusammenfassung

Öffentliche Methoden

static AddonClient
getClient(long cloudProjectNumber)

Gibt die Singleton-Instanz von AddonClient zurück.

static AddonClient
getClient(
    long cloudProjectNumber,
    Optional<ExecutorService> backgroundExecutorService,
    Optional<ScheduledExecutorService> scheduledExecutorService
)

Gibt die Singleton-Instanz von AddonClient zurück.

Öffentliche Methoden

getClient

public static AddonClient getClient(long cloudProjectNumber)

Gibt die Singleton-Instanz von AddonClient zurück.

Parameter
long cloudProjectNumber

Die Cloud-Projektnummer des mit der Anwendung verknüpften Google Workspace Marketplace-Add-ons

Löst aus
java.lang.IllegalArgumentException

wenn sich cloudProjectNumber bei allen Aufrufen ändert.

getClient

public static AddonClient getClient(
    long cloudProjectNumber,
    Optional<ExecutorService> backgroundExecutorService,
    Optional<ScheduledExecutorService> scheduledExecutorService
)

Gibt die Singleton-Instanz von AddonClient zurück.

Die Übergabe unterschiedlicher Werte backgroundExecutorService oder scheduledExecutorService für mehrere Aufrufe wird nicht empfohlen und hat keine Auswirkungen.

Wenn für ExecutorService oder ScheduledExecutorService leere optionale Felder angegeben werden, erstellt das SDK stattdessen eigene für Hintergrundaufgaben.

Parameter
long cloudProjectNumber

Die Cloud-Projektnummer des mit der Add-on-App verknüpften Google Workspace Marketplace-Add-ons

Optional<ExecutorService> backgroundExecutorService

Ein Executor für das SDK, um verschiedene interne Aufgaben wie IPC, Callbacks usw. auszulagern. Der Executor sollte einen Thread-Pool der Größe 6 oder höher haben, um eine optimale Leistung zu erzielen. Die Verwendung eines ExecutorService mit einem einzigen Thread führt zu einer schlechten Leistung.

Optional<ScheduledExecutorService> scheduledExecutorService

Ein ScheduledExecutorService für das SDK, um regelmäßige Aufgaben zur Statussynchronisierung auszuführen. Dies kann einen einzelnen Thread haben, ohne die Leistung zu beeinträchtigen.

Löst aus
java.lang.IllegalArgumentException

cloudProjectNumber ist nicht angegeben oder ändert sich bei Aufrufen