Class NameableNameGenerator<I extends Nameable>

  • All Implemented Interfaces:
    NodeNameGenerator<I>
    Direct Known Subclasses:
    BioPlateNameGenerator, ExtractNameGenerator

    public class NameableNameGenerator<I extends Nameable>
    extends Object
    implements NodeNameGenerator<I>
    Name generator implementation for Nameable items. The name and title can each have two variants, depending on the node type of the parent node. If the parent node is a folder-type node, the name is generated as prefix.item-id and the title is the name of the item, eg. Nameable.getName().

    If the parent node is an item-type node, the name is only the namePrefix and the title is the title prefix combined with the name of the item.

    Version:
    2.10
    Author:
    Nicklas
    Last modified
    $Date: 2011-06-08 15:00:33 +0200 (on, 08 jun 2011) $
    • Field Detail

      • namePrefix

        private String namePrefix
      • titlePrefix

        private String titlePrefix
    • Constructor Detail

      • NameableNameGenerator

        public NameableNameGenerator​(String namePrefix,
                                     String titlePrefix)
        Create a new name generator.
        Parameters:
        namePrefix - The prefix to use in node names
        titlePrefix - The prefix to use in node titles
    • Method Detail

      • getNodeName

        public String getNodeName​(I item,
                                  Node parentNode)
        Description copied from interface: NodeNameGenerator
        Generate a name for the new node that is about to be created.
        Specified by:
        getNodeName in interface NodeNameGenerator<I extends Nameable>
        Parameters:
        item - The item that is attached to the node (never null)
        parentNode - The parent node of the new node
        Returns:
        A name for the node
      • getNodeTitle

        public String getNodeTitle​(I item,
                                   Node parentNode)
        Description copied from interface: NodeNameGenerator
        Generate a title for the new node that is about to be created.
        Specified by:
        getNodeTitle in interface NodeNameGenerator<I extends Nameable>
        Parameters:
        item - The item that is attached to the node (never null)
        parentNode - The parent node of the new node
        Returns:
        A title for the node
      • getDeniedNodeName

        public String getDeniedNodeName​(Node parentNode)
        Description copied from interface: NodeNameGenerator
        Generate a name for a node when the item exists, but the current user doesn't have permission to access read the item.
        Specified by:
        getDeniedNodeName in interface NodeNameGenerator<I extends Nameable>
        Parameters:
        parentNode - The parent node
        Returns:
        A name for the node
      • getDeniedNodeTitle

        public String getDeniedNodeTitle​(Node parentNode)
        Description copied from interface: NodeNameGenerator
        Generate a title for a node when the item exists, but the current user doesn't have permission to access read the item.
        Specified by:
        getDeniedNodeTitle in interface NodeNameGenerator<I extends Nameable>
        Parameters:
        parentNode - The parent node
        Returns:
        A name for the node