Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
DBag |
|
| 1.0;1 |
1 | package org.odmg; | |
2 | ||
3 | ||
4 | ||
5 | /** | |
6 | ||
7 | * This interface defines the operations associated with an ODMG bag collection. | |
8 | ||
9 | * All of the operations defined by the JavaSoft <code>Collection</code> | |
10 | ||
11 | * interface are supported by an ODMG implementation of <code>DBag</code>, | |
12 | ||
13 | * the exception <code>UnsupportedOperationException</code> is not thrown when a | |
14 | ||
15 | * call is made to any of the <code>Collection</code> methods. | |
16 | ||
17 | * @author David Jordan (as Java Editor of the Object Data Management Group) | |
18 | ||
19 | * @version ODMG 3.0 | |
20 | ||
21 | */ | |
22 | ||
23 | // * @see java.lang.UnsupportedOperationException | |
24 | ||
25 | ||
26 | ||
27 | public interface DBag extends DCollection | |
28 | ||
29 | { | |
30 | ||
31 | /** | |
32 | ||
33 | * A new <code>DBag</code> instance is created that is the union of this object | |
34 | ||
35 | * and <code>otherBag</code>. | |
36 | ||
37 | * This method is similar to the <code>addAll</code> method in <code>Collection</code>, | |
38 | ||
39 | * except that this method creates a new collection and <code>addAll</code> | |
40 | ||
41 | * modifies the object to contain the result. | |
42 | ||
43 | * @param otherBag The other bag to use in the union operation. | |
44 | ||
45 | * @return A <code>DBag</code> instance that contains the union of this object | |
46 | ||
47 | * and <code>otherBag</code>. | |
48 | ||
49 | */ | |
50 | ||
51 | // * @see com.sun.java.util.collections.Collection#addAll | |
52 | ||
53 | public DBag union(DBag otherBag); | |
54 | ||
55 | ||
56 | ||
57 | /** | |
58 | ||
59 | * A new <code>DBag</code> instance is created that contains the intersection of | |
60 | ||
61 | * this object and the <code>DBag</code> referenced by <code>otherBag</code>. | |
62 | ||
63 | * This method is similar to the <code>retainAll</code> method in <code>Collection</code>, | |
64 | ||
65 | * except that this method creates a new collection and <code>retainAll</code> | |
66 | ||
67 | * modifies the object to contain the result. | |
68 | ||
69 | * @param otherBag The other bag to use in creating the intersection. | |
70 | ||
71 | * @return A <code>DBag</code> instance that contains the intersection of this | |
72 | ||
73 | * object and <code>otherBag</code>. | |
74 | ||
75 | */ | |
76 | ||
77 | // @see com.sun.java.util.collections.Collection#retainAll | |
78 | ||
79 | public DBag intersection(DBag otherBag); | |
80 | ||
81 | ||
82 | ||
83 | /** | |
84 | ||
85 | * A new <code>DBag</code> instance is created that contains the difference of | |
86 | ||
87 | * this object and the <code>DBag</code> instance referenced by <code>otherBag</code>. | |
88 | ||
89 | * This method is similar to the <code>removeAll</code> method in <code>Collection</code>, | |
90 | ||
91 | * except that this method creates a new collection and <code>removeAll</code> | |
92 | ||
93 | * modifies the object to contain the result. | |
94 | ||
95 | * @param otherBag The other bag to use in creating the difference. | |
96 | ||
97 | * @return A <code>DBag</code> instance that contains the elements of this object | |
98 | ||
99 | * minus the elements in <code>otherBag</code>. | |
100 | ||
101 | */ | |
102 | ||
103 | // * @see com.sun.java.util.collections.Collection#removeAll | |
104 | ||
105 | public DBag difference(DBag otherBag); | |
106 | ||
107 | ||
108 | ||
109 | /** | |
110 | ||
111 | * This method returns the number of occurrences of the object <code>obj</code> | |
112 | ||
113 | * in the <code>DBag</code> collection. | |
114 | ||
115 | * @param obj The value that may have elements in the collection. | |
116 | ||
117 | * @return The number of occurrences of <code>obj</code> in this collection. | |
118 | ||
119 | */ | |
120 | ||
121 | public int occurrences(Object obj); | |
122 | ||
123 | } | |
124 |