1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 package org.nuiton.eugene.models.object.xml;
24
25 import com.google.common.collect.ImmutableSet;
26 import com.google.common.collect.Sets;
27 import org.nuiton.eugene.models.object.ObjectModelClassifier;
28 import org.nuiton.eugene.models.object.ObjectModelInterface;
29 import org.nuiton.eugene.models.object.ObjectModelJavaModifier;
30 import org.nuiton.eugene.models.object.ObjectModelModifier;
31
32 import java.util.Iterator;
33 import java.util.Set;
34
35
36
37
38
39
40
41
42 public class ObjectModelInterfaceImpl extends ObjectModelClassifierImpl implements ObjectModelInterface {
43
44 private static Set<ObjectModelModifier> authorizedModifiers;
45
46 @Override
47 protected Set<ObjectModelModifier> getAuthorizedModifiers() {
48 if (authorizedModifiers == null) {
49
50
51 Set<ObjectModelModifier> modifiers = Sets.newHashSet(
52 (ObjectModelModifier) ObjectModelJavaModifier.ABSTRACT,
53 ObjectModelJavaModifier.STATIC,
54 ObjectModelJavaModifier.STRICTFP);
55 modifiers.addAll(ObjectModelJavaModifier.visibilityModifiers);
56 authorizedModifiers = ImmutableSet.copyOf(modifiers);
57 }
58 return authorizedModifiers;
59 }
60
61 @Override
62 public String toString() {
63 StringBuffer result = new StringBuffer();
64 result.append("interface ").append(getQualifiedName()).append(" ");
65 result.append("extends ");
66 for (Iterator<?> i = getInterfaces().iterator(); i.hasNext(); ) {
67 result.append(((ObjectModelClassifier) i.next()).getName());
68 if (i.hasNext()) {
69 result.append(", ");
70 }
71 }
72 return result.toString();
73 }
74 }