Interface ResourceDescriptor

  • All Superinterfaces:
    PluginDataContainer, UserAttributeContainer
    All Known Subinterfaces:
    ChangeableResourceDescriptor

    public interface ResourceDescriptor
    extends UserAttributeContainer, PluginDataContainer
    A resource descriptor is used as a reference to an abstract (binary) resource (for instance 3rd party libraries) in the repository and to store additional data, like a revision and a name.

    Additional information may be required, depending on the context in which the code descriptor is used. This information can be stored in the user attributes.

    Author:
    Kevin Goeser, Ulrich Kreher
    • Method Detail

      • getID

        UUID getID()
        Returns the repository-wide unique ID of the resource. It is used to reference the resource and allows for changing its name w/o needing to update any reference.
        Returns:
        The unique ID of the resource.
      • getName

        String getName()
        The arbitrary name of the resource.
        Returns:
        The arbitrary name of the resource.
      • getDescription

        String getDescription()
        Returns a description text of the resource (may be null).
        Returns:
        The description of the resource or null.
      • getRevision

        long getRevision()
        Gets the (base) revision of this resource which allows to track changes. To modify a resource (descriptor) it needs to be in a development branch. As soon as it is changed, its state is set to IN_DEVELOPMENT but the revision remains until the branch is released.
        Returns:
        The revision of this resource (descriptor) or the revision which it is based upon.
      • getState

        State getState()
        Gets the current deployment state of this resource descriptor, that is whether it is currently modified, it can be used or it may not be used any more.
        Returns:
        The current deployment state of this code descriptor that implicitly also applies to all child entities.