Mercurial > hg > digilib-old
diff servlet/src/digilib/util/OptionsSet.java @ 557:0885f5ca5b24 digilibPDF
more refactoring and rearranging
pdf and image generation works now
author | robcast |
---|---|
date | Thu, 16 Dec 2010 21:19:11 +0100 |
parents | servlet/src/digilib/servlet/OptionsSet.java@e1094c5ec032 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/servlet/src/digilib/util/OptionsSet.java Thu Dec 16 21:19:11 2010 +0100 @@ -0,0 +1,67 @@ +/** + * + */ +package digilib.util; + +import java.util.HashSet; +import java.util.StringTokenizer; + +/** + * @author casties + * + */ +@SuppressWarnings("serial") +public class OptionsSet extends HashSet<String> { + + protected String optionSep = ","; + + public OptionsSet() { + super(); + } + + /** Constructor with String of options. + * @param s + */ + public OptionsSet(String s) { + super(); + parseString(s); + } + + /** Adds all options from String to Set. + * @param s + */ + public void parseString(String s) { + if (s != null) { + StringTokenizer i = new StringTokenizer(s, optionSep); + while (i.hasMoreTokens()) { + String opt = i.nextToken(); + this.add(opt); + } + } + } + + public boolean hasOption(String opt) { + return this.contains(opt); + } + + public String toString() { + StringBuffer b = new StringBuffer(); + for (String s: this) { + if (b.length() > 0) { + b.append(optionSep); + } + b.append(s); + } + return b.toString(); + } + + + public String getOptionSep() { + return optionSep; + } + + public void setOptionSep(String optionSep) { + this.optionSep = optionSep; + } + +}