Annotation Type EditorSubclass.EdOptsSubclass
-
@Retention(RUNTIME) @Target(FIELD) public static @interface EditorSubclass.EdOptsSubclass
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description Class<? extends Annotation>[]allowListClass<? extends Annotation>[]denyListbooleanmergeStringnameFieldStringprofilesEditA comma separated, case insensitive list of profile names.Class<? extends Annotation>requiredAnnotationbooleanrestrictedClassesAre classes restricted to the ones found after applying the allow/deny lists, or is a user allowed to type in any class name.booleanshortenClassNamesIf true, the class names are shortened by removing any common prefix.
-
-
-
Element Detail
-
iface
Class<?> iface
- Returns:
- The interface or superclass that the selectable classes must implement/extend.
-
-
-
nameField
String nameField
- Returns:
- The name of the json field that holds the name of the selected class.
- Default:
- "className"
-
-
-
requiredAnnotation
Class<? extends Annotation> requiredAnnotation
- Returns:
- An optional annotation that the presented classes must be annotated with.
- Default:
- de.fraunhofer.iosb.ilt.configurable.editor.EditorSubclass.NoFilter.class
-
-
-
allowList
Class<? extends Annotation>[] allowList
- Returns:
- An optional list of annotations. Only classes annotated with one of these annotations are listed in the UI.
- Default:
- {}
-
-
-
denyList
Class<? extends Annotation>[] denyList
- Returns:
- An optional list of annotations. Classes annotated with one of these annotations are not listed in the UI, even if they have one of the allowList or requiredAnnotation annotations.
- Default:
- {}
-
-
-
profilesEdit
String profilesEdit
A comma separated, case insensitive list of profile names. This field is only editable when one of these profiles is active. The "default" profile is automatically added to the list.- Returns:
- A comma separated, case insensitive list of profile names.
- Default:
- ""
-
-
-
shortenClassNames
boolean shortenClassNames
If true, the class names are shortened by removing any common prefix. For example, if all classes are in the java.lang package, and thus all class names start with "java.lang.", then "java.lang." is removed from the names displayed in the dialog box. In the JSON, the full name is used.- Returns:
- true if class names should be shortened.
- Default:
- false
-
-