Interface IVSClassReferenceOwner

  • All Superinterfaces:
    IClassReferenceOwner
    All Known Implementing Classes:
    EditorVirtualSpace, VirtualSpace

    public interface IVSClassReferenceOwner
    extends IClassReferenceOwner
    Interface implemented by a VirtualSpace property container that holds a ClassReference instance, used to resolve references for MethodReferences, e.g. the VirtualSpace or Panels.
    Author:
    Christopher Mindus
    • Method Detail

      • getClassReferenceAtom

        default Atom getClassReferenceAtom​(java.lang.String id)
        Gets the ClassReference atom name.
        Specified by:
        getClassReferenceAtom in interface IClassReferenceOwner
        Parameters:
        id - ID for the class reference if several exist, null for default.
        Returns:
        The class reference atom name for the ID.
      • getClassReference

        default ClassReference getClassReference​(java.lang.String id,
                                                 boolean doCreateIfNotPresent)
        Gets or creates the ClassReference in the property container.
        Specified by:
        getClassReference in interface IClassReferenceOwner
        Parameters:
        id - ID for the class reference if several exist, null for default.
        doCreateIfNotPresent - Flag to create the property (this flag can only be true in Designer)!
        Returns:
        The resolved class reference instance, null if the ClassReference doesn't exist if the create flag is false. If flag is true, an orphan unresolved EditorClassReference instance (ONLY for the Designer).
      • isClassReferenceAnnotationBackReferenceRequired

        default boolean isClassReferenceAnnotationBackReferenceRequired​(java.lang.String id)
        Checks if the ClassReference require an annotation back-reference.
        Specified by:
        isClassReferenceAnnotationBackReferenceRequired in interface IClassReferenceOwner
        Parameters:
        id - ID for the class reference if several exist, null for default.
        Returns:
        true, always: the annotation is required to have a back-reference on the "ref" member value pair to the ClassReference owner.
      • getClassReferenceImplementsInterface

        default java.lang.String getClassReferenceImplementsInterface​(java.lang.String id)
        Returns the required Interface.
        Specified by:
        getClassReferenceImplementsInterface in interface IClassReferenceOwner
        Parameters:
        id - ID for the class reference if several exist, null for default.
        Returns:
        The fully qualified name of the interface for the class, or null for none. For panel this is always null.
      • getClassReferenceRequiredAnnotation

        default java.lang.String getClassReferenceRequiredAnnotation​(java.lang.String id)
        Returns the required annotation, or null for none.
        Specified by:
        getClassReferenceRequiredAnnotation in interface IClassReferenceOwner
        Parameters:
        id - ID for the class reference if several exist, null for default.
        Returns:
        The fully qualified name of the interface for the class, or null for none. For panel this is always AnnotationType.UI.fqn.