Gravando um Plug-in BackingMapPlugin

Um plug-in BackingMap implementa a interface combinada do BackingMapPlugin,que pode ser usada para receber os recursos estendidos para gerenciar seu ciclo de vida.

Sobre Esta Tarefa

Qualquer plug-in BackingMap existente que também implementar a interface BackingMapPlugin receberá automaticamente o conjunto estendido de eventos de ciclo de vida durante a construção e uso.

A interface BackingMapPlugin fornece métodos para configurar ou modificar o estado do plug-in, bem como métodos para examinar o estado atual do plug-in.

Todos os métodos devem ser implementados corretamente e o ambiente de tempo de execução do WebSphere eXtreme Scale verifica o comportamento do método sob determinadas circunstâncias. Por exemplo, depois de chamar o método initialize(), o ambiente de tempo de execução do eXtreme Scale chama o método isInitialized() para assegurar que o método concluiu com êxito a inicialização apropriada.

Procedimento

  1. Implemente a interface BackingMapPlugin para que o plug-in BackingMapPlugin receba notificações sobre eventos significativos do eXtreme Scale. Há três categorias principais de métodos a seguir:
    Métodos de propriedades Propósito
    setBackingMap() Chamado para configurar a instância do BackingMap usada pelo plug-in.
    getBackingMap() Chamado para obter ou confirmar a instância do BackingMap usada pelo plug-in.
    Métodos de inicialização Propósito
    initialize() Chamado para inicializar o plug-in BackingMapPlugin.
    isInitialized() Chamado para obter ou confirmar o status de inicialização do plug-in.
    Métodos de destruição Propósito
    destroy() Chamado para destruir o plug-in BackingMapPlugin.
    isDestroyed() Chamado para obter ou confirme o status destruído do plug-in.

    Consulte a Documentação da API para obter mais informações sobre essas interfaces.

  2. Configurar um Plug-in BackingMapPlugin com XML Suponha que o nome da classe de um plug-in Loader do eXtreme Scale seja a classe com.company.org.MyBackingMapPluginLoader, que implementa a interface Loader e a interface BackingMapPlugin.

    No exemplo de código a seguir, o retorno de chamada de transação customizada, que definitivamente receberá eventos do ciclo de vida estendido, é gerado e incluído em um BackingMap.

    Também é possível configurar um plug-in BackingMapPlugin usando XML. O texto a seguir deve estar no arquivo myGrid.xml:

    <?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. Forneça o arquivo myGrid.xml para o plug-in ObjectGridManager para facilitar a criação desta configuração.

Resultados

A instância BackingMap criada tem um Loader que recebe eventos de ciclo de vida do BackingMapPlugin.