1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.apt.generate;
21
22 import java.util.TreeSet;
23 import java.util.Set;
24
25
26 public class Imports {
27
28 private Set<String> imports = new TreeSet<String>();
29
30 private String packageName;
31
32 public Imports() {
33 }
34
35 public Imports(String packageName) {
36 this.packageName = packageName;
37 }
38
39 public void addImport(String qualifiedName) {
40 if (!ClassUtils.isSystemClass(qualifiedName) && !ClassUtils.isPrimitive(qualifiedName)) {
41 if (!(packageName != null && packageName.equals(ClassUtils.getPackageName(qualifiedName)))) {
42 int index = qualifiedName.lastIndexOf('$');
43 if (index != -1) {
44 qualifiedName = qualifiedName.substring(0, index);
45 }
46 if (!imports.contains(qualifiedName)) {
47 imports.add(qualifiedName);
48 }
49 }
50 }
51 }
52
53 public void addImports(Imports newImports) {
54 for (String qualifiedName : newImports.imports) {
55 addImport(qualifiedName);
56 }
57 }
58
59 public boolean contains(String qualifiedClassName) {
60 return imports.contains(qualifiedClassName);
61 }
62
63 public Set<String> getImports() {
64 return imports;
65 }
66
67 }