/* * * Copyright (c) 2000 JAVIR, Ltd. All Rights Reserved. * * * JAVIR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE * SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR * PURPOSE, OR NON-INFRINGEMENT. JAVIR SHALL NOT BE LIABLE FOR ANY DAMAGES * SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING * THIS SOFTWARE OR ITS DERIVATIVES. * */ import com.javir.HybridList.*; import java.lang.Math.*; public class ClientExample extends MultiParamHLNode { static final int SORT_BY_NAME=0; static final int SORT_BY_PHONE=1; static final int SORT_BY_INCOME=2; static final int SORT_VAR_NUMBER=3; String Name; int Phone; double Income; //-------------------------------------------------------- public ClientExample(){ super(SORT_VAR_NUMBER); Name = ""; for(int i=0;i<10;i++) Name += (char)(Math.random()*20+'A'); Phone = 5555000+(int)(Math.random()*100); Income = (int)(Math.random()*10000)/100.0; } //-------------------------------------------------------- public boolean IsBiggerThan(HLNode node,int sort_variable){ switch(sort_variable){ case SORT_BY_NAME: if (Name.compareTo(((ClientExample)node).Name)>0) return true; break; case SORT_BY_PHONE: if (Phone>((ClientExample)node).Phone) return true; break; case SORT_BY_INCOME: if (Income >((ClientExample)node).Income) return true; break; } return false;} //-------------------------------------------------------- public boolean IsSmallerThan(HLNode node,int sort_variable){ switch(sort_variable){ case SORT_BY_NAME: if (Name.compareTo(((ClientExample)node).Name)<0) return true; break; case SORT_BY_PHONE: if (Phone<((ClientExample)node).Phone) return true; break; case SORT_BY_INCOME: if (Income <((ClientExample)node).Income) return true; break; } return false;} //-------------------------------------------------------- public boolean IsEqualTo(HLNode node,int sort_variable){ switch(sort_variable){ case SORT_BY_NAME: if (Name.compareTo(((ClientExample)node).Name)==0) return true; break; case SORT_BY_PHONE: if (Phone==((ClientExample)node).Phone) return true; break; case SORT_BY_INCOME: if (Income ==((ClientExample)node).Income) return true; break; } return false;} //-------------------------------------------------------- public int CompareTo(int sort_variable,long long_val,double double_val,String string_val,boolean ignore_case){ switch(sort_variable){ case SORT_BY_NAME: return Name.compareTo(string_val); case SORT_BY_PHONE: if (Phone>long_val) return 1; if (Phone double_val) return 1; if (Income < double_val) return -1; break; } return 0;} //-------------------------------------------------------- }