Class ExtServiceDiscoItem

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addCommandFields​(Packet packet)
      The method is used for handling ad-hoc commands.
      java.lang.String[] getAdmins()
      Returns an array with the Item administrators, that is people IDs who can manage, configure and control less critical elements of the Item, like changing less critical configuration settings.
      java.lang.String getElemName()  
      java.lang.String getKey()
      Returns a unique key for the item in the repository.
      java.lang.String getOwner()
      Returns the owner ID of the item.
      java.lang.String getType()  
      void initFromCommand​(Packet packet)
      The method used for handling ad-hoc commands.
      void initFromElement​(Element elem)
      The item can be also initialized from a more complex repositories: XML repository or SQL database.
      void initFromPropertyString​(java.lang.String propString)
      The item can be initialized based on the data loaded from a configuration file.
      boolean isAdmin​(java.lang.String id)
      The method checks whether the given id is one of the administrators set for the Item.
      boolean isOwner​(java.lang.String id)
      The method checks whether the person with given ID is the Item owner.
      void setAdmins​(java.lang.String[] admins)
      Returns an array with the Item administrators, that is people IDs who can manage, configure and control less critical elements of the Item, like changing less critical configuration settings.
      protected void setKey​(java.lang.String key)  
      void setOwner​(java.lang.String owner)
      Set the Item owner.
      Element toElement()
      Item data can be stored in a more complex form than a simple property string.
      java.lang.String toPropertyString()
      The item can be initialized based on the data loaded from a configuration file.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ExtServiceDiscoItem

        public ExtServiceDiscoItem()
    • Method Detail

      • addCommandFields

        public void addCommandFields​(Packet packet)
        Description copied from interface: RepositoryItem
        The method is used for handling ad-hoc commands. The 'empty' ad-hoc command packet is provided and the Item should fill it with fields for the user.
        Specified by:
        addCommandFields in interface RepositoryItem
        Overrides:
        addCommandFields in class RepositoryItemAbstract
        Parameters:
        packet - with empty ad-hoc command to fill with fields
      • getAdmins

        public java.lang.String[] getAdmins()
        Description copied from interface: RepositoryItem
        Returns an array with the Item administrators, that is people IDs who can manage, configure and control less critical elements of the Item, like changing less critical configuration settings. Administrators cannot remove the Item or change the owner or add/remove administrators.
        Specified by:
        getAdmins in interface RepositoryItem
        Overrides:
        getAdmins in class RepositoryItemAbstract
        Returns:
        an array with the Item administrators IDs.
      • setAdmins

        public void setAdmins​(java.lang.String[] admins)
        Description copied from interface: RepositoryItem
        Returns an array with the Item administrators, that is people IDs who can manage, configure and control less critical elements of the Item, like changing less critical configuration settings. Administrators cannot remove the Item or change the owner or add/remove administrators.
        Specified by:
        setAdmins in interface RepositoryItem
        Overrides:
        setAdmins in class RepositoryItemAbstract
        Parameters:
        admins - is an array with the Item administrators IDs to set for the Item.
      • getKey

        public java.lang.String getKey()
        Description copied from interface: RepositoryItem
        Returns a unique key for the item in the repository. All items are stored in a memory cache which is a Map. And the key returned by this method is the item identifier in the Map.
        Returns:
        an Item key.
      • getOwner

        public java.lang.String getOwner()
        Description copied from interface: RepositoryItem
        Returns the owner ID of the item. This is used for a management to allow fine tuned service administration with roles assigned to specific elements and items. Normally only owner can perform some critical actions like removing the item, managing item administrators or changing owner.
        There can be only one Item owner.
        Specified by:
        getOwner in interface RepositoryItem
        Overrides:
        getOwner in class RepositoryItemAbstract
        Returns:
        an ID of the Item owner.
      • setOwner

        public void setOwner​(java.lang.String owner)
        Description copied from interface: RepositoryItem
        Set the Item owner. This is used for a management to allow fine tuned service administration with roles assigned to specific elements and items. Normally only owner can perform some critical actions like removing the item, managing item administrators or changing owner.
        There can be only one Item owner.
        Specified by:
        setOwner in interface RepositoryItem
        Overrides:
        setOwner in class RepositoryItemAbstract
        Parameters:
        owner - is the Item owner ID.
      • getType

        public java.lang.String getType()
      • initFromCommand

        public void initFromCommand​(Packet packet)
        Description copied from interface: RepositoryItem
        The method used for handling ad-hoc commands. After a user fills all given field the ad-hoc command packet is passed back to the item to initialize it with data. Similar method to initFromElement(), but the data source is different.
        Specified by:
        initFromCommand in interface RepositoryItem
        Overrides:
        initFromCommand in class RepositoryItemAbstract
        Parameters:
        packet - with ad-hoc command filled by the user.
      • initFromElement

        public void initFromElement​(Element elem)
        Description copied from interface: RepositoryItem
        The item can be also initialized from a more complex repositories: XML repository or SQL database. In such a case more complex representation is prefered, possibly carrying more information about the item. The method is called to initialize the item with a data parsed from an XML representation of the repository.
        Specified by:
        initFromElement in interface RepositoryItem
        Overrides:
        initFromElement in class RepositoryItemAbstract
        Parameters:
        elem - XML Element with all the item initialization data.
      • initFromPropertyString

        public void initFromPropertyString​(java.lang.String propString)
        Description copied from interface: RepositoryItem
        The item can be initialized based on the data loaded from a configuration file. In such a case the item representation is usually very simplified as a list of parameters separated by a marker. Please note, usually each item is separated from another with a comma, therefore do not use a comma in the item property string. Double collon is commonly used alternative.
        Parameters:
        propString - is a property string to initialize the RepositoryItem.
      • isAdmin

        public boolean isAdmin​(java.lang.String id)
        Description copied from interface: RepositoryItem
        The method checks whether the given id is one of the administrators set for the Item.
        Specified by:
        isAdmin in interface RepositoryItem
        Overrides:
        isAdmin in class RepositoryItemAbstract
        Parameters:
        id - is an ID of a person for which we check access permissions.
        Returns:
        true of the given ID is on a list of administrators and false otherwise.
      • isOwner

        public boolean isOwner​(java.lang.String id)
        Description copied from interface: RepositoryItem
        The method checks whether the person with given ID is the Item owner.
        Specified by:
        isOwner in interface RepositoryItem
        Overrides:
        isOwner in class RepositoryItemAbstract
        Parameters:
        id - is an ID of a person for whom we check access permissions.
        Returns:
        true of the given ID is on the Item owner and false otherwise.
      • toElement

        public Element toElement()
        Description copied from interface: RepositoryItem
        Item data can be stored in a more complex form than a simple property string. The XML Element can contain much more detailed information about the element than the simplified form and is used to store the repository item in more advanced repositories then just property file. XML repository or SQL database can keep many records for repository item with as much detailed information as needed.
        Specified by:
        toElement in interface RepositoryItem
        Overrides:
        toElement in class RepositoryItemAbstract
        Returns:
        an XML Element with all the item initialization data.
      • toPropertyString

        public java.lang.String toPropertyString()
        Description copied from interface: RepositoryItem
        The item can be initialized based on the data loaded from a configuration file. In such a case the item representation is usually very simplified as a list of parameters separated by a marker. Please note, usually each item is separated from another with a comma, therefore do not use a comma in the item property string. Double collon is commonly used alternative.
        Returns:
        a property string representing the repository item in a simplified form.