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;
+	}
+
+}