01: // Jericho HTML Parser - Java based library for analysing and manipulating HTML
02: // Version 2.5
03: // Copyright (C) 2007 Martin Jericho
04: // http://jerichohtml.sourceforge.net/
05: //
06: // This library is free software; you can redistribute it and/or
07: // modify it under the terms of either one of the following licences:
08: //
09: // 1. The Eclipse Public License (EPL) version 1.0,
10: // included in this distribution in the file licence-epl-1.0.html
11: // or available at http://www.eclipse.org/legal/epl-v10.html
12: //
13: // 2. The GNU Lesser General Public License (LGPL) version 2.1 or later,
14: // included in this distribution in the file licence-lgpl-2.1.txt
15: // or available at http://www.gnu.org/licenses/lgpl.txt
16: //
17: // This library is distributed on an "AS IS" basis,
18: // WITHOUT WARRANTY OF ANY KIND, either express or implied.
19: // See the individual licence texts for more details.
20:
21: package au.id.jericho.lib.html;
22:
23: import java.util.*;
24:
25: final class HTMLElementNameSet extends HashSet {
26: public HTMLElementNameSet() {
27: super (1);
28: }
29:
30: public HTMLElementNameSet(final String[] items) {
31: super (items.length * 2);
32: for (int i = 0; i < items.length; i++)
33: add(items[i]);
34: }
35:
36: public HTMLElementNameSet(final Collection collection) {
37: super (collection.size() * 2);
38: union(collection);
39: }
40:
41: public HTMLElementNameSet(final String item) {
42: super (2);
43: add(item);
44: }
45:
46: HTMLElementNameSet union(final String item) {
47: add(item);
48: return this ;
49: }
50:
51: HTMLElementNameSet union(final Collection collection) {
52: for (final Iterator i = collection.iterator(); i.hasNext();)
53: add(i.next());
54: return this ;
55: }
56:
57: HTMLElementNameSet minus(final String item) {
58: remove(item);
59: return this ;
60: }
61:
62: HTMLElementNameSet minus(final Collection collection) {
63: for (final Iterator i = collection.iterator(); i.hasNext();)
64: remove(i.next());
65: return this;
66: }
67: }
|