Interface VirtualService

  • All Superinterfaces:
    org.gcube.informationsystem.base.reference.Element, org.gcube.informationsystem.model.reference.entities.Entity, org.gcube.informationsystem.base.reference.entities.EntityElement, org.gcube.informationsystem.model.reference.ERElement, GCubeResource, org.gcube.informationsystem.base.reference.IdentifiableElement, org.gcube.informationsystem.model.reference.ModelElement, org.gcube.informationsystem.model.reference.entities.Resource, Serializable, Service
    All Known Implementing Classes:
    VirtualServiceImpl

    @ResourceSchema(facets=,
                    resources=)
    @TypeMetadata(name="VirtualService",
                  description="VirtualService is an abstract service (non-physically existing service) worth being represented as an existing Service for management purposes. Examples of usage include cases where a set of services has to be managed like an existing unit. This resource is essential from infrastructure management point of view because it allows easily sharing a pool of services across VREs as a single unit. VirtualService mainly consists of a service definition which uses relations to [ConfigurationTemplate](type:ConfigurationTemplate), [EService](type:EService), [Software](type:Software) (using [Demands](type:Demands) relation) to properly support the sharing across VREs. The correct sharing is feasible thanks to the [PropagationConstraint](type:PropagationConstraint) of the model. The IS provides only the support for resource sharing as a bundle. Instead, the actions required to deploy a [Software](type:Software) are a responsibility of the service invoking the sharing operation. This resource emerged thanks to the experience matured with gCube IS V.1 (gCore Based IS) where this resource was represented as a Generic Resource containing the list of the resource\u2019s ids forming the bundle which often led to inconsistency.",
                  version="1.0.0")
    @Change(version="1.0.0",
            description="First Version")
    public interface VirtualService
    extends Service
    VirtualService is an abstract service (non-physically existing service) worth being represented as an existing Service for management purposes. Examples of usage include cases where set of services have to be managed like an existing unit. This resource is essential from infrastructure management point of view because it allows easily sharing a pool of services across VREs as a single unit. VirtualService mainly consists of a service definition which uses relations to ConfigurationTemplate, EService, Software (using Demands relation) to properly support the sharing across VREs. The correct sharing is feasible thanks to the PropagationConstraint of the model. The IS provides only the support for resource sharing as a bundle. Instead, the actions required to deploy a Software are a responsibility of the service invoking the sharing operation. This resource emerged thanks to the experience matured with gCube IS V.1 (gCore Based IS) where this resource was represented as a Generic Resource containing the list of the resource’s ids forming the bundle, which often led to inconsistency.
    Author:
    Luca Frosini (ISTI - CNR)
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static String NAME
      The name associated with this resource
      • Fields inherited from interface org.gcube.informationsystem.base.reference.Element

        DATETIME_PATTERN, REDACTED, TYPE_PROPERTY, UNKNOWN_USER
      • Fields inherited from interface org.gcube.informationsystem.model.reference.ERElement

        CONTEXTS_PROPERTY
      • Fields inherited from interface org.gcube.informationsystem.base.reference.IdentifiableElement

        ID_PROPERTY, METADATA_PROPERTY
      • Fields inherited from interface org.gcube.informationsystem.model.reference.ModelElement

        EXPECTED_TYPE_PROPERTY, SUPERTYPES_PROPERTY
      • Fields inherited from interface org.gcube.informationsystem.model.reference.entities.Resource

        CONSISTS_OF_PROPERTY, IS_RELATED_TO_PROPERTY
    • Method Summary

      Static Methods 
      Modifier and Type Method Description
      static VirtualService getDefaultInstance()
      Returns a default instance of VirtualService
      • Methods inherited from interface org.gcube.informationsystem.base.reference.Element

        getTypeName
      • Methods inherited from interface org.gcube.informationsystem.base.reference.entities.EntityElement

        getID, getMetadata, setID, setMetadata
      • Methods inherited from interface org.gcube.informationsystem.model.reference.ERElement

        getContexts
      • Methods inherited from interface org.gcube.informationsystem.model.reference.ModelElement

        getExpectedType, getSupertypes
      • Methods inherited from interface org.gcube.informationsystem.model.reference.entities.Resource

        addFacet, addFacet, addFacet, attachResource, getConsistsOf, getConsistsOf, getConsistsOf, getFacets, getFacets, getFacets, getIsRelatedTo, getIsRelatedTo
    • Method Detail

      • getDefaultInstance

        static VirtualService getDefaultInstance()
        Returns a default instance of VirtualService
        Returns:
        a default instance of VirtualService