Class SoftwareCapabilityHandler<B>


public class SoftwareCapabilityHandler<B> extends ReferenceableHandler<B>
SoftwareCapabilityHandler provides the support for managing software capabilities.
  • Constructor Details

    • SoftwareCapabilityHandler

      public SoftwareCapabilityHandler(OpenMetadataAPIGenericConverter<B> converter, Class<B> beanClass, String serviceName, String serverName, InvalidParameterHandler invalidParameterHandler, RepositoryHandler repositoryHandler, OMRSRepositoryHelper repositoryHelper, String localServerUserId, OpenMetadataServerSecurityVerifier securityVerifier, List<String> supportedZones, List<String> defaultZones, List<String> publishZones, AuditLog auditLog)
      Construct the handler information needed to interact with the repository services
      Parameters:
      converter - specific converter for this bean class
      beanClass - name of bean class that is represented by the generic class B
      serviceName - name of this service
      serverName - name of the local server
      invalidParameterHandler - handler for managing parameter errors
      repositoryHandler - manages calls to the repository services
      repositoryHelper - provides utilities for manipulating the repository services objects
      localServerUserId - userId for this server
      securityVerifier - open metadata security services verifier
      supportedZones - list of zones that the access service is allowed to serve Asset instances from.
      defaultZones - list of zones that the access service should set in all new Asset instances.
      publishZones - list of zones that the access service sets up in published Asset instances.
      auditLog - destination for audit log events.
  • Method Details

    • createFileSystem

      public String createFileSystem(String userId, String externalSourceGUID, String externalSourceName, String uniqueName, String displayName, String description, String type, String version, String patchLevel, String source, String format, String encryption, Map<String,String> additionalProperties, Map<String,String> vendorProperties, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Files live on a file system. This method creates a top level anchor for a file system. It has its own method because ot the extra properties in the FileSystem classification
      Parameters:
      userId - calling user
      externalSourceGUID - guid of the software capability entity that represented the external source - null for local
      externalSourceName - name of the software capability entity that represented the external source
      uniqueName - qualified name for the file system
      displayName - short display name
      description - description of the file system
      type - type of file system
      version - version of file system
      patchLevel - patchLevel of software supporting the file system
      source - supplier of the software for this file system
      format - format of files on this file system
      encryption - encryption type - null for unencrypted
      additionalProperties - additional properties
      vendorProperties - properties about the vendor and/or their product
      effectiveFrom - starting time for this element (null for all time)
      effectiveTo - ending time for this element (null for all time)
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      unique identifier for the file system
      Throws:
      InvalidParameterException - one of the parameters is null or invalid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • createSoftwareCapability

      public String createSoftwareCapability(String userId, String externalSourceGUID, String externalSourceName, String specializedTypeName, String classificationName, String uniqueName, String displayName, String description, String deployedImplementationType, String version, String patchLevel, String source, Map<String,String> additionalProperties, Map<String,Object> extendedProperties, Map<String,String> vendorProperties, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Create specialized Software Server Capabilities entities. Most software service capabilities either specialize software capability or have a special classification.
      Parameters:
      userId - calling user
      externalSourceGUID - guid of the software capability entity that represented the external source - null for local
      externalSourceName - name of the software capability entity that represented the external source
      specializedTypeName - unique name of the software capability type
      classificationName - name of classification if any
      uniqueName - qualified name for the software capability
      displayName - short display name
      description - description of the file system
      deployedImplementationType - type of file system
      version - version of file system
      patchLevel - patchLevel of software supporting the file system
      source - supplier of the software for this file system
      additionalProperties - additional properties
      extendedProperties - properties defined for the subtype
      vendorProperties - properties about the vendor and/or their product
      effectiveFrom - when is this element effective from
      effectiveTo - when is this element effect to
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      unique identifier for the file system
      Throws:
      InvalidParameterException - one of the parameters is null or invalid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • createSoftwareCapabilityFromTemplate

      public String createSoftwareCapabilityFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String templateGUID, String templateGUIDParameterName, String qualifiedName, String qualifiedNameParameterName, String displayName, String description, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Create a new metadata element to represent a connection using an existing metadata element as a template. The template defines additional classifications and relationships that should be added to the new element.
      Parameters:
      userId - calling user
      externalSourceGUID - guid of the software capability entity that represented the external source - null for local
      externalSourceName - name of the software capability entity that represented the external source
      templateGUID - unique identifier of the metadata element to copy
      templateGUIDParameterName - parameter name for templateGUID
      qualifiedName - unique name for the element - used in other configuration
      qualifiedNameParameterName - parameter name for qualifiedName
      displayName - short display name for the new element
      description - description of the new element
      methodName - calling method
      Returns:
      unique identifier of the new metadata element
      Throws:
      InvalidParameterException - one of the parameters is invalid
      UserNotAuthorizedException - the user is not authorized to issue this request
      PropertyServerException - there is a problem reported in the open metadata server(s)
    • addSoftwareCapabilityClassification

      public void addSoftwareCapabilityClassification(String userId, String externalSourceGUID, String externalSourceName, String softwareCapabilityGUID, String softwareCapabilityGUIDParameterName, String classificationName, Date effectiveFrom, Date effectiveTo, boolean isMergeUpdate, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Create specialized Software Server Capabilities entities. Most software service capabilities either specialize software capability or have a special classification. Metadata server
      Parameters:
      userId - calling user
      externalSourceGUID - guid of the software capability entity that represented the external source - null for local
      externalSourceName - name of the software capability entity that represented the external source
      softwareCapabilityGUID - unique identifier for the software capability that is to be classified
      softwareCapabilityGUIDParameterName - parameter supplying softwareCapabilityGUID
      classificationName - name of classification if any
      effectiveFrom - starting time for this relationship (null for all time)
      effectiveTo - ending time for this relationship (null for all time)
      isMergeUpdate - should the supplied properties be merged with existing properties (true) only replacing the properties with matching names, or should the entire properties of the instance be replaced?
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - one of the parameters is null or invalid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • updateSoftwareCapability

      public void updateSoftwareCapability(String userId, String externalSourceGUID, String externalSourceName, String capabilityGUID, String capabilityGUIDParameterName, String uniqueName, String displayName, String description, String type, String version, String patchLevel, String source, Map<String,String> additionalProperties, Map<String,Object> extendedProperties, Map<String,String> vendorProperties, boolean isMergeUpdate, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Update a software capability entity - the classification is not updated - assumed not to change as the classification is like its type.
      Parameters:
      userId - calling user
      externalSourceGUID - guid of the software capability entity that represented the external source - null for local
      externalSourceName - name of the software capability entity that represented the external source
      capabilityGUID - unique identifier for the capability
      capabilityGUIDParameterName - parameter providing capabilityGUID
      uniqueName - qualified name for the software capability
      displayName - short display name
      description - description of the file system
      type - type of file system
      version - version of file system
      patchLevel - patchLevel of software supporting the file system
      source - supplier of the software for this file system
      additionalProperties - additional properties
      extendedProperties - properties defined for the subtype
      vendorProperties - properties about the vendor and/or their product
      isMergeUpdate - should the properties be merged with existing properties or replace the existing properties?
      effectiveFrom - when is this element effective from
      effectiveTo - when is this element effect to
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Throws:
      InvalidParameterException - one of the parameters is null or invalid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • getSoftwareCapabilityGUIDsByType

      public List<String> getSoftwareCapabilityGUIDsByType(String userId, String typeGUID, String typeName, int startingFrom, int maxPageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve a list of unique identifiers for defined software capabilities.
      Parameters:
      userId - calling user
      typeGUID - unique identifier of type
      typeName - unique name of type
      startingFrom - starting point in the list
      maxPageSize - maximum number of results
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      List of unique identifiers
      Throws:
      InvalidParameterException - one of the parameters is null or invalid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • getSoftwareServerCapabilitiesByType

      public List<B> getSoftwareServerCapabilitiesByType(String userId, String typeGUID, String typeName, int startingFrom, int maxPageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve a list of defined software capabilities.
      Parameters:
      userId - calling user
      typeGUID - unique identifier of type
      typeName - unique name of type
      startingFrom - starting point in the list
      maxPageSize - maximum number of results
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      List of beans
      Throws:
      InvalidParameterException - one of the parameters is null or invalid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • getSoftwareServerCapabilitiesByClassification

      public List<B> getSoftwareServerCapabilitiesByClassification(String userId, String classificationName, int startingFrom, int maxPageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve a list of defined software capabilities.
      Parameters:
      userId - calling user
      classificationName - name of classification
      startingFrom - starting point in the list
      maxPageSize - maximum number of results
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      List of beans
      Throws:
      InvalidParameterException - one of the parameters is null or invalid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem
    • getSoftwareCapabilityGUIDsByClassification

      public List<String> getSoftwareCapabilityGUIDsByClassification(String userId, String classificationName, int startingFrom, int maxPageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
      Retrieve a list of unique identifiers for defined software capabilities.
      Parameters:
      userId - calling user
      classificationName - name of the classification that identifies the type of software capability required
      startingFrom - starting point in the list
      maxPageSize - maximum number of results
      forLineage - the request is to support lineage retrieval this means entities with the Memento classification can be returned
      forDuplicateProcessing - the request is for duplicate processing and so must not deduplicate
      effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
      methodName - calling method
      Returns:
      List of unique identifiers for the retrieved entities
      Throws:
      InvalidParameterException - one of the parameters is null or invalid
      PropertyServerException - problem accessing property server
      UserNotAuthorizedException - security access problem