Class GovernanceActionContext

    • Constructor Detail

      • GovernanceActionContext

        public GovernanceActionContext​(String userId,
                                       String governanceActionGUID,
                                       String requestType,
                                       Map<String,​String> requestParameters,
                                       List<RequestSourceElement> requestSourceElements,
                                       List<ActionTargetElement> actionTargetElements,
                                       OpenMetadataClient openMetadataStore)
        Constructor sets up the key parameters for processing the request to the governance action service.
        Parameters:
        userId - calling user
        governanceActionGUID - unique identifier of the governance action that triggered this governance service
        requestType - unique identifier of the asset that the annotations should be attached to
        requestParameters - name-value properties to control the governance action service
        requestSourceElements - metadata elements associated with the request to the governance action service
        actionTargetElements - metadata elements that need to be worked on by the governance action service
        openMetadataStore - client to the metadata store for use by the governance action service
    • Method Detail

      • getRequestType

        public String getRequestType()
        Return the unique identifier of the asset being discovered.
        Specified by:
        getRequestType in interface GovernanceContext
        Returns:
        string guid
      • getRequestParameters

        public Map<String,​String> getRequestParameters()
        Return the properties that hold the parameters used to drive the governance action service's processing.
        Specified by:
        getRequestParameters in interface GovernanceContext
        Returns:
        property map
      • getRequestSourceElements

        public List<RequestSourceElement> getRequestSourceElements()
        Return the list of metadata elements associated with the request to the governance action service. This list will not change during the lifetime of the service.
        Specified by:
        getRequestSourceElements in interface GovernanceContext
        Returns:
        list of request source elements
      • getOpenMetadataStore

        public OpenMetadataStore getOpenMetadataStore()
        Return the client to access metadata from the open metadata repositories. This enables the governance action service to retrieve more information about the metadata elements linked to the request source and action target elements.
        Specified by:
        getOpenMetadataStore in interface GovernanceContext
        Returns:
        metadata store client
      • createIncidentReport

        public String createIncidentReport​(String qualifiedName,
                                           int domainIdentifier,
                                           String background,
                                           List<IncidentImpactedElement> impactedResources,
                                           List<IncidentDependency> previousIncidents,
                                           Map<String,​Integer> incidentClassifiers,
                                           Map<String,​String> additionalProperties)
                                    throws InvalidParameterException,
                                           UserNotAuthorizedException,
                                           PropertyServerException
        Create an incident report to capture the situation detected by this governance action service. This incident report will be processed by other governance activities.
        Specified by:
        createIncidentReport in interface GovernanceContext
        Parameters:
        qualifiedName - unique identifier to give this new incident report
        domainIdentifier - governance domain associated with this action (0=ALL)
        background - description of the situation
        impactedResources - details of the resources impacted by this situation
        previousIncidents - links to previous incident reports covering this situation
        incidentClassifiers - initial classifiers for the incident report
        additionalProperties - additional arbitrary properties for the incident reports
        Returns:
        unique identifier of the resulting incident report
        Throws:
        InvalidParameterException - null or non-unique qualified name for the incident report
        UserNotAuthorizedException - this governance action service is not authorized to create a incident report
        PropertyServerException - there is a problem with the metadata store
      • updateActionTargetStatus

        public void updateActionTargetStatus​(String actionTargetGUID,
                                             GovernanceActionStatus status,
                                             Date startDate,
                                             Date completionDate)
                                      throws InvalidParameterException,
                                             UserNotAuthorizedException,
                                             PropertyServerException
        Update the status of a specific action target. By default, these values are derived from the values for the governance action service. However, if the governance action service has to process name target elements, then setting the status on each individual target will show the progress of the governance action service.
        Specified by:
        updateActionTargetStatus in interface GovernanceContext
        Parameters:
        actionTargetGUID - unique identifier of the governance action service.
        status - status enum to show its progress
        startDate - date/time that the governance action service started processing the target
        completionDate - date/time that the governance process completed processing this target.
        Throws:
        InvalidParameterException - the action target GUID is not recognized
        UserNotAuthorizedException - the governance action service is not authorized to update the action target properties
        PropertyServerException - there is a problem connecting to the metadata store
      • createAsset

        public String createAsset​(String assetTypeName,
                                  String qualifiedName,
                                  String name,
                                  String description)
                           throws InvalidParameterException,
                                  UserNotAuthorizedException,
                                  PropertyServerException
        Create an asset such as a data file, database, API or server. This is used if the provisioning governance action service has created a new asset as part of the provisioning process. This interface includes an optional templateGUID to copy the structure of an existing asset of the same type.
        Specified by:
        createAsset in interface ProvisioningGovernanceContext
        Parameters:
        assetTypeName - the type name of the asset. This is the name of an open metadata type that inherits from "Asset".
        qualifiedName - the unique name of the new asset
        name - the technical display name of the asset
        description - the description of the asset
        Returns:
        unique identifier of the new asset
        Throws:
        InvalidParameterException - the type name or qualified name is null or invalid
        UserNotAuthorizedException - this governance action service is not authorized to create an asset
        PropertyServerException - there is a problem connecting to the metadata store
      • createAssetFromTemplate

        public String createAssetFromTemplate​(String templateGUID,
                                              String qualifiedName,
                                              String name,
                                              String description)
                                       throws InvalidParameterException,
                                              UserNotAuthorizedException,
                                              PropertyServerException
        Create an asset such as a data file, database, API or server. This is used if the provisioning governance action service has created a new asset as part of the provisioning process. This interface includes an optional templateGUID to copy the structure of an existing asset of the same type.
        Specified by:
        createAssetFromTemplate in interface ProvisioningGovernanceContext
        Parameters:
        templateGUID - the unique identifier of the existing asset to copy (this will copy all of the attachments such as nested content, schema, connection etc)
        qualifiedName - the unique name of the new asset
        name - the technical display name of the asset
        description - the description of the asset
        Returns:
        unique identifier of the new asset
        Throws:
        InvalidParameterException - the type name or qualified name is null or invalid
        UserNotAuthorizedException - this governance action service is not authorized to create an asset
        PropertyServerException - there is a problem connecting to the metadata store
      • createChildProcess

        public String createChildProcess​(String processTypeName,
                                         ElementStatus initialStatus,
                                         String qualifiedName,
                                         String name,
                                         String description,
                                         String parentGUID)
                                  throws InvalidParameterException,
                                         UserNotAuthorizedException,
                                         PropertyServerException
        Create a process that represents the processing instance of this governance action.
        Specified by:
        createChildProcess in interface ProvisioningGovernanceContext
        Parameters:
        processTypeName - the type name of the process. This is the name of an open metadata type that inherits from "Process".
        initialStatus - status value of the process
        qualifiedName - the unique name of the new process
        name - the technical display name of the process
        description - the description of the process
        parentGUID - the unique identifier of the existing process to copy (this will copy all of the attachments such as ports, nested content, schema, connection etc)
        Returns:
        unique identifier of the new process
        Throws:
        InvalidParameterException - the type name or qualified name is null or invalid
        UserNotAuthorizedException - this governance action service is not authorized to create a process
        PropertyServerException - there is a problem connecting to the metadata store
      • createMetadataElement

        public String createMetadataElement​(String metadataElementTypeName,
                                            ElementProperties properties,
                                            String templateGUID)
                                     throws InvalidParameterException,
                                            UserNotAuthorizedException,
                                            PropertyServerException
        Create a new metadata element in the metadata store. The type name comes from the open metadata types. The selected type also controls the names and types of the properties that are allowed. This metadata element will be given an initial status of ACTIVE which is sufficient for most types of elements.
        Specified by:
        createMetadataElement in interface RemediationGovernanceContext
        Parameters:
        metadataElementTypeName - type name of the new metadata element
        properties - properties of the new metadata element
        templateGUID - the unique identifier of the existing asset to copy (this will copy all of the attachments such as nested content, schema connection etc)
        Returns:
        unique identifier of the new metadata element
        Throws:
        InvalidParameterException - the type name, status or one of the properties is invalid
        UserNotAuthorizedException - the governance action service is not authorized to create this type of element
        PropertyServerException - there is a problem with the metadata store
      • createMetadataElement

        public String createMetadataElement​(String metadataElementTypeName,
                                            ElementStatus initialStatus,
                                            Date effectiveFrom,
                                            Date effectiveTo,
                                            ElementProperties properties,
                                            String templateGUID)
                                     throws InvalidParameterException,
                                            UserNotAuthorizedException,
                                            PropertyServerException
        Create a new metadata element in the metadata store. The type name comes from the open metadata types. The selected type also controls the names and types of the properties that are allowed. This version of the method allows access to advanced features such as multiple states and effectivity dates.
        Specified by:
        createMetadataElement in interface RemediationGovernanceContext
        Parameters:
        metadataElementTypeName - type name of the new metadata element
        initialStatus - initial status of the metadata element
        effectiveFrom - the date when this element is active - null for active on creation
        effectiveTo - the date when this element becomes inactive - null for active until deleted
        properties - properties of the new metadata element
        templateGUID - the unique identifier of the existing asset to copy (this will copy all of the attachments such as nested content, schema connection etc)
        Returns:
        unique identifier of the new metadata element
        Throws:
        InvalidParameterException - the type name, status or one of the properties is invalid
        UserNotAuthorizedException - the governance action service is not authorized to create this type of element
        PropertyServerException - there is a problem with the metadata store
      • updateMetadataElement

        public void updateMetadataElement​(String metadataElementGUID,
                                          boolean replaceProperties,
                                          boolean forLineage,
                                          boolean forDuplicateProcessing,
                                          ElementProperties properties,
                                          Date effectiveTime)
                                   throws InvalidParameterException,
                                          UserNotAuthorizedException,
                                          PropertyServerException
        Update the properties of a specific metadata element. The properties must match the type definition associated with the metadata element when it was created. However, it is possible to update a few properties, or replace all of them by the value used in the replaceProperties flag.
        Specified by:
        updateMetadataElement in interface RemediationGovernanceContext
        Parameters:
        metadataElementGUID - unique identifier of the metadata element to update
        replaceProperties - flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query is for duplicate processing and so must not deduplicate
        properties - new properties for the metadata element
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        Throws:
        InvalidParameterException - either the unique identifier or the properties are invalid in some way
        UserNotAuthorizedException - the governance action service is not authorized to update this element
        PropertyServerException - there is a problem with the metadata store
      • updateMetadataElementStatus

        public void updateMetadataElementStatus​(String metadataElementGUID,
                                                boolean forLineage,
                                                boolean forDuplicateProcessing,
                                                ElementStatus newElementStatus,
                                                Date effectiveFrom,
                                                Date effectiveTo,
                                                Date effectiveTime)
                                         throws InvalidParameterException,
                                                UserNotAuthorizedException,
                                                PropertyServerException
        Update the status of specific metadata element. The new status must match a status value that is defined for the element's type assigned when it was created. The effectivity dates control the visibility of the element through specific APIs.
        Specified by:
        updateMetadataElementStatus in interface RemediationGovernanceContext
        Parameters:
        metadataElementGUID - unique identifier of the metadata element to update
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query is for duplicate processing and so must not deduplicate
        newElementStatus - new status value - or null to leave as is
        effectiveFrom - the date when this element is active - null for active now
        effectiveTo - the date when this element becomes inactive - null for active until deleted
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        Throws:
        InvalidParameterException - either the unique identifier or the status are invalid in some way
        UserNotAuthorizedException - the governance action service is not authorized to update this element
        PropertyServerException - there is a problem with the metadata store
      • classifyMetadataElement

        public void classifyMetadataElement​(String metadataElementGUID,
                                            String classificationName,
                                            boolean forLineage,
                                            boolean forDuplicateProcessing,
                                            ElementProperties properties,
                                            Date effectiveTime)
                                     throws InvalidParameterException,
                                            UserNotAuthorizedException,
                                            PropertyServerException
        Add a new classification to the metadata element. Note that only one classification with the same name can be attached to a metadata element.
        Specified by:
        classifyMetadataElement in interface RemediationGovernanceContext
        Parameters:
        metadataElementGUID - unique identifier of the metadata element to update
        classificationName - name of the classification to add (if the classification is already present then use reclassify)
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query is for duplicate processing and so must not deduplicate
        properties - properties to store in the new classification. These must conform to the valid properties associated with the classification name
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        Throws:
        InvalidParameterException - the unique identifier or classification name is null or invalid in some way; properties do not match the valid properties associated with the classification's type definition
        UserNotAuthorizedException - the governance action service is not authorized to update this element
        PropertyServerException - there is a problem with the metadata store
      • classifyMetadataElement

        public void classifyMetadataElement​(String metadataElementGUID,
                                            String classificationName,
                                            boolean forLineage,
                                            boolean forDuplicateProcessing,
                                            Date effectiveFrom,
                                            Date effectiveTo,
                                            ElementProperties properties,
                                            Date effectiveTime)
                                     throws InvalidParameterException,
                                            UserNotAuthorizedException,
                                            PropertyServerException
        Add a new classification to the metadata element. Note that only one classification with the same name can be attached to a metadata element.
        Specified by:
        classifyMetadataElement in interface RemediationGovernanceContext
        Parameters:
        metadataElementGUID - unique identifier of the metadata element to update
        classificationName - name of the classification to add (if the classification is already present then use reclassify)
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query is for duplicate processing and so must not deduplicate
        effectiveFrom - the date when this classification is active - null for active now
        effectiveTo - the date when this classification becomes inactive - null for active until deleted
        properties - properties to store in the new classification. These must conform to the valid properties associated with the classification name
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        Throws:
        InvalidParameterException - the unique identifier or classification name is null or invalid in some way; properties do not match the valid properties associated with the classification's type definition
        UserNotAuthorizedException - the governance action service is not authorized to update this element
        PropertyServerException - there is a problem with the metadata store
      • reclassifyMetadataElement

        public void reclassifyMetadataElement​(String metadataElementGUID,
                                              String classificationName,
                                              boolean replaceProperties,
                                              boolean forLineage,
                                              boolean forDuplicateProcessing,
                                              ElementProperties properties,
                                              Date effectiveTime)
                                       throws InvalidParameterException,
                                              UserNotAuthorizedException,
                                              PropertyServerException
        Update the properties of a classification that is currently attached to a specific metadata element.
        Specified by:
        reclassifyMetadataElement in interface RemediationGovernanceContext
        Parameters:
        metadataElementGUID - unique identifier of the metadata element to update
        classificationName - unique name of the classification to update
        replaceProperties - flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query is for duplicate processing and so must not deduplicate
        properties - new properties for the classification
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        Throws:
        InvalidParameterException - the unique identifier or classification name is null or invalid in some way; properties do not match the valid properties associated with the classification's type definition
        UserNotAuthorizedException - the governance action service is not authorized to update this element/classification
        PropertyServerException - there is a problem with the metadata store
      • updateClassificationStatus

        public void updateClassificationStatus​(String metadataElementGUID,
                                               String classificationName,
                                               boolean forLineage,
                                               boolean forDuplicateProcessing,
                                               Date effectiveFrom,
                                               Date effectiveTo,
                                               Date effectiveTime)
                                        throws InvalidParameterException,
                                               UserNotAuthorizedException,
                                               PropertyServerException
        Update the effectivity dates of a specific classification attached to a metadata element. The effectivity dates control the visibility of the classification through specific APIs.
        Specified by:
        updateClassificationStatus in interface RemediationGovernanceContext
        Parameters:
        metadataElementGUID - unique identifier of the metadata element to update
        classificationName - unique name of the classification to update
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query is for duplicate processing and so must not deduplicate
        effectiveFrom - the date when this element is active - null for active now
        effectiveTo - the date when this element becomes inactive - null for active until deleted
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        Throws:
        InvalidParameterException - either the unique identifier or the status are invalid in some way
        UserNotAuthorizedException - the governance action service is not authorized to update this element
        PropertyServerException - there is a problem with the metadata store
      • unclassifyMetadataElement

        public void unclassifyMetadataElement​(String metadataElementGUID,
                                              String classificationName,
                                              boolean forLineage,
                                              boolean forDuplicateProcessing,
                                              Date effectiveTime)
                                       throws InvalidParameterException,
                                              UserNotAuthorizedException,
                                              PropertyServerException
        Remove the named classification from a specific metadata element.
        Specified by:
        unclassifyMetadataElement in interface RemediationGovernanceContext
        Parameters:
        metadataElementGUID - unique identifier of the metadata element to update
        classificationName - unique name of the classification to remove
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query 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)
        Throws:
        InvalidParameterException - the unique identifier or classification name is null or invalid in some way
        UserNotAuthorizedException - the governance action service is not authorized to remove this classification
        PropertyServerException - there is a problem with the metadata store
      • createRelatedElements

        public String createRelatedElements​(String relationshipTypeName,
                                            String metadataElement1GUID,
                                            String metadataElement2GUID,
                                            boolean forLineage,
                                            boolean forDuplicateProcessing,
                                            ElementProperties properties,
                                            Date effectiveTime)
                                     throws InvalidParameterException,
                                            UserNotAuthorizedException,
                                            PropertyServerException
        Create a relationship between two metadata elements. It is important to put the right element at each end of the relationship according to the type definition since this will affect how the relationship is interpreted.
        Specified by:
        createRelatedElements in interface RemediationGovernanceContext
        Parameters:
        relationshipTypeName - name of the type of relationship to create. This will determine the types of metadata elements that can be related and the properties that can be associated with this relationship.
        metadataElement1GUID - unique identifier of the metadata element at end 1 of the relationship
        metadataElement2GUID - unique identifier of the metadata element at end 2 of the relationship
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query is for duplicate processing and so must not deduplicate
        properties - the properties of the relationship
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        Returns:
        unique identifier of the new relationship
        Throws:
        InvalidParameterException - the unique identifier's of the metadata elements are null or invalid in some way; the properties are not valid for this type of relationship
        UserNotAuthorizedException - the governance action service is not authorized to create this type of relationship
        PropertyServerException - there is a problem with the metadata store
      • createRelatedElements

        public String createRelatedElements​(String relationshipTypeName,
                                            String metadataElement1GUID,
                                            String metadataElement2GUID,
                                            boolean forLineage,
                                            boolean forDuplicateProcessing,
                                            Date effectiveFrom,
                                            Date effectiveTo,
                                            ElementProperties properties,
                                            Date effectiveTime)
                                     throws InvalidParameterException,
                                            UserNotAuthorizedException,
                                            PropertyServerException
        Create a relationship between two metadata elements. It is important to put the right element at each end of the relationship according to the type definition since this will affect how the relationship is interpreted.
        Specified by:
        createRelatedElements in interface RemediationGovernanceContext
        Parameters:
        relationshipTypeName - name of the type of relationship to create. This will determine the types of metadata elements that can be related and the properties that can be associated with this relationship.
        metadataElement1GUID - unique identifier of the metadata element at end 1 of the relationship
        metadataElement2GUID - unique identifier of the metadata element at end 2 of the relationship
        forLineage - the query is to support lineage retrieval
        forDuplicateProcessing - the query is for duplicate processing and so must not deduplicate
        effectiveFrom - the date when this element is active - null for active now
        effectiveTo - the date when this element becomes inactive - null for active until deleted
        properties - the properties of the relationship
        effectiveTime - the time that the retrieved elements must be effective for (null for any time, new Date() for now)
        Returns:
        unique identifier of the new relationship
        Throws:
        InvalidParameterException - the unique identifier's of the metadata elements are null or invalid in some way; the properties are not valid for this type of relationship
        UserNotAuthorizedException - the governance action service is not authorized to create this type of relationship
        PropertyServerException - there is a problem with the metadata store
      • linkElementsAsPeerDuplicates

        public void linkElementsAsPeerDuplicates​(String metadataElement1GUID,
                                                 String metadataElement2GUID,
                                                 int statusIdentifier,
                                                 String steward,
                                                 String stewardTypeName,
                                                 String stewardPropertyName,
                                                 String source,
                                                 String notes)
                                          throws InvalidParameterException,
                                                 UserNotAuthorizedException,
                                                 PropertyServerException
        Link elements as peer duplicates. Create a simple relationship between two elements. If the relationship already exists, the properties are updated.
        Specified by:
        linkElementsAsPeerDuplicates in interface RemediationGovernanceContext
        Parameters:
        metadataElement1GUID - unique identifier of the metadata element at end 1 of the relationship
        metadataElement2GUID - unique identifier of the metadata element at end 2 of the relationship
        statusIdentifier - what is the status of this relationship (negative means untrusted, 0 means unverified and positive means trusted)
        steward - identifier of the steward
        stewardTypeName - type of element used to identify the steward
        stewardPropertyName - property name used to identify steward
        source - source of the duplicate detection processing
        notes - notes for the steward
        Throws:
        InvalidParameterException - the unique identifier's of the metadata elements are null or invalid in some way; the properties are not valid for this type of relationship
        UserNotAuthorizedException - the governance action service is not authorized to create this type of relationship
        PropertyServerException - there is a problem with the metadata store
      • openToDo

        public String openToDo​(String toDoQualifiedName,
                               String title,
                               String instructions,
                               int priority,
                               Date dueDate,
                               String assignTo)
                        throws InvalidParameterException,
                               UserNotAuthorizedException,
                               PropertyServerException
        Create a To Do request for someone to work on.
        Specified by:
        openToDo in interface TriageGovernanceContext
        Parameters:
        toDoQualifiedName - unique name for the to do. (Could be the engine name and a guid?)
        title - short meaningful phrase for the person receiving the request
        instructions - further details on what to do
        priority - priority value (based on organization's scale)
        dueDate - date/time this needs to be completed
        assignTo - qualified name of the PersonRole element for the recipient
        Returns:
        unique identifier of new to do element
        Throws:
        InvalidParameterException - either todoQualifiedName or assignedTo are null or not recognized
        UserNotAuthorizedException - the governance action service is not authorized to create a to do
        PropertyServerException - there is a problem connecting to (or inside) the metadata store
      • registerListener

        public void registerListener​(WatchdogGovernanceListener listener,
                                     List<WatchdogEventType> interestingEventTypes,
                                     List<String> interestingMetadataTypes,
                                     String specificInstance)
                              throws InvalidParameterException
        Register a listener to receive events about changes to metadata elements in the open metadata store. There can be only one registered listener. If this method is called more than once, the new parameters replace the existing parameters. This means the watchdog governance action service can change the listener and the parameters that control the types of events received while it is running. The types of events passed to the listener are controlled by the combination of the interesting event types and the interesting metadata types. That is an event is only passed to the listener if it matches both the interesting event types and the interesting metadata types. If specific instance, interestingEventTypes or interestingMetadataTypes are null, it defaults to "any". If the listener parameter is null, no more events are passed to the listener. The type name specified in the interestingMetadataTypes refers to the subject of the event - so it is the type of the metadata element for metadata element types, the type of the relationship for related elements events and the name of the classification for classification events.
        Specified by:
        registerListener in interface WatchdogGovernanceContext
        Parameters:
        listener - listener object to receive events
        interestingEventTypes - types of events that should be passed to the listener
        interestingMetadataTypes - types of elements that are the subject of the interesting event types
        specificInstance - unique identifier of a specific instance (metadata element or relationship) to watch for
        Throws:
        InvalidParameterException - one or more of the type names are unrecognized
      • initiateGovernanceAction

        public String initiateGovernanceAction​(String qualifiedName,
                                               int domainIdentifier,
                                               String displayName,
                                               String description,
                                               List<String> requestSourceGUIDs,
                                               List<NewActionTarget> actionTargets,
                                               Date startTime,
                                               String governanceEngineName,
                                               String requestType,
                                               Map<String,​String> requestParameters)
                                        throws InvalidParameterException,
                                               UserNotAuthorizedException,
                                               PropertyServerException
        Create a governance action in the metadata store which will trigger the governance action service associated with the supplied request type. The governance action remains to act as a record of the actions taken for auditing.
        Specified by:
        initiateGovernanceAction in interface WatchdogGovernanceContext
        Parameters:
        qualifiedName - unique identifier to give this governance action
        domainIdentifier - governance domain associated with this action (0=ALL)
        displayName - display name for this action
        description - description for this action
        requestSourceGUIDs - request source elements for the resulting governance action service
        actionTargets - map of action target names to GUIDs for the resulting governance action service
        startTime - future start time or null for "as soon as possible".
        governanceEngineName - name of the governance engine to run the request
        requestType - request type to identify the governance action service to run
        requestParameters - properties to pass to the governance action service
        Returns:
        unique identifier of the governance action
        Throws:
        InvalidParameterException - null qualified name
        UserNotAuthorizedException - this governance action service is not authorized to create a governance action
        PropertyServerException - there is a problem with the metadata store
      • toString

        public String toString()
        Standard toString method.
        Overrides:
        toString in class Object
        Returns:
        print out of variables in a JSON-style