]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.enterprise/src/org/argeo/osgi/metatype/EnumAD.java
Add JGit to client.
[lgpl/argeo-commons.git] / org.argeo.enterprise / src / org / argeo / osgi / metatype / EnumAD.java
1 package org.argeo.osgi.metatype;
2
3 import org.argeo.naming.SpecifiedName;
4 import org.osgi.service.metatype.AttributeDefinition;
5
6 public interface EnumAD extends SpecifiedName, AttributeDefinition {
7 String name();
8
9 default Object getDefault() {
10 return null;
11 }
12
13 @Override
14 default String getName() {
15 return name();
16 }
17
18 @Override
19 default String getID() {
20 return getClass().getName() + "." + name();
21 }
22
23 @Override
24 default String getDescription() {
25 return null;
26 }
27
28 @Override
29 default int getCardinality() {
30 return 0;
31 }
32
33 @Override
34 default int getType() {
35 return STRING;
36 }
37
38 @Override
39 default String[] getOptionValues() {
40 return null;
41 }
42
43 @Override
44 default String[] getOptionLabels() {
45 return null;
46 }
47
48 @Override
49 default String validate(String value) {
50 return null;
51 }
52
53 @Override
54 default String[] getDefaultValue() {
55 Object value = getDefault();
56 if (value == null)
57 return null;
58 return new String[] { value.toString() };
59 }
60 }