Interfaz BackingMap

Cada instancia de ObjectGrid contiene una colección de objetos BackingMap. Utilice el método defineMap o el método createMap de la interfaz ObjectGrid para nombrar y añadir cada BackingMap a una instancia de ObjectGrid. Estos métodos devuelven una instancia de BackingMap que se utiliza después para definir el comportamiento de una correlación individual.Un objeto BackingMap puede considerarse como una memoria caché en memoria de datos confirmados para una correlación individual.

Interfaz Session

La interfaz Session se utiliza para iniciar una transacción y obtener el objeto ObjectMap o JavaMap necesario para realizar la interacción transaccional entre una aplicación y un objeto BackingMap. No obstante, los cambios de la transacción no se aplican al objeto BackingMap hasta que se confirme la transacción. Un objeto BackingMap puede considerarse como una memoria caché en memoria de datos confirmados para una correlación individual. Para obtener más información, consulte Utilización de sesiones para acceder a los datos de la cuadrícula.

La interfaz BackingMap proporciona métodos para establecer los atributos BackingMap. Algunos de estos métodos permiten la ampliación de un objeto BackingMap a través de diversos plug-ins de diseño personalizado. Consulte la lista siguiente de los métodos set para definir atributos y proporcionar soporte de plug-ins de diseño personalizado:

// Para establecer atributos de
BackingMap.
public void setReadOnly(boolean readOnlyEnabled);
public void setNullValuesSupported(boolean nullValuesSupported);
public void setLockStrategy( LockStrategy lockStrategy );
public void setCopyMode(CopyMode mode, Class valueInterface);
public void setCopyKey(boolean b);
public void setNumberOfBuckets(int numBuckets);
public void setNumberOfLockBuckets(int numBuckets);
public void setLockTimeout(int seconds);
public void setTimeToLive(int seconds);
public void setTtlEvictorType(TTLType type);
public void setEvictionTriggers(String evictionTriggers);

// Para establecer un plug-in personalizado y opcional que proporciona la
aplicación.
public abstract void setObjectTransformer(ObjectTransformer t);
public abstract void setOptimisticCallback(OptimisticCallback checker);
public abstract void setLoader(Loader loader);
public abstract void setPreloadMode(boolean async);
public abstract void setEvictor(Evictor e);
public void setMapEventListeners( List /*MapEventListener*/ eventListenerList );
public void addMapEventListener(MapEventListener eventListener );
public void removeMapEventListener(MapEventListener eventListener );
public void addMapIndexPlugin(MapIndexPlugin index);
public void setMapIndexPlugins(List /\* MapIndexPlugin \*/ indexList );
public void createDynamicIndex(String name, boolean isRangeIndex,
String attributeName, DynamicIndexCallback cb);
public void createDynamicIndex(MapIndexPlugin index, DynamicIndexCallback cb);
public void removeDynamicIndex(String name);

Para cada uno de los métodos set listados, existe un método get correspondiente.

Atributos de BackingMap

Cada BackingMap tiene los siguientes atributos que pueden establecerse para modificar o controlar el comportamiento del objeto BackingMap:

El ejemplo siguiente muestra cómo definir someMap BackingMap en la instancia someGrid ObjectGrid y establecer varios atributos de BackingMap mediante los métodos set de la interfaz BackingMap:

import com.ibm.websphere.objectgrid.BackingMap;
import com.ibm.websphere.objectgrid.LockStrategy;
import com.ibm.websphere.objectgrid.ObjectGrid;
import com.ibm.websphere.objectgrid.ObjectGridManagerFactory;

...

ObjectGrid og =
ObjectGridManagerFactory.getObjectGridManager().createObjectGrid("someGrid");
BackingMap bm = objectGrid.getMap("someMap");
bm.setReadOnly( true ); // alterar temporalmente el valor predeterminado de
                        // lectura/grabación
bm.setNullValuesSupported(false); // alterar temporalmente el valor
                       // predeterminado de permitir valores nulos
bm.setLockStrategy( LockStrategy.PESSIMISTIC ); // alterar temporalmente
                       // el valor predeterminado de OPTIMISTIC
bm.setLockTimeout( 60 ); // alterar temporalmente el valor predeterminado
                       // de 15 segundos.
bm.setNumberOfBuckets(251); // alterar temporalmente el valor predeterminado
                       // (números primos funcionan mejor)
bm.setNumberOfLockBuckets(251); // alterar temporalmente el valor
                       // predeterminado (números primos funcionan mejor)

Plug-ins de BackingMap

La interfaz BackingMap tiene diversos plug-ins opcionales que amplían las interacciones con ObjectGrid:

Para obtener más información sobre los plug-ins, consulte Visión general de los plug-ins.