package sort;
public abstract class SortMethod {
public static final String MERGE
="Merge";
public static final String BUBBLE
="Bubble";
public static final String INSERT
="Insert";
public static final String GNOME
="Gnome";
public static final String QUICK
="Quick";
public static SortMethod forName
(String pName
){
SortMethod retval=null;
if(pName.equalsIgnoreCase(SortMethod.MERGE)){
retval= new MergeSort();
}else if(pName.equalsIgnoreCase(SortMethod.BUBBLE)){
retval= new BubbleSort();
}else if(pName.equalsIgnoreCase(SortMethod.INSERT)){
retval= new InsertSort();
}else if(pName.equalsIgnoreCase(SortMethod.GNOME)){
retval= new GnomeSort();
}else if(pName.equalsIgnoreCase(SortMethod.QUICK)){
retval= new QuickSort();
}
return retval;
}
public static boolean validateMethod
(String pMethod
){
if( pMethod.equalsIgnoreCase(SortMethod.BUBBLE) || pMethod.equalsIgnoreCase(SortMethod.MERGE)
|| pMethod.equalsIgnoreCase(SortMethod.INSERT)|| pMethod.equalsIgnoreCase(SortMethod.GNOME)
|| pMethod.equalsIgnoreCase(SortMethod.QUICK)){
return true;
}
return false;
}
}