Skip to content

Commit

Permalink
Improving resource wizard page. WIP.
Browse files Browse the repository at this point in the history
  • Loading branch information
dejavix committed Jan 12, 2024
1 parent c878f62 commit 86498a5
Showing 1 changed file with 60 additions and 6 deletions.
66 changes: 60 additions & 6 deletions docs/admin-gui/resource-wizard/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,8 @@ image::step-2-object-type-table.png[link=step-2-object-type-table.png,100%,title

Click btn:[Add object type] to create a new object type definition using Object type configuration wizard.

=== Basic attributes

Define the basic information about the object type:

* *Display name* will be displayed in midPoint as a reference to this object type configuration
Expand Down Expand Up @@ -161,18 +163,68 @@ image::step-2-object-type-midpoint-data.png[link=step-2-object-type-midpoint-dat

Click btn:[Save settings] to save the object type configuration.
Further configuration is required.
You can choose your next step to configure other parts of your object type configuration:

##TODO add links to content##

// TODO TODO finished here 12.1.2024 11:47
* *Basic Attributes* allows getting back to the <<Basic attributes,basic configuration of your object type>>
* Mappings
* Synchronization
* Correlation
* Capabilities
* Activation
* Credentials
* Associations

After we configure object type, we can see the button for previewing the data and titles for configuring of the containers for the selected object type.
image::choice-part-object-type.png[link=choice-part-object-type.png,100%,title=Parts of object type configuration]

.Parts of object type configuration
image::choice-part-object-type.png[Parts of object type configuration,100%]
Or you can click btn:[Preview data] to display resource data according to the configuration of this particular object type you are configuring (considering `Kind`, `Intent`, `Object class` etc.):

.Data preview of object type
image::data-preview-object-type.png[Data preview of object type,100%]
image::data-preview-object-type.png[link=data-preview-object-type.png,100%,title=Data preview of object type]

=== Mappings

This part of object type wizard allows you to define attribute xref:/midpoint/reference/expressions/mappings/[mappings].
This way you can define midPoint behavior for resource attributes: how the resource attributes values should be fetched to midPoint (xref:/midpoint/reference/expressions/mappings/inbound-mapping/[inbound mappings]) or how the resource attribute values should be populated in resource (xref:/midpoint/reference/expressions/mappings/outbound-mapping/[outbound mappings]).

Click either *Inbound mappings* or *Outbound mappings* header in the table of mappings.

.See also the following pages for more information:
* xref:/midpoint/reference/resources/resource-configuration/schema-handling/[Resource Schema Handling]
* xref:/midpoint/reference/expressions/mappings/[Mappings]
* xref:https://docs.evolveum.com/midpoint/reference/support-4.8/expressions/[MidPoint Expressions and Mappings]
* xref:/midpoint/reference/expressions/mappings/inbound-mapping/[Inbound mappings]
* xref:/midpoint/reference/expressions/mappings/outbound-mapping/[Outbound mappings]

==== Inbound mappings

Use inbound mappings to store resource attribute values in midPoint properties.

Click btn:[Add inbound] to add a new inbound mapping.

To define a mapping, you need to configure:

* *Name* of the mapping. This is technically not mandatory, but helps a lot during troubleshooting and when using resource template inheritance.
* *From resource attribute* allows you to type (with autocompletion) the resource attribute that should be used as a source of the mapping.
+
TIP: Even multiple source attributes can be defined for an inbound mapping.
* *Expression* specifies how the source attribute(s) should be used. Resource wizard support the following xref:/midpoint/reference/expressions/expressions/[expression types]:
** *As is* (default) simply copies the value from resource attribute to midPoint target property
** *Literal* allows to specify a constant value
** *Script* allows to write a more complex behavior using a xref:/midpoint/reference/expressions/expressions/[midPoint expression] (by default in Groovy language)
** *Generate* allows to generate a random string using a value policy (useful for generating passwords)
* *Target* allows you to type (with autocompletion) the midPoint property that should be used to store the value generated by the inbound mapping
* *Lifecycle state* allows you to define the lifecycle state of the mapping. This can be used during xref:/midpoint/reference/admin-gui/simulations/[Simulations], e.g. specifying lifecycle state as `Proposed` will be used only to simulate the mapping, `Draft` disables the mapping etc.

More complex configuration is possible by clicking *icon:fas-edit[] (Edit)* button.

Mapping can be deleted by clicking *icon:far-trash-alt[] (Delete)* button.

// TODO finished here

image::step-3-mappings-inbound.png[link=step-3-mappings-inbound.png, 100%, title=Table of inbound mappings]

=== Attribute mapping

{empty} +
Inbound mapping:
Expand Down Expand Up @@ -204,6 +256,8 @@ Attribute override:
| image::step-3-mappings-override-detail-limitations.png[link=step-3-mappings-override-detail-limitations.png, 100%, title=Detail configuration of attribute override limitations]
|===

TODO: interesting links

=== Synchronization

.Table of synchronization rules
Expand Down

0 comments on commit 86498a5

Please sign in to comment.