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