1 package jp.sourceforge.stigmata;
3 import java.io.Serializable;
4 import java.util.HashMap;
8 * This class represents how to store extracted birthmarks.
9 * memory?, databases?, or files?
11 * @author Haruaki Tamada
13 public class BirthmarkStoreTarget implements Serializable, Comparable<BirthmarkStoreTarget>{
14 private static final long serialVersionUID = -4225861589804166362L;
16 private static final Map<String, BirthmarkStoreTarget> TARGETS = new HashMap<String, BirthmarkStoreTarget>();
18 public static final BirthmarkStoreTarget MEMORY = new BirthmarkStoreTarget(0, "MEMORY");
19 public static final BirthmarkStoreTarget XMLFILE = new BirthmarkStoreTarget(1, "XMLFILE");
20 public static final BirthmarkStoreTarget MEMORY_SINGLE = new BirthmarkStoreTarget(2, "MEMORY_SINGLE");
21 public static final BirthmarkStoreTarget RDB = new BirthmarkStoreTarget(3, "RDB");
23 private final String name;
24 private final int ordinal;
26 private BirthmarkStoreTarget(int index, String name){
29 TARGETS.put(name, this);
41 public boolean equals(Object o){
46 public int compareTo(BirthmarkStoreTarget other){
47 return ordinal - other.ordinal;
50 public static BirthmarkStoreTarget valueOf(String name){
51 return TARGETS.get(name);
54 public static BirthmarkStoreTarget createTarget(String name){
55 BirthmarkStoreTarget bst = TARGETS.get(name);
57 bst = new BirthmarkStoreTarget(TARGETS.size(), name);