L'interfaccia PartitionHandlerLocal definisce i metodi di richiamata che consentono all'applicazione di ricevere determinati eventi del ciclo di vita della partizione dal runtime di utilità di partizione. Esistono 4 metodi su questa interfaccia.
PartitionDefinition[] getPartitions()
public PartitionDefinition[] getPartitions() { PartitionDefinition[] rc = new PartitionDefinition[10]; for(int i = 0; i < rc.length; ++i) { rc[i] = ivRuntime.createPartitionDefinition("" + i); } return rc;Il metodo restituisce 10 partizioni al runtime. Le partizioni sono denominate {0,1,2,3,4,5,6,7,8,9}. Esse vengono create tutte mediante la classificazione predefinita.
boolean partitionLoadEvent(String partitionName)
La seguente sezione non si applica a z/OS.
Il metodo deve restituire true se il membro del cluster è pronto per accettare il lavoro per la partizione specificata.
Una volta che il metodo restituisce un valore, le tabelle di indirizzamento IIOP vengono aggiornate e le richieste IIOP in ingresso vengono inviate a questo membro del cluster per la partizione specificata.
Se il metodo restituisce false, allora il gestore HA disabilita il membro del cluster per questa partizione e prova a attivare la partizione su un membro del cluster differente in base alla politica corrente. Questa disabilitazione è possibile solo per la partizione inviata al metodo, mentre le altre partizioni possono ancora essere attivate su questo membro del cluster. Le applicazioni che restituiscono false devono garantire che sia abilitata una traccia adeguata per consentire all'amministratore di diagnosticare il problema. Se si determina che il problema si verificherà di nuovo in futuro, allora l'amministratore può utilizzare JMX per abilitare di nuovo il membro del cluster per quella determinata partizione.
Se un'applicazione utilizza un sistema di messaggistica per accettare le richieste in ingresso per una partizione (invece che eseguire un indirizzamento IIOP) allora l'applicazione deve eseguire una registrazione per gli argomenti o le code su cui possono arrivare le richieste.
void partitionUnloadEvent(String partitionName)
Se un'applicazione utilizza un sistema di messaggistica per accettare le richieste in ingresso per una partizione (invece che eseguire un indirizzamento IIOP) allora l'applicazione deve eseguire una registrazione per gli argomenti o le code su cui possono arrivare le richieste. Il gestore HA non attiverà un membro del cluster di sostituzione fino a che il metodo non restituirà un valore.
Il metodo isPartitionAlive viene richiamato solo quando la politica che controlla la partizione ha l'attributo isAlive impostato su true nella politica CoreGroup in effetto per la serie di partizioni (fare riferimento alla panoramica sulla politica wpfadmin e gli esempi dei comandi delle politiche).
le politiche delle partizioni dell'utilità di partizione predefinite disabilitano questa richiamata e per molte partizioni, le prestazioni del cluster generali possono risultare ridotte. Per ambienti saldamente gestiti, potrebbe essere possibile gestire questo attributo in maniera attiva.
boolean isPartitionAlive(String partitionName)
Se il metodo restituisce false allora JVM viene sospeso (la JVM viene arrestata) e un altro membro del cluster viene scelto per ospitare la partizione. L'applicazione può utilizzare questo metodo per verificare che la partizione funzioni correttamente, richiedendo ad esempio a un membro del cluster peer di richiamare un metodo della partizione per eseguire un'operazione di tipo ping o un controllo di coerenza da una JVM remota.