BackingMapPlugin-Plug-in schreiben

Ein BackingMap-Plug-in implementiert die Mix-in-Schnittstelle "BackingMapPlugin", die Sie verwenden können, um erweiterte Funktionen für die Lebenszyklusverwaltung zu erhalten.

Informationen zu diesem Vorgang

Ein vorhandenes BackingMap-Plug-in, das auch die Schnittstelle BackingMapPlugin implementiert, empfängt die erweiterte Gruppe von Lebenszyklusereignissen während der Erstellung und Verwendung automatisch.

Die Schnittstelle BackingMapPlugin stellt Methoden für die Festlegung oder Änderung des Plug-in-Status sowie Methoden für die Selbstüberwachung ausführen des aktuellen Plug-in-Status bereit.

Alle Methoden müssen ordnungsgemäß implementiert werden, und die Laufzeitumgebung von WebSphere eXtreme Scale überprüft das Methodenverhalten unter bestimmten Bedingungen. Nach dem Aufruf der Methode initialize() ruft die Laufzeitumgebung von eXtreme Scale beispielsweise die Methode isInitialized() auf, um sicherzustellen, dass die Initialisierung der Methode erfolgreich abgeschlossen wurde.

Vorgehensweise

  1. Schnittstelle "BackingMapPlugin" implementieren, damit das BackingMapPlugin-Plug-in Benachrichtigungen über wichtige Ereignisse in eXtreme Scale empfängt. Es gibt drei Hauptkategorien von Methoden:
    Eigenschaftsmethoden Zweck
    setBackingMap() Wird aufgerufen, um die BackingMap-Instanz zu definieren, für die das Plug-in verwendet wird.
    getBackingMap() Wird aufgerufen, um die BackingMap-Instanz abzurufen bzw. zu bestätigen, für die das Plug-in verwendet wird.
    Initialisierungsmethoden Zweck
    initialize() Wird aufgerufen, um das BackingMapPlugin-Plug-in zu initialisieren.
    isInitialized() Wird aufgerufen, um den Initialisierungsstatus des Plug-ins abzurufen oder zu bestätigen.
    Vernichtungsmethoden Zweck
    destroy() Wird aufgerufen, um das BackingMapPlugin-Plug-in zu löschen.
    isDestroyed() Wird aufgerufen, um den Löschstatus des Plug-ins abzurufen oder zu bestätigen.

    Weitere Informationen zu diesen Schnittstellen finden Sie in der API-Dokumentation.

  2. BackingMapPlugin-Plug-in mit XML konfigurieren. Angenommen, der Klassenname eines eXtreme-Scale-Loader-Plug-ins ist die Klasse "com.company.org.MyBackingMapPluginLoader", die die Schnittstelle "Loader" und die Schnittstelle BackingMapPlugin implementiert.

    Im folgenden Codebeispiel wird der angepasste Transaktions-Callback, der die erweiterten Lebenszyklusereignisse empfängt, generiert und einer BackingMap hinzugefügt.

    Sie können ein BackingMapPlugin-Plug-in auch mit XML konfigurieren. Der folgende Text muss in der Datei myGrid.xml enthalten sein:

    <?xml version="1.0" encoding="UTF-8" ?>
    <objectGridconfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    	xsi:schemaLocation="http://ibm.com/ws/objectgrid/config ../objectGrid.xsd"
            xmlns="http://ibm.com/ws/objectgrid/config">
        <objectGrids>
            <objectGrid name="myGrid">
                <backingMap name="Book" pluginCollectionRef="myPlugins" />
            </objectGrid>
        </objectGrids>
        <backingMapPluginCollections>
            <backingMapPluginCollection id="myPlugins">
                <bean id="Loader"
                      className="com.company.org.MyBackingMapPluginLoader" />
            </backingMapPluginCollection>
        </backingMapPluginCollections>
    </objectGridConfig>
  3. Datei myGrid.xml dem ObjectGridManager-Plug-in bereitstellen, um die Erstellung dieser Konfiguration zu vereinfachen.

Ergebnisse

Die BackingMap-Instanz, die erstellt wird, hat einen Loader, der BackingMapPlugin-Lebenszyklusereignisse empfängt.