/*
 * @(#)ElementComparator.java
 * Copyright 2001 Nomura Research Institute, LTD. All rights reserved.
 * @author  Intelligent Technology Inc.
 * @version 1.00 2001/10/01-2002/03/26
 */
package jp.co.nri.rid.table.comparator;

/* JAVA */
import	java.util.Comparator;
/* rid */
import	jp.co.nri.rid.xml.*;

/**
 * elementBooster同士を比較する。指定した属性同士を文字列として比較する。おもにTableでのソートに使用。
 */
public class ElementComparator implements Comparator{
	protected String myName;
	/**
	 * @param	name	比較する属性。
	 * @since	1.00
	 */
	public ElementComparator(String name){ myName = new String(name); }
	/**
	 * Comparator実装。
	 * @since	1.00
	 */
	public	int	compare(Object a ,Object b){
		String aValue = ((elementBooster)a).attribute(myName);
		String bValue = ((elementBooster)b).attribute(myName);
		if(null==aValue && null==bValue)	return(0);
		if(null==aValue)	return(-1);
		if(null==bValue)	return(1);
		
		return(aValue.compareTo(bValue));
	}
}