Class AnnotationLoader

All Implemented Interfaces:

public class AnnotationLoader
extends BasicItemNodeLoader<Annotation>
Node loader implementation for annotations. Annotations are loaded as an end-point folder node with one child entry for each annotation. It can never be root node or a forward/reverse-loading node.
Last modified
  • Constructor Details

    • AnnotationLoader

      public AnnotationLoader()
  • Method Details

    • getAnnotatableFromNode

      public static Annotatable getAnnotatableFromNode​(DbControl dc, Node node)
      Get the annotatable item from the node. This is in most cases the Node.getItem() item, but can also be the target item of an AnyToAny node or the file of a FileSetMember node.
    • createPropertyNode

      public Node createPropertyNode​(DbControl dc, OverviewContext context, Node parentNode)
      Description copied from interface: NodeLoader
      Create a property node for the given parent node. A property node is a node that is not on the main parent-child path. It is typically a node that can't be used a root node (for example, a protocol or software). If the parent node can have many properties of this type the loader can decide if it should first create a folder-type node and put the children inside the folder, or if all child nodes should be created directly in the parent node. In the first case, the folder node should be returned. In the latter case, null should be returned.

      The direction of the node(s) should usually be ChildNodeDirection.NONE, but it may also be ChildNodeDirection.PROPERTY in case the property has sub-properties. One example is the ProtocolLoader which loads the protocol parameters as child nodes.

      In case there is an error (permission denied, etc.) ChildNodeDirection.NONE should be used. If there is no property item null should be returned (but this may also indicate that more than one node was created).

      Errors, missing items, etc. should be reported as failures to the OverviewContext.

      Specified by:
      createPropertyNode in interface NodeLoader<Annotation>
      createPropertyNode in class AbstractNodeLoader<Annotation>
      dc - The DbControl to use for database access
      context - The overview context
      parentNode - The parent node
      A node (may be a folder-type node with many subnodes), or null