WebSphere Extended Deployment, Version 6.0.x     Systèmes d'exploitation : AIX, HP-UX, Linux, Solaris, Windows, z/OS

Programmation d'un alias de partition

Les deux méthodes suivantes sont ajoutées via l'interface PartitionDefition :

 /** 
* Définition d'une chaîne comme nom d'alias 
* 
*/ 
void setPartitionAlias(String aliasName);

 /** 
* Renvoi de la chaîne représentant l'alias de cette partition 
* 
* @return String 
*/ 
String getPartitionAlias();

Exemple de programmation d'un alias de partition

Deux exemples d'alias de partition sont fournis pour la programmation. L'un explique comment l'alias de partition fonctionne et l'autre indique comment faire coexister une partition dotée d'un alias et une partition sans alias au sein d'une même application. Les deux exemples sont présentés ci-dessous :

Exemple d'un alias de partition

Dans la méthode getPartitions() du bean PSSB, partitionDefinition et setPartitionAlias sont créés pour chaque partition. Il existe une relation "un à un" entre la partition et l'alias.
public PartitionDefinition[] getPartitions() {	
		try {
		 //1-1 entre la partition et l'alias
            numOfAlias=numOfPartitions;
          
		partitionAlias= new String[numOfAlias];
		}
		catch (Exception e) {
		…
		}
		PartitionDefinition[] rc = new PartitionDefinition[numOfPartitions];
		for (int i = 1; i <= numOfPartitions; ++i) {
			rc[i - 1] = ivManager.createPartitionDefinition(PartitionAlias.PARTITION_PREFIX + padZeroToString(i + "", 6));			
						rc[i-1].setPartitionAlias(PartitionAlias.PARTITION_ALIAS + padZeroToString(i + "", 6));
		} 
		return rc;
	}


Dans la classe PartitionAlias_PartitionKey.java :
public class PartitionAlias_PartitionKey {
	/**
	 * renvoie la chaîne de la partition sous la forme d'une clé
	 * @param partition
	 * @return
	 */
	public static String pingAlias(String partitionAlias) {
		return partitionAlias;
	}
	/**
	 * renvoie la chaîne de la partition sous la forme d'une clé
	 * @param partition
	 * @return
	 */
	public static String ping(String partition) {
		return partition;
	}

Certaines méthodes peuvent utiliser un contexte d'alias de partition et d'autres peuvent utiliser un contexte de partition.

Exemple de partition dotée d'un alias et de partition sans alias

Dans cet exemple, certaines partitions ne possèdent pas d'alias. Seules 20 % des partitions sont associées à des alias. Les partitions dont le nom finit par 0 ou 5 possèdent un alias. Toutes les autres ne possèdent pas d'alias.
public PartitionDefinition[] getPartitions() {	
		try {
          numOfAlias=numOfPartitions/5;
	    partitionAlias= new String[numOfAlias];
		}
		catch (Exception e) {
		……
		}
		PartitionDefinition[] rc = new PartitionDefinition[numOfPartitions];
		for (int i = 1; i <= numOfPartitions; ++i) {
			rc[i - 1] = ivManager.createPartitionDefinition(MixedAliasNoAliasPartition.PARTITION_PREFIX + padZeroToString(i + "", 6));
			
			if ((i-1)%5==0){
				int k= (i-1)/5 + 1;
			rc[i-1].setPartitionAlias(MixedAliasNoAliasPartition.PARTITION_ALIAS + padZeroToString(k + "", 6));
			}
		} 
		return rc;
	}

La procédure de routage peut utiliser un contexte d'alias de partition (s'il existe) ou un contexte de partition. Si la partition ne possède pas d'alias et qu'une demande client dispose d'un contexte d'alias de partition, les demandes client reçoivent une exception NO_IMPLEMENT mais cette partition sans alias peut être acheminée avec le contexte de partition. Dans une application, certaines partitions peuvent posséder un alias ou d'autres peuvent ne pas en avoir.




Related concepts
Qu'est-ce qu'un alias de partition ?

Rubrique Concept    

Conditions d'utilisation | Commentaires Dernière mise à jour le : Mar 16, 2006 10:01:30 AM EST
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r0/index.jsp?topic=?topic=/com.ibm.websphere.xd.doc/info/WPF51/cwpfintrface.html

© Copyright IBM 2005, 2006. All Rights Reserved.
Ce centre de documentation s'appuie sur la technologie Eclipse. (http://www.eclipse.org)