Skip to content

Commit

Permalink
Merge pull request #955 from mandy-chessell/code2024
Browse files Browse the repository at this point in the history
Add types for pre-defiend targets for action and request types
  • Loading branch information
mandy-chessell authored Aug 19, 2024
2 parents 7d73bb2 + 1e162b5 commit fd4c715
Show file tree
Hide file tree
Showing 7 changed files with 362 additions and 157 deletions.
137 changes: 136 additions & 1 deletion site/docs/connectors/unity-catalog/unity-catalog.drawio
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<mxfile host="Electron" modified="2024-07-25T14:29:34.220Z" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/24.6.4 Chrome/124.0.6367.207 Electron/30.0.6 Safari/537.36" etag="RLIzKMbinUo083n0b6F4" version="24.6.4" type="device" pages="11">
<mxfile host="Electron" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/24.7.5 Chrome/126.0.6478.183 Electron/31.3.0 Safari/537.36" version="24.7.5" pages="13">
<diagram name="unity-catalog" id="vskI-bIVPBTjREEiDPca">
<mxGraphModel dx="1500" dy="1030" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
Expand Down Expand Up @@ -3835,4 +3835,139 @@
</root>
</mxGraphModel>
</diagram>
<diagram id="oryXcS0Bmjr78AfRhCfU" name="onboarding-pictures">
<mxGraphModel dx="1242" dy="809" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-1" value="Oak Dene&lt;br&gt;Hospital" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="80" y="212.5" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-2" value="Old Market&lt;br&gt;Hospital" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="80" y="307.5" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-3" value="Weekly&lt;br&gt;Measurements" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;shadow=1;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="254" y="160" width="100" height="70" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-4" value="Coco Pharmaceuticals" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;fontColor=#000000;verticalAlign=top;" vertex="1" parent="1">
<mxGeometry x="380" y="90" width="360" height="450" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-5" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1">
<mxGeometry x="410" y="146.5" width="50" height="25" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-6" value="Landing Area" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;verticalAlign=top;fillColor=#ffe6cc;strokeColor=#d79b00;" vertex="1" parent="1">
<mxGeometry x="410" y="160" width="130" height="340" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-7" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="419" y="200" width="40" height="20" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-8" value="Oak Dene&lt;br&gt;Landing Area" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="419" y="215" width="110" height="55" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-9" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="419" y="295" width="40" height="20" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-10" value="Old Market&lt;br&gt;Landing Area" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="419" y="310" width="110" height="55" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-11" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
<mxGeometry x="590" y="146.5" width="50" height="25" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-12" value="Coco Data Lake&lt;div&gt;(UnityCatalog)&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;verticalAlign=top;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
<mxGeometry x="590" y="160" width="130" height="340" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-13" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="600" y="200" width="40" height="20" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-14" value="Drop Foot&lt;br&gt;Clinical Trial&lt;br&gt;Weekly Measurements" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="600" y="212" width="110" height="268" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-15" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;fontColor=#000000;" edge="1" parent="1" source="WTy_8BP-Lw5kVX4caVUQ-1" target="WTy_8BP-Lw5kVX4caVUQ-8">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-16" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;fontColor=#000000;" edge="1" parent="1" source="WTy_8BP-Lw5kVX4caVUQ-2" target="WTy_8BP-Lw5kVX4caVUQ-10">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-17" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.114;entryDx=0;entryDy=0;fontColor=#000000;entryPerimeter=0;" edge="1" parent="1" source="WTy_8BP-Lw5kVX4caVUQ-8" target="WTy_8BP-Lw5kVX4caVUQ-14">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-18" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=-0.009;entryY=0.47;entryDx=0;entryDy=0;fontColor=#000000;entryPerimeter=0;" edge="1" parent="1" source="WTy_8BP-Lw5kVX4caVUQ-10" target="WTy_8BP-Lw5kVX4caVUQ-14">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-19" value="Hampton&lt;div&gt;Hospital&lt;/div&gt;" style="rounded=0;whiteSpace=wrap;html=1;shadow=1;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="80.99" y="402.5" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-20" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="419.99" y="390" width="40" height="20" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-21" value="Hampton&lt;br&gt;Landing Area" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;" vertex="1" parent="1">
<mxGeometry x="419.99" y="405" width="110" height="55" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-22" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;fontColor=#000000;" edge="1" parent="1" source="WTy_8BP-Lw5kVX4caVUQ-19" target="WTy_8BP-Lw5kVX4caVUQ-21">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="WTy_8BP-Lw5kVX4caVUQ-23" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=-0.009;entryY=0.47;entryDx=0;entryDy=0;fontColor=#000000;entryPerimeter=0;" edge="1" parent="1" source="WTy_8BP-Lw5kVX4caVUQ-21">
<mxGeometry relative="1" as="geometry">
<mxPoint x="600" y="432.96000000000004" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="AmPxhxhkDHpI7iD1Xup3-1" value="Weekly&lt;br&gt;Measurements" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;shadow=1;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="254" y="260" width="100" height="70" as="geometry" />
</mxCell>
<mxCell id="AmPxhxhkDHpI7iD1Xup3-2" value="Weekly&lt;br&gt;Measurements" style="shape=note;whiteSpace=wrap;html=1;backgroundOutline=1;darkOpacity=0.05;shadow=1;fontColor=#000000;" vertex="1" parent="1">
<mxGeometry x="254" y="350" width="100" height="70" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
<diagram id="pYbAwFoGgLgQREXiaOmc" name="Page-13">
<mxGraphModel dx="1242" dy="809" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="zEADPkYcsO-HcMamTO68-1" value="Property" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="110" y="120" width="170" height="60" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-2" value="Options" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="280" y="120" width="540" height="60" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-3" value="producedGuard" style="rounded=0;whiteSpace=wrap;html=1;verticalAlign=top;" vertex="1" parent="1">
<mxGeometry x="110" y="180" width="170" height="250" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-4" value="" style="rounded=0;whiteSpace=wrap;html=1;verticalAlign=top;" vertex="1" parent="1">
<mxGeometry x="280" y="180" width="540" height="250" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-5" value="supportedAnalysisStep" style="rounded=0;whiteSpace=wrap;html=1;verticalAlign=top;" vertex="1" parent="1">
<mxGeometry x="110" y="430" width="170" height="250" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-6" value="" style="rounded=0;whiteSpace=wrap;html=1;verticalAlign=top;" vertex="1" parent="1">
<mxGeometry x="280" y="430" width="540" height="250" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-7" value="Name" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="300" y="190" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-8" value="Case Sensitive" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="420" y="190" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-9" value="description" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="540" y="190" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-10" value="Additional Properties" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="660" y="190" width="120" height="30" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-11" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="300" y="220" width="120" height="140" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-12" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="420" y="220" width="120" height="140" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-13" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="540" y="220" width="120" height="140" as="geometry" />
</mxCell>
<mxCell id="zEADPkYcsO-HcMamTO68-14" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="660" y="220" width="120" height="140" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
14 changes: 10 additions & 4 deletions site/docs/types/4/0462-Governance-Action-Processes.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@ In Egeria, the [Open Governance Service](/services/gaf-metadata-management) prov

