KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > jforum > security > RoleValueCollection


1 /*
2  * Copyright (c) Rafael Steil
3  * All rights reserved.
4
5  * Redistribution and use in source and binary forms,
6  * with or without modification, are permitted provided
7  * that the following conditions are met:
8
9  * 1) Redistributions of source code must retain the above
10  * copyright notice, this list of conditions and the
11  * following disclaimer.
12  * 2) Redistributions in binary form must reproduce the
13  * above copyright notice, this list of conditions and
14  * the following disclaimer in the documentation and/or
15  * other materials provided with the distribution.
16  * 3) Neither the name of "Rafael Steil" nor
17  * the names of its contributors may be used to endorse
18  * or promote products derived from this software without
19  * specific prior written permission.
20  *
21  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
22  * HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
23  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
24  * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
25  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR
26  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
27  * THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
28  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
29  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES
30  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
32  * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
33  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
34  * IN CONTRACT, STRICT LIABILITY, OR TORT
35  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
36  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
37  * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE
38  *
39  * This file creation date: 08/01/2004 / 21:41:11
40  * The JForum Project
41  * http://www.jforum.net
42  */

43 package net.jforum.security;
44
45 import java.io.Serializable JavaDoc;
46 import java.util.Collection JavaDoc;
47 import java.util.Iterator JavaDoc;
48 import java.util.LinkedHashSet JavaDoc;
49
50 /**
51  * @author Rafael Steil
52  * @version $Id: RoleValueCollection.java,v 1.7 2005/09/25 02:18:37 rafaelsteil Exp $
53  */

54 public class RoleValueCollection extends LinkedHashSet JavaDoc implements Serializable JavaDoc
55 {
56     /**
57      * Gets a <code>RoleValue</code> by its name.
58      *
59      * @param valueName The <code>RoleValue</code> name
60      * @return The <code>RoleValue</code> object if found, or <code>null</code> if not found
61      */

62     public RoleValue get(String JavaDoc valueName)
63     {
64         for (Iterator JavaDoc iter = this.iterator(); iter.hasNext(); ) {
65             RoleValue v = (RoleValue)iter.next();
66             
67             if (v.getValue().equals(valueName)) {
68                 return v;
69             }
70         }
71         
72         return null;
73     }
74     
75     /**
76      * @see java.util.HashSet#contains(java.lang.Object)
77      */

78     public boolean contains(Object JavaDoc o)
79     {
80         boolean c = super.contains(o);
81         return c;
82     }
83     
84     /**
85      * @see java.util.ArrayList#add(java.lang.Object)
86      */

87     public boolean add(Object JavaDoc o)
88     {
89         if (!(o instanceof RoleValue)) {
90             throw new IllegalArgumentException JavaDoc("Object passed as parameter is not a RoleValue type");
91         }
92         
93         return super.add(o);
94     }
95
96     /**
97      * @see java.util.Collection#addAll(java.util.Collection)
98      */

99     public boolean addAll(Collection JavaDoc c)
100     {
101         boolean status = true;
102         for (Iterator JavaDoc iter = c.iterator(); iter.hasNext(); ) {
103             status = this.add(iter.next());
104         }
105         
106         return status;
107     }
108 }
109
Popular Tags