KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > mondrian > util > UtilCompatibleJdk14


1 /*
2 // $Id: //open/mondrian/src/main/mondrian/util/UtilCompatibleJdk14.java#1 $
3 // This software is subject to the terms of the Common Public License
4 // Agreement, available at the following URL:
5 // http://www.opensource.org/licenses/cpl.html.
6 // Copyright (C) 2007-2007 Julian Hyde
7 // All Rights Reserved.
8 // You must accept the terms of that agreement to use this software.
9 */

10 package mondrian.util;
11
12 import java.util.Set JavaDoc;
13 import java.util.HashSet JavaDoc;
14 import java.util.Arrays JavaDoc;
15
16 /**
17  * Implementation of {@link UtilCompatible} which runs in
18  * JDK 1.4.
19  *
20  * <p>The code uses JDK 1.5 constructs such as generics and for-each loops,
21  * but retroweaver can convert these. It does not use
22  * <code>java.util.EnumSet</code>, which is important, because retroweaver has
23  * trouble with this.
24  *
25  * @author jhyde
26  * @version $Id: //open/mondrian/src/main/mondrian/util/UtilCompatibleJdk14.java#1 $
27  * @since Feb 5, 2007
28  */

29 public class UtilCompatibleJdk14 implements UtilCompatible {
30     public <E extends Enum JavaDoc<E>> Set JavaDoc<E> enumSetOf(E first, E... rest) {
31         HashSet JavaDoc<E> set = new HashSet JavaDoc<E>();
32         set.add(first);
33         for (E e : rest) {
34             set.add(e);
35         }
36         return set;
37     }
38
39     public <E extends Enum JavaDoc<E>> Set JavaDoc<E> enumSetNoneOf(Class JavaDoc<E> elementType) {
40         return new HashSet JavaDoc<E>();
41     }
42
43     public <E extends Enum JavaDoc<E>> Set JavaDoc<E> enumSetAllOf(Class JavaDoc<E> elementType) {
44         return new HashSet JavaDoc<E>(Arrays.asList(elementType.getEnumConstants()));
45     }
46 }
47
48 // End UtilCompatibleJdk14.java
49
Popular Tags