The *GovernanceActionType* entity describes a type of call to a [governance service](/concepts/governance-service) running in a [governance engine](/concepts/governance-engine). The engine to call is defined using the *GovernanceActionExecutor* relationship. When the governance action type is used to initiate some activity, it results in the creation of an [Engine Action](/concepts/engine-action) to control the call to the governance service running in the linked governance engine.

It inherits from [Referenceable](/types/0/0010-Base-Model) and adds the following attributes:
It inherits from [Referenceable](/types/0/0010-Base-Model) and so has a unique name (*qualifiedName*) and *additionalProperties* attributes. In addition, this type adds:

* *domainIdentifier* links the action to a specific [governance domain](/concepts/governance-domain).
* *displayName* - human-readable name for messages and user interfaces.
* *description* - description of the governance action that is taken.
* *waitTime* - the minimum number of minutes that the engine action should wait before starting. This is in addition to any requested start time from the initiating user.

## GovernanceActionExecutor relationships
## GovernanceActionExecutor relationship

The *GovernanceActionExecutor* relationship identifies the [governance service](/concepts/governance-service) that will run when the [engine action](/concepts/engine-action) is started.

Expand All @@ -34,6 +34,12 @@ The *GovernanceActionExecutor* relationship identifies the [governance service](
* *actionTargetFilter* - lists the names of the action targets to remove from the supplied action targets.
* *actionTargetMap* - provides a translation map between the supplied name of an action target and the name supported by the implementation of the governance service.

## TargetForActionType relationship

The *TargetForActionType* relationship identifies an element that should be passed to the [engine action](/concepts/engine-action) as a [TargetForAction](/types/4/0463-Engine-Actions) when it is started. The caller may also add additional action targets. It has the following attribute.

* *actionTargetName* is an identifier used by the resulting governance service to determine how to use the associated element.

## GovernanceActionProcess entity

The *GovernanceActionProcess* entity is the root of the governance action process. It gives the process its unique name and defines the first step through the *GovernanceActionProcessFlow* relationship.
Expand All @@ -42,13 +48,13 @@ GovernanceActionProcess inherits from [Process](/types/0/0010-Base-Model) so tha

## GovernanceActionProcessFlow relationship

The *GovernanceActionFlow* relationship defines the first [engine action](/concepts/engine-action) to run in a governance action process. It includes an optional *guard* attribute that can be used by the processing engine for logging.
The *GovernanceActionFlow* relationship defines the first *GovernanceActionProcessStep* to run in a governance action process. It includes an optional *guard* attribute that can be used by the processing engine for logging and predefined *requestParameters* to pass to the governance service when called.

## GovernanceProcessStep entity

The *GovernanceActionProcessStep* entity defines a [governance action process step](/concepts/governance-action-process-step). This represents a step in a governance action process. Its attributes provide a template for initializing an [engine action](/concepts/engine-action) when the step in the process runs.

GovernanceActionProcessStep is a [Referenceable](/types/0/0010-Base-Model) and so has a unique name (*qualifiedName*) and *additionalProperties* attributes. In addition, this type adds
GovernanceActionProcessStep is a *GovernanceActionType* and so has all of the attributes of that type of entity. In addition, this type adds:

* *ignoreMultipleTriggers* - indicates that a governance action should only be triggered once from this governance action process step, no matter how many times the appropriate guards are produced. This is important for long-running governance actions that may be triggered by multiple instances of previous steps but is held waiting for the mandatory guard.

Expand Down
2 changes: 1 addition & 1 deletion site/docs/types/4/0462-Governance-Action-Processes.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
15 changes: 12 additions & 3 deletions site/docs/types/4/0463-Engine-Actions.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,16 @@ The creation of an *EngineAction* entity typically triggers the execution of a [

## TargetForAction relationship

The *TargetForAction* relationship links the engine action to the [action targets](/concepts/action-target) for the governance service that will run. The governance service can update the status of its processing of the action targets in the properties of each TargetForAction relationship.
The *TargetForAction* relationship links the engine action to the [action targets](/concepts/action-target) for the governance service that will run.

## EngineActionRequestSource relationship
* *actionTargetName* is an identifier used by the resulting governance service to determine how to use the associated element.

The *EngineActionRequestSource* relationship links the first *EngineAction* entity in a process to the cause/originator of the action. This could be, for example, a [governance action process](/concepts/governance-action-process), another engine action or a [RequestForActionAnnotation](/types/6/0690-Request-for-Action) linked to a [discovery analysis report](/concepts/discovery-analysis-report).
The governance service can optionally update the status of its processing of the action targets in the properties of each *TargetForAction* relationship. This is useful if there are many targets that will take a while to process and the organization wants to be able to monitor its progress. The attributes used to record progress are as follows:

* *status* is of type *EngineActionStatus* and records whether this action target has been processed or not (or what happened when processing was attempted).
* *startDate* identifies when processing started on the target entity.
* *completionDate* identifies when processing stopped for this target entity.
* *completionMessage* records a description of what happened during the processing.

## EngineActionStatus enumeration

Expand All @@ -39,6 +44,10 @@ The *EngineActionStatus* indicates the execution status of the governance action
| CANCELLED | 14 | Cancelled | The engine action was cancelled by an external caller. |
| OTHER | 99 | Other | Undefined or unknown governance action status. |

## EngineActionRequestSource relationship

The *EngineActionRequestSource* relationship links the first *EngineAction* entity in a process to the cause/originator of the action. This could be, for example, a [governance action process](/concepts/governance-action-process), another engine action or a [RequestForActionAnnotation](/types/6/0690-Request-for-Action) linked to a [discovery analysis report](/concepts/discovery-analysis-report).

## NextEngineAction relationship

The *EngineAction* entity is also linked to any follow-on activities through the *NextEngineAction* relationship, so it is possible to trace through a chain of actions. The *guard* describes the [output guard](/concepts/guard) produced by the previous action(s) that will trigger (or triggered) the next action(s).
Expand Down
4 changes: 2 additions & 2 deletions site/docs/types/4/0485-Data-Processing-Purposes.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit fd4c715

Please sign in to comment.