From 1953bc711861c3991e09d43282afbc210221468c Mon Sep 17 00:00:00 2001 From: openBackhaul Date: Thu, 18 Jan 2024 18:33:18 +0100 Subject: [PATCH 1/6] Remove security at /v1/inform-about-preceding-release (fixes #548) --- spec/RegistryOffice+config.json | 41 ++------ spec/RegistryOffice+forwardings.yaml | 15 --- spec/RegistryOffice.yaml | 95 ------------------- ...egardApprovalStatusCausesSequence.plantuml | 18 ---- 4 files changed, 8 insertions(+), 161 deletions(-) diff --git a/spec/RegistryOffice+config.json b/spec/RegistryOffice+config.json index 7f2c1bf..2593d93 100644 --- a/spec/RegistryOffice+config.json +++ b/spec/RegistryOffice+config.json @@ -743,7 +743,7 @@ }, "operation-server-interface-configuration": { "life-cycle-state": "operation-server-interface-1-0:LIFE_CYCLE_STATE_TYPE_EXPERIMENTAL", - "operation-key": "Operation key not yet provided." + "operation-key": "n.a." } } } @@ -1823,7 +1823,7 @@ "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { "operation-name": "/v1/inform-about-preceding-release", - "operation-key": "Operation key not yet provided." + "operation-key": "n.a." }, "operation-client-interface-status": { "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", @@ -2105,7 +2105,7 @@ "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { "operation-name": "/v1/inform-about-preceding-release", - "operation-key": "Operation key not yet provided." + "operation-key": "n.a." }, "operation-client-interface-status": { "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", @@ -2387,7 +2387,7 @@ "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { "operation-name": "/v1/inform-about-preceding-release", - "operation-key": "Operation key not yet provided." + "operation-key": "n.a." }, "operation-client-interface-status": { "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", @@ -2668,7 +2668,7 @@ "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { "operation-name": "/v1/inform-about-preceding-release", - "operation-key": "Operation key not yet provided." + "operation-key": "n.a." }, "operation-client-interface-status": { "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", @@ -2949,7 +2949,7 @@ "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { "operation-name": "/v1/inform-about-preceding-release", - "operation-key": "Operation key not yet provided." + "operation-key": "n.a." }, "operation-client-interface-status": { "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", @@ -3355,7 +3355,7 @@ "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { "operation-name": "/v1/inform-about-preceding-release", - "operation-key": "Operation key not yet provided." + "operation-key": "n.a." }, "operation-client-interface-status": { "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", @@ -3642,7 +3642,7 @@ "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { "operation-name": "/v1/inform-about-preceding-release", - "operation-key": "Operation key not yet provided." + "operation-key": "n.a." }, "operation-client-interface-status": { "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", @@ -5242,31 +5242,6 @@ } ] }, - { - "uuid": "ro-2-1-0-op-fc-is-041", - "name": [ - { - "value-name": "ForwardingKind", - "value": "core-model-1-4:FORWARDING_KIND_TYPE_INVARIANT_PROCESS_SNIPPET" - }, - { - "value-name": "ForwardingName", - "value": "ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkToGetOldRelease" - } - ], - "fc-port": [ - { - "local-id": "100", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", - "logical-termination-point": "ro-2-1-0-op-s-is-003" - }, - { - "local-id": "200", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-is-alt-2-0-1-000" - } - ] - }, { "uuid": "ro-2-1-0-op-fc-is-042", "name": [ diff --git a/spec/RegistryOffice+forwardings.yaml b/spec/RegistryOffice+forwardings.yaml index 0f8ef2b..8094c98 100644 --- a/spec/RegistryOffice+forwardings.yaml +++ b/spec/RegistryOffice+forwardings.yaml @@ -854,21 +854,6 @@ forwardings: uuid: ro-2-1-0-op-c-im-ol-2-0-1-003 - - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkToGetOldRelease - uuid: ro-2-1-0-op-fc-is-041 - forwarding-type: InvariantProcessSnippet - management-requests: - operation-client-update: - fc-port-update: - fc-port-deletion: - operation-client-deletion: - initiating-requests: - - server-name: /v1/regard-updated-approval-status - uuid: ro-2-1-0-op-s-is-003 - consequent-requests: - - client-name: ALT://v1/add-operation-client-to-link - uuid: ro-2-1-0-op-c-is-alt-2-0-1-000 - - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.RequestForOldRelease uuid: ro-2-1-0-op-fc-is-042 forwarding-type: InvariantProcessSnippet diff --git a/spec/RegistryOffice.yaml b/spec/RegistryOffice.yaml index 52ac84d..8e55d50 100644 --- a/spec/RegistryOffice.yaml +++ b/spec/RegistryOffice.yaml @@ -2691,100 +2691,7 @@ paths: default: $ref: '#/components/responses/responseForErroredServiceRequests' ApprovingApplicationCausesPreparingTheEmbedding: - CreateLinkToGetOldRelease: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] - post: - parameters: - - $ref: '#/components/parameters/user' - - $ref: '#/components/parameters/originator' - - $ref: '#/components/parameters/x-correlator' - - $ref: '#/components/parameters/trace-indicator' - - $ref: '#/components/parameters/customer-journey' - requestBody: - required: true - content: - application/json: - schema: - type: object - properties: - serving-application-name: - type: string - description: > - 'Name of application that holds the OperationServer of the link, which is to be complemented - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}' - serving-application-release-number: - type: string - description: > - 'Release of application that holds the OperationServer of the link, which is to be complemented - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$request.body#release-number}' - operation-name: - type: string - description: > - 'Name of the operation, which is made available via the link - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-008/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - consuming-application-name: - type: string - description: > - 'Name of application that holds the OperationClient, which shall be connected via the link - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name]' - consuming-application-release-number: - type: string - description: > - 'Release of application that holds the OperationClient, which shall be connected via the link - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/release-number]' - responses: - '200': - description: 'OperationClient connected with OperationServer' - content: - application/json: - schema: - type: object - properties: - client-successfully-added: - type: boolean - reason-of-failure: - type: string - headers: - x-correlator: - schema: - type: string - example: '550e8400-e29b-11d4-a716-446655440000' - description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request' - exec-time: - schema: - type: integer - example: 1100 - description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds' - backend-time: - schema: - type: integer - example: 850 - description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds' - life-cycle-state: - schema: - type: string - enum: - - 'EXPERIMENTAL' - - 'OPERATIONAL' - - 'DEPRECATED' - - 'OBSOLETE' - - 'UNKNOWN' - - 'NOT_YET_DEFINED' - example: 'EXPERIMENTAL' - description: 'Life cycle state of the consumed service' - '400': - $ref: '#/components/responses/responseForErroredServiceRequests' - '401': - $ref: '#/components/responses/responseForErroredServiceRequests' - '403': - $ref: '#/components/responses/responseForErroredServiceRequests' - '404': - $ref: '#/components/responses/responseForErroredServiceRequests' - '500': - $ref: '#/components/responses/responseForErroredServiceRequests' - default: - $ref: '#/components/responses/responseForErroredServiceRequests' RequestForOldRelease: #for [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}: [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-008/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] - description: 'This request is initiated by receiving /v1/update-operation-key of {$request.body#application-name}://v1/inform-about-preceding-release' post: parameters: - $ref: '#/components/parameters/user' @@ -9042,8 +8949,6 @@ paths: summary: 'Provides name and number of the preceding release' tags: - BasicServices - security: - - apiKeyAuth: [] responses: '200': description: 'Name and number of the preceding release provided' diff --git a/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml b/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml index 2cbe6a1..3295617 100644 --- a/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml +++ b/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml @@ -122,24 +122,6 @@ note over ro ELSE end note -note over ro -CreateLinkToGetOldRelease -Request for automatically creating the Link: -RO => NA://v1/inform-about-preceding-release -end note -ro -> altAddClientToLink : { servingApplicationName == requestBody.newApplicationName,\n servingApplicationReleaseNumber == requestBody.releaseNumber,\n operationName == /v1/inform-about-preceding-release,\n consumingApplicationName == RegistryOffice,\n consumingApplicationReleaseNumber == 2.1.0 } (apiKey) -ro <-- altAddClientToLink : {client-successfully-added, reason-of-failure} - -note left ro -IF (NOT 200) OR (client-successfully-added==false) -terminate process with response -end note -tarReceiver <- ro : {processId, successfully-embedded==false, reason-of-failure} - -note over ro -ELSE -end note - note over ro RequestForOldRelease end note From ce21f050a42a51dceeeaffb7434c9e56b83cdefb Mon Sep 17 00:00:00 2001 From: openBackhaul Date: Thu, 25 Jan 2024 14:41:19 +0100 Subject: [PATCH 2/6] Consolidate findings in v2.1.0_spec --- spec/RegistryOffice+config.json | 434 ++--- spec/RegistryOffice+forwardings.yaml | 197 +- spec/RegistryOffice+services.yaml | 8 +- spec/RegistryOffice.yaml | 1629 +++++++---------- ...egardApprovalStatusCausesSequence.plantuml | 12 +- 5 files changed, 1010 insertions(+), 1270 deletions(-) diff --git a/spec/RegistryOffice+config.json b/spec/RegistryOffice+config.json index 2593d93..0004e2e 100644 --- a/spec/RegistryOffice+config.json +++ b/spec/RegistryOffice+config.json @@ -1432,7 +1432,7 @@ ] }, { - "uuid": "ro-2-1-0-op-c-im-nr-2-1-0-000", + "uuid": "ro-2-1-0-op-c-im-nr-2-1-0-002", "ltp-direction": "core-model-1-4:TERMINATION_DIRECTION_SINK", "client-ltp": [ ], @@ -1457,32 +1457,7 @@ ] }, { - "uuid": "ro-2-1-0-op-c-im-nr-2-1-0-001", - "ltp-direction": "core-model-1-4:TERMINATION_DIRECTION_SINK", - "client-ltp": [ - ], - "server-ltp": [ - "ro-2-1-0-http-c-nr-2-1-0-000" - ], - "layer-protocol": [ - { - "local-id": "0", - "layer-protocol-name": "operation-client-interface-1-0:LAYER_PROTOCOL_NAME_TYPE_OPERATION_LAYER", - "operation-client-interface-1-0:operation-client-interface-pac": { - "operation-client-interface-configuration": { - "operation-name": "/v1/notify-deregistrations", - "operation-key": "Operation key not yet provided." - }, - "operation-client-interface-status": { - "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", - "life-cycle-state": "operation-client-interface-1-0:LIFE_CYCLE_STATE_TYPE_NOT_YET_DEFINED" - } - } - } - ] - }, - { - "uuid": "ro-2-1-0-op-c-im-nr-2-1-0-002", + "uuid": "ro-2-1-0-op-c-im-nr-2-1-0-005", "ltp-direction": "core-model-1-4:TERMINATION_DIRECTION_SINK", "client-ltp": [ ], @@ -1495,8 +1470,8 @@ "layer-protocol-name": "operation-client-interface-1-0:LAYER_PROTOCOL_NAME_TYPE_OPERATION_LAYER", "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { - "operation-name": "/v1/notify-approvals", - "operation-key": "Operation key not yet provided." + "operation-name": "/v2/register-application", + "operation-key": "n.a." }, "operation-client-interface-status": { "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", @@ -1507,7 +1482,7 @@ ] }, { - "uuid": "ro-2-1-0-op-c-im-nr-2-1-0-003", + "uuid": "ro-2-1-0-op-c-im-nr-2-1-0-006", "ltp-direction": "core-model-1-4:TERMINATION_DIRECTION_SINK", "client-ltp": [ ], @@ -1520,7 +1495,7 @@ "layer-protocol-name": "operation-client-interface-1-0:LAYER_PROTOCOL_NAME_TYPE_OPERATION_LAYER", "operation-client-interface-1-0:operation-client-interface-pac": { "operation-client-interface-configuration": { - "operation-name": "/v1/notify-withdrawn-approvals", + "operation-name": "/v1/notify-embedding-status-changes", "operation-key": "Operation key not yet provided." }, "operation-client-interface-status": { @@ -1531,40 +1506,13 @@ } ] }, - { - "uuid": "ro-2-1-0-op-c-im-nr-2-1-0-005", - "ltp-direction": "core-model-1-4:TERMINATION_DIRECTION_SINK", - "client-ltp": [ - ], - "server-ltp": [ - "ro-2-1-0-http-c-nr-2-1-0-000" - ], - "layer-protocol": [ - { - "local-id": "0", - "layer-protocol-name": "operation-client-interface-1-0:LAYER_PROTOCOL_NAME_TYPE_OPERATION_LAYER", - "operation-client-interface-1-0:operation-client-interface-pac": { - "operation-client-interface-configuration": { - "operation-name": "/v2/register-application", - "operation-key": "n.a." - }, - "operation-client-interface-status": { - "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", - "life-cycle-state": "operation-client-interface-1-0:LIFE_CYCLE_STATE_TYPE_NOT_YET_DEFINED" - } - } - } - ] - }, { "uuid": "ro-2-1-0-http-c-nr-2-1-0-000", "ltp-direction": "core-model-1-4:TERMINATION_DIRECTION_SINK", "client-ltp": [ - "ro-2-1-0-op-c-im-nr-2-1-0-000", - "ro-2-1-0-op-c-im-nr-2-1-0-001", "ro-2-1-0-op-c-im-nr-2-1-0-002", - "ro-2-1-0-op-c-im-nr-2-1-0-003", - "ro-2-1-0-op-c-im-nr-2-1-0-005" + "ro-2-1-0-op-c-im-nr-2-1-0-005", + "ro-2-1-0-op-c-im-nr-2-1-0-006" ], "server-ltp": [ "ro-2-1-0-tcp-c-nr-2-1-0-000" @@ -2090,6 +2038,31 @@ } ] }, + { + "uuid": "ro-2-1-0-op-c-im-tar-2-0-1-007", + "ltp-direction": "core-model-1-4:TERMINATION_DIRECTION_SINK", + "client-ltp": [ + ], + "server-ltp": [ + "ro-2-1-0-http-c-tar-2-0-1-000" + ], + "layer-protocol": [ + { + "local-id": "0", + "layer-protocol-name": "operation-client-interface-1-0:LAYER_PROTOCOL_NAME_TYPE_OPERATION_LAYER", + "operation-client-interface-1-0:operation-client-interface-pac": { + "operation-client-interface-configuration": { + "operation-name": "/v1/document-embedding-status", + "operation-key": "Operation key not yet provided." + }, + "operation-client-interface-status": { + "operational-state": "operation-client-interface-1-0:OPERATIONAL_STATE_TYPE_NOT_YET_DEFINED", + "life-cycle-state": "operation-client-interface-1-0:LIFE_CYCLE_STATE_TYPE_NOT_YET_DEFINED" + } + } + } + ] + }, { "uuid": "ro-2-1-0-op-c-im-tar-2-0-1-008", "ltp-direction": "core-model-1-4:TERMINATION_DIRECTION_SINK", @@ -2151,6 +2124,7 @@ "ro-2-1-0-op-c-im-tar-2-0-1-004", "ro-2-1-0-op-c-im-tar-2-0-1-005", "ro-2-1-0-op-c-im-tar-2-0-1-006", + "ro-2-1-0-op-c-im-tar-2-0-1-007", "ro-2-1-0-op-c-im-tar-2-0-1-008", "ro-2-1-0-op-c-im-tar-2-0-1-009" ], @@ -4048,12 +4022,12 @@ { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-nr-2-1-0-000" + "logical-termination-point": "ro-2-1-0-op-c-im-nr-2-1-0-002" } ] }, { - "uuid": "ro-2-1-0-op-fc-im-111", + "uuid": "ro-2-1-0-op-fc-im-112", "name": [ { "value-name": "ForwardingKind", @@ -4061,7 +4035,7 @@ }, { "value-name": "ForwardingName", - "value": "PromptForBequeathingDataCausesNewApplicationBeingRequestedToDocumentSubscriptionsForDeregistrationNotifications" + "value": "PromptForBequeathingDataCausesTransferOfListOfAlreadyRegisteredApplications" } ], "fc-port": [ @@ -4073,12 +4047,12 @@ { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-nr-2-1-0-001" + "logical-termination-point": "ro-2-1-0-op-c-im-nr-2-1-0-005" } ] }, { - "uuid": "ro-2-1-0-op-fc-im-114", + "uuid": "ro-2-1-0-op-fc-im-113", "name": [ { "value-name": "ForwardingKind", @@ -4086,7 +4060,7 @@ }, { "value-name": "ForwardingName", - "value": "PromptForBequeathingDataCausesTransferOfListOfAlreadyRegisteredApplications" + "value": "PromptForBequeathingDataCausesTransferOfListOfSubscriptionsForEmbeddingStatusChanges" } ], "fc-port": [ @@ -4098,7 +4072,7 @@ { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-nr-2-1-0-005" + "logical-termination-point": "ro-2-1-0-op-c-im-nr-2-1-0-006" } ] }, @@ -4633,7 +4607,7 @@ ] }, { - "uuid": "ro-2-1-0-op-fc-is-006", + "uuid": "ro-2-1-0-op-fc-is-010", "name": [ { "value-name": "ForwardingKind", @@ -4641,59 +4615,39 @@ }, { "value-name": "ForwardingName", - "value": "DeregistrationNotification" + "value": "EmbeddingStatusNotification" } ], "fc-port": [ { "local-id": "000", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-007" + "logical-termination-point": "ro-2-1-0-op-s-is-013" }, { "local-id": "001", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", "logical-termination-point": "ro-2-1-0-op-s-bm-004" }, + { + "local-id": "003", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", + "logical-termination-point": "ro-2-1-0-op-s-bm-013" + }, { "local-id": "100", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", - "logical-termination-point": "ro-2-1-0-op-s-is-002" + "logical-termination-point": "ro-2-1-0-op-s-is-003" }, { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-004" - }, - { - "local-id": "201", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-004" - }, - { - "local-id": "202", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-004" - }, - { - "local-id": "203", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-004" - }, - { - "local-id": "204", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-004" - }, - { - "local-id": "205", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-004" + "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-007" } ] }, { - "uuid": "ro-2-1-0-op-fc-is-021", + "uuid": "ro-2-1-0-op-fc-is-006", "name": [ { "value-name": "ForwardingKind", @@ -4701,29 +4655,19 @@ }, { "value-name": "ForwardingName", - "value": "DeRegistrationBroadcast" + "value": "DeregistrationNotification" } ], "fc-port": [ { "local-id": "000", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-001" + "logical-termination-point": "ro-2-1-0-op-s-is-007" }, { "local-id": "001", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-012" - }, - { - "local-id": "002", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-003" - }, - { - "local-id": "003", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-bm-013" + "logical-termination-point": "ro-2-1-0-op-s-bm-004" }, { "local-id": "100", @@ -4733,107 +4677,37 @@ { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-ro-2-0-1-006" - }, - { - "local-id": "201", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-006" - }, - { - "local-id": "202", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-006" - }, - { - "local-id": "203", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-006" - }, - { - "local-id": "204", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-006" - }, - { - "local-id": "205", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-006" - }, - { - "local-id": "206", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-006" - } - ] - }, - { - "uuid": "ro-2-1-0-op-fc-is-000", - "name": [ - { - "value-name": "ForwardingKind", - "value": "core-model-1-4:FORWARDING_KIND_TYPE_PROCESS_SNIPPET" - }, - { - "value-name": "ForwardingName", - "value": "TypeApprovalCausesRequestForEmbedding" - } - ], - "fc-port": [ - { - "local-id": "000", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-001" - }, - { - "local-id": "001", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-012" - }, - { - "local-id": "002", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-013" - }, - { - "local-id": "100", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", - "logical-termination-point": "ro-2-1-0-op-s-is-003" + "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-004" }, { "local-id": "201", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-000" + "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-004" }, { "local-id": "202", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-000" + "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-004" }, { "local-id": "203", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-000" + "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-004" }, { "local-id": "204", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-000" + "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-004" }, { "local-id": "205", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-000" - }, - { - "local-id": "206", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-000" + "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-004" } ] }, { - "uuid": "ro-2-1-0-op-fc-is-007", + "uuid": "ro-2-1-0-op-fc-is-008", "name": [ { "value-name": "ForwardingKind", @@ -4841,14 +4715,14 @@ }, { "value-name": "ForwardingName", - "value": "ApprovalNotification" + "value": "WithdrawnApprovalNotification" } ], "fc-port": [ { "local-id": "000", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-008" + "logical-termination-point": "ro-2-1-0-op-s-is-009" }, { "local-id": "001", @@ -4863,32 +4737,32 @@ { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-003" + "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-004" }, { "local-id": "201", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-003" + "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-004" }, { "local-id": "202", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-003" + "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-004" }, { "local-id": "203", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-003" + "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-004" }, { "local-id": "204", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-003" + "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-004" } ] }, { - "uuid": "ro-2-1-0-op-fc-is-008", + "uuid": "ro-2-1-0-op-fc-is-021", "name": [ { "value-name": "ForwardingKind", @@ -4896,49 +4770,69 @@ }, { "value-name": "ForwardingName", - "value": "WithdrawnApprovalNotification" + "value": "DeRegistrationBroadcast" } ], "fc-port": [ { "local-id": "000", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-009" + "logical-termination-point": "ro-2-1-0-op-s-is-001" }, { "local-id": "001", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-bm-004" + "logical-termination-point": "ro-2-1-0-op-s-is-012" + }, + { + "local-id": "002", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", + "logical-termination-point": "ro-2-1-0-op-s-is-003" + }, + { + "local-id": "003", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", + "logical-termination-point": "ro-2-1-0-op-s-bm-013" }, { "local-id": "100", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", - "logical-termination-point": "ro-2-1-0-op-s-is-003" + "logical-termination-point": "ro-2-1-0-op-s-is-002" }, { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-004" + "logical-termination-point": "ro-2-1-0-op-c-im-ro-2-0-1-006" }, { "local-id": "201", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-004" + "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-006" }, { "local-id": "202", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-004" + "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-006" }, { "local-id": "203", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-004" + "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-006" }, { "local-id": "204", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-004" + "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-006" + }, + { + "local-id": "205", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-006" + }, + { + "local-id": "206", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-006" } ] }, @@ -5242,6 +5136,36 @@ } ] }, + { + "uuid": "ro-2-1-0-op-fc-is-040", + "name": [ + { + "value-name": "ForwardingKind", + "value": "core-model-1-4:FORWARDING_KIND_TYPE_SUBSCRIPTION" + }, + { + "value-name": "ForwardingName", + "value": "ApprovalNotification" + } + ], + "fc-port": [ + { + "local-id": "000", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", + "logical-termination-point": "ro-2-1-0-op-s-is-008" + }, + { + "local-id": "001", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", + "logical-termination-point": "ro-2-1-0-op-s-bm-004" + }, + { + "local-id": "100", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-is-003" + } + ] + }, { "uuid": "ro-2-1-0-op-fc-is-042", "name": [ @@ -5288,7 +5212,37 @@ { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-*-*-*-*-008" + "logical-termination-point": "ro-2-1-0-op-c-im-ro-2-0-1-008" + }, + { + "local-id": "201", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-008" + }, + { + "local-id": "202", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-008" + }, + { + "local-id": "203", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-008" + }, + { + "local-id": "204", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-008" + }, + { + "local-id": "205", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-008" + }, + { + "local-id": "206", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-008" } ] }, @@ -5363,7 +5317,37 @@ { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-*-*-*-*-009" + "logical-termination-point": "ro-2-1-0-op-c-im-ro-2-0-1-009" + }, + { + "local-id": "201", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-009" + }, + { + "local-id": "202", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-009" + }, + { + "local-id": "203", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-009" + }, + { + "local-id": "204", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-009" + }, + { + "local-id": "205", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-009" + }, + { + "local-id": "206", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-009" } ] }, @@ -5447,7 +5431,7 @@ "name": [ { "value-name": "ForwardingKind", - "value": "core-model-1-4:FORWARDING_KIND_TYPE_INVARIANT_PROCESS_SNIPPET" + "value": "core-model-1-4:FORWARDING_KIND_TYPE_PROCESS_SNIPPET" }, { "value-name": "ForwardingName", @@ -5488,7 +5472,37 @@ { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", - "logical-termination-point": "ro-2-1-0-op-c-im-*-*-*-*-000" + "logical-termination-point": "ro-2-1-0-op-c-im-ro-2-0-1-000" + }, + { + "local-id": "201", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-tar-2-0-1-000" + }, + { + "local-id": "202", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-eatl-2-0-1-000" + }, + { + "local-id": "203", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-ol-2-0-1-000" + }, + { + "local-id": "204", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-aa-2-0-1-000" + }, + { + "local-id": "205", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-alt-2-0-1-000" + }, + { + "local-id": "206", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-im-okm-2-0-1-000" } ] }, @@ -5582,7 +5596,7 @@ "fc-port": [ { "local-id": "000", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", "logical-termination-point": "ro-2-1-0-op-s-is-003" }, { diff --git a/spec/RegistryOffice+forwardings.yaml b/spec/RegistryOffice+forwardings.yaml index 8094c98..6618f38 100644 --- a/spec/RegistryOffice+forwardings.yaml +++ b/spec/RegistryOffice+forwardings.yaml @@ -166,10 +166,10 @@ forwardings: uuid: ro-2-1-0-op-s-im-000 consequent-requests: - client-name: NewRelease://v1/inquire-application-type-approvals - uuid: ro-2-1-0-op-c-im-nr-2-1-0-000 + uuid: ro-2-1-0-op-c-im-nr-2-1-0-002 - - forwarding-name: PromptForBequeathingDataCausesNewApplicationBeingRequestedToDocumentSubscriptionsForDeregistrationNotifications - uuid: ro-2-1-0-op-fc-im-111 + - forwarding-name: PromptForBequeathingDataCausesTransferOfListOfAlreadyRegisteredApplications + uuid: ro-2-1-0-op-fc-im-112 forwarding-type: InvariantProcessSnippet management-requests: operation-client-update: @@ -180,11 +180,11 @@ forwardings: - server-name: /v1/bequeath-your-data-and-die uuid: ro-2-1-0-op-s-im-000 consequent-requests: - - client-name: NewRelease://v1/notify-deregistrations - uuid: ro-2-1-0-op-c-im-nr-2-1-0-001 + - client-name: NewRelease://v2/register-application + uuid: ro-2-1-0-op-c-im-nr-2-1-0-005 - - forwarding-name: PromptForBequeathingDataCausesTransferOfListOfAlreadyRegisteredApplications - uuid: ro-2-1-0-op-fc-im-114 + - forwarding-name: PromptForBequeathingDataCausesTransferOfListOfSubscriptionsForEmbeddingStatusChanges + uuid: ro-2-1-0-op-fc-im-113 forwarding-type: InvariantProcessSnippet management-requests: operation-client-update: @@ -195,8 +195,8 @@ forwardings: - server-name: /v1/bequeath-your-data-and-die uuid: ro-2-1-0-op-s-im-000 consequent-requests: - - client-name: NewRelease://v2/register-application - uuid: ro-2-1-0-op-c-im-nr-2-1-0-005 + - client-name: NewRelease://v1/notify-embedding-status-changes + uuid: ro-2-1-0-op-c-im-nr-2-1-0-006 - forwarding-name: PromptForBequeathingDataCausesTARbeingRequestedToRedirectInfoAboutApprovalsToNewApplication uuid: ro-2-1-0-op-fc-im-115 @@ -513,6 +513,29 @@ forwardings: - client-name: TypeApprovalRegister://v1/regard-application uuid: ro-2-1-0-op-c-im-tar-2-0-1-003 + - forwarding-name: EmbeddingStatusNotification + uuid: ro-2-1-0-op-fc-is-010 + forwarding-type: Subscription + management-requests: + operation-client-update: + - server-name: /v1/notify-embedding-status-changes + uuid: ro-2-1-0-op-s-is-013 + fc-port-update: + - server-name: /v1/notify-embedding-status-changes + uuid: ro-2-1-0-op-s-is-013 + fc-port-deletion: + - server-name: /v1/end-subscription + uuid: ro-2-1-0-op-s-bm-004 + operation-client-deletion: + - server-name: /v1/dispose-remainders-of-deregistered-application + uuid: ro-2-1-0-op-s-bm-013 + initiating-requests: + - server-name: /v1/regard-updated-approval-status + uuid: ro-2-1-0-op-s-is-003 + consequent-requests: + - client-name: TypeApprovalRegister://v1/document-embedding-status + uuid: ro-2-1-0-op-c-im-tar-2-0-1-007 + - forwarding-name: DeregistrationNotification # Deprecated, to be deleted with RO v3.0.0 uuid: ro-2-1-0-op-fc-is-006 @@ -528,6 +551,8 @@ forwardings: - server-name: /v1/end-subscription uuid: ro-2-1-0-op-s-bm-004 operation-client-deletion: + - server-name: /v1/dispose-remainders-of-deregistered-application + uuid: ro-2-1-0-op-s-bm-013 initiating-requests: - server-name: /v1/deregister-application uuid: ro-2-1-0-op-s-is-002 @@ -545,77 +570,6 @@ forwardings: - client-name: OperationKeyManagement://v1/disregard-application uuid: ro-2-1-0-op-c-im-okm-2-0-1-004 - - forwarding-name: TypeApprovalCausesRequestForEmbedding - uuid: ro-2-1-0-op-fc-is-000 - forwarding-type: ProcessSnippet - management-requests: - operation-client-update: - - server-name: /v1/register-application - uuid: ro-2-1-0-op-s-is-001 - - server-name: /v2/register-application - uuid: ro-2-1-0-op-s-is-012 - fc-port-update: - - server-name: /v1/register-application - uuid: ro-2-1-0-op-s-is-001 - - server-name: /v2/register-application - uuid: ro-2-1-0-op-s-is-012 - fc-port-deletion: - - server-name: /v1/dispose-remainders-of-deregistered-application - uuid: ro-2-1-0-op-s-bm-013 - operation-client-deletion: - - server-name: /v1/dispose-remainders-of-deregistered-application - uuid: ro-2-1-0-op-s-bm-013 - initiating-requests: - - server-name: /v1/regard-updated-approval-status - uuid: ro-2-1-0-op-s-is-003 - consequent-requests: - - client-name: NewRelease://v1/embed-yourself - uuid: ro-2-1-0-op-c-bm-nr-2-1-0-000 - - client-name: TypeApprovalRegister://v1/embed-yourself - uuid: ro-2-1-0-op-c-im-tar-2-0-1-000 - - client-name: ExecutionAndTraceLog://v1/embed-yourself - uuid: ro-2-1-0-op-c-im-eatl-2-0-1-000 - - client-name: OamLog://v1/embed-yourself - uuid: ro-2-1-0-op-c-im-ol-2-0-1-000 - - client-name: AdministratorAdministration://v1/embed-yourself - uuid: ro-2-1-0-op-c-im-aa-2-0-1-000 - - client-name: ApplicationLayerTopology://v1/embed-yourself - uuid: ro-2-1-0-op-c-im-alt-2-0-1-000 - - client-name: OperationKeyManagement://v1/embed-yourself - uuid: ro-2-1-0-op-c-im-okm-2-0-1-000 - - client-name: CurrentController://v1/embed-yourself - uuid: ro-2-1-0-op-c-im-cc-1-0-0-000 - - - forwarding-name: ApprovalNotification - # Deprecated, to be deleted with RO v3.0.0 - uuid: ro-2-1-0-op-fc-is-007 - forwarding-type: Subscription - management-requests: - operation-client-update: - - server-name: /v1/notify-approvals - uuid: ro-2-1-0-op-s-is-008 - fc-port-update: - - server-name: /v1/notify-approvals - uuid: ro-2-1-0-op-s-is-008 - fc-port-deletion: - - server-name: /v1/end-subscription - uuid: ro-2-1-0-op-s-bm-004 - operation-client-deletion: - initiating-requests: - - server-name: /v1/regard-updated-approval-status - uuid: ro-2-1-0-op-s-is-003 - consequent-requests: - - client-name: ExecutionAndTraceLog://v1/regard-application - uuid: ro-2-1-0-op-c-im-eatl-2-0-1-003 - - client-name: OamLog://v1/regard-application - uuid: ro-2-1-0-op-c-im-ol-2-0-1-003 - - client-name: AdministratorAdministration://v1/regard-application - uuid: ro-2-1-0-op-c-im-aa-2-0-1-003 - - client-name: ApplicationLayerTopology://v1/regard-application - uuid: ro-2-1-0-op-c-im-alt-2-0-1-003 - - client-name: OperationKeyManagement://v1/regard-application - uuid: ro-2-1-0-op-c-im-okm-2-0-1-003 - - forwarding-name: WithdrawnApprovalNotification # Deprecated, to be deleted with RO v3.0.0 uuid: ro-2-1-0-op-fc-is-008 @@ -631,6 +585,8 @@ forwardings: - server-name: /v1/end-subscription uuid: ro-2-1-0-op-s-bm-004 operation-client-deletion: + - server-name: /v1/dispose-remainders-of-deregistered-application + uuid: ro-2-1-0-op-s-bm-013 initiating-requests: - server-name: /v1/regard-updated-approval-status uuid: ro-2-1-0-op-s-is-003 @@ -651,8 +607,6 @@ forwardings: forwarding-type: Subscription management-requests: operation-client-update: - - server-name: /v1/register-application - uuid: ro-2-1-0-op-s-is-001 - server-name: /v2/register-application uuid: ro-2-1-0-op-s-is-012 fc-port-update: @@ -719,8 +673,6 @@ forwardings: uuid: ro-2-1-0-op-c-im-alt-2-0-1-001 - client-name: OperationKeyManagement://v1/update-client uuid: ro-2-1-0-op-c-im-okm-2-0-1-001 - - client-name: CurrentController://v1/update-client - uuid: ro-2-1-0-op-c-im-cc-1-0-0-001 - forwarding-name: OperationUpdateBroadcast uuid: ro-2-1-0-op-fc-is-023 @@ -758,8 +710,6 @@ forwardings: uuid: ro-2-1-0-op-c-im-alt-2-0-1-002 - client-name: OperationKeyManagement://v1/update-operation-client uuid: ro-2-1-0-op-c-im-okm-2-0-1-002 - - client-name: CurrentController://v1/update-operation-client - uuid: ro-2-1-0-op-c-im-cc-1-0-0-002 - forwarding-name: BarringApplicationCausesDeregisteringOfApplication @@ -853,14 +803,33 @@ forwardings: - client-name: OL://v1/regard-application uuid: ro-2-1-0-op-c-im-ol-2-0-1-003 + - forwarding-name: ApprovalNotification + uuid: ro-2-1-0-op-fc-is-040 + forwarding-type: Subscription + management-requests: + operation-client-update: + - server-name: /v1/notify-approvals + uuid: ro-2-1-0-op-s-is-008 + fc-port-update: + - server-name: /v1/notify-approvals + uuid: ro-2-1-0-op-s-is-008 + fc-port-deletion: + - server-name: /v1/end-subscription + uuid: ro-2-1-0-op-s-bm-004 + operation-client-deletion: + - server-name: /v1/dispose-remainders-of-deregistered-application + uuid: ro-2-1-0-op-s-bm-013 + initiating-requests: + - server-name: /v1/regard-updated-approval-status + uuid: ro-2-1-0-op-s-is-003 + consequent-requests: + - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.RequestForOldRelease uuid: ro-2-1-0-op-fc-is-042 forwarding-type: InvariantProcessSnippet management-requests: operation-client-update: - - server-name: /v1/register-application - uuid: ro-2-1-0-op-s-is-001 - server-name: /v2/register-application uuid: ro-2-1-0-op-s-is-012 fc-port-update: @@ -878,8 +847,20 @@ forwardings: - server-name: /v1/update-operation-key uuid: ro-2-1-0-op-s-bm-010 consequent-requests: - - client-name: requestBody#applicationName://v1/inform-about-preceding-release - uuid: ro-2-1-0-op-c-im-*-*-*-*-008 + - client-name: RegistryOffice://v1/inform-about-preceding-release + uuid: ro-2-1-0-op-c-im-ro-2-0-1-008 + - client-name: TypeApprovalRegister://v1/inform-about-preceding-release + uuid: ro-2-1-0-op-c-im-tar-2-0-1-008 + - client-name: ExecutionAndTraceLog://v1/inform-about-preceding-release + uuid: ro-2-1-0-op-c-im-eatl-2-0-1-008 + - client-name: OamLog://v1/inform-about-preceding-release + uuid: ro-2-1-0-op-c-im-ol-2-0-1-008 + - client-name: AdministratorAdministration://v1/inform-about-preceding-release + uuid: ro-2-1-0-op-c-im-aa-2-0-1-008 + - client-name: ApplicationLayerTopology://v1/inform-about-preceding-release + uuid: ro-2-1-0-op-c-im-alt-2-0-1-008 + - client-name: OperationKeyManagement://v1/inform-about-preceding-release + uuid: ro-2-1-0-op-c-im-okm-2-0-1-008 - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkToUpdateNewReleaseClient uuid: ro-2-1-0-op-fc-is-043 @@ -901,8 +882,6 @@ forwardings: forwarding-type: InvariantProcessSnippet management-requests: operation-client-update: - - server-name: /v1/register-application - uuid: ro-2-1-0-op-s-is-001 - server-name: /v2/register-application uuid: ro-2-1-0-op-s-is-012 fc-port-update: @@ -920,8 +899,20 @@ forwardings: - server-name: /v1/update-operation-key uuid: ro-2-1-0-op-s-bm-010 consequent-requests: - - client-name: ApprovingApplicationCausesPreparingTheEmbedding.RequestForOldRelease.responseBody#applicationName://v1/update-client-of-subsequent-release - uuid: ro-2-1-0-op-c-im-*-*-*-*-009 + - client-name: RegistryOffice://v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-c-im-ro-2-0-1-009 + - client-name: TypeApprovalRegister://v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-c-im-tar-2-0-1-009 + - client-name: ExecutionAndTraceLog://v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-c-im-eatl-2-0-1-009 + - client-name: OamLog://v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-c-im-ol-2-0-1-009 + - client-name: AdministratorAdministration://v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-c-im-aa-2-0-1-009 + - client-name: ApplicationLayerTopology://v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-c-im-alt-2-0-1-009 + - client-name: OperationKeyManagement://v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-c-im-okm-2-0-1-009 - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForPromptingEmbedding uuid: ro-2-1-0-op-fc-is-046 @@ -970,7 +961,7 @@ forwardings: - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.RequestForEmbedding uuid: ro-2-1-0-op-fc-is-049 - forwarding-type: InvariantProcessSnippet + forwarding-type: ProcessSnippet management-requests: operation-client-update: - server-name: /v1/register-application @@ -992,8 +983,20 @@ forwardings: - server-name: /v1/update-operation-key uuid: ro-2-1-0-op-s-bm-010 consequent-requests: - - client-name: requestBody#applicationName://v1/embed-yourself - uuid: ro-2-1-0-op-c-im-*-*-*-*-000 + - client-name: RegistryOffice://v1/embed-yourself + uuid: ro-2-1-0-op-c-im-ro-2-0-1-000 + - client-name: TypeApprovalRegister://v1/embed-yourself + uuid: ro-2-1-0-op-c-im-tar-2-0-1-000 + - client-name: ExecutionAndTraceLog://v1/embed-yourself + uuid: ro-2-1-0-op-c-im-eatl-2-0-1-000 + - client-name: OamLog://v1/embed-yourself + uuid: ro-2-1-0-op-c-im-ol-2-0-1-000 + - client-name: AdministratorAdministration://v1/embed-yourself + uuid: ro-2-1-0-op-c-im-aa-2-0-1-000 + - client-name: ApplicationLayerTopology://v1/embed-yourself + uuid: ro-2-1-0-op-c-im-alt-2-0-1-000 + - client-name: OperationKeyManagement://v1/embed-yourself + uuid: ro-2-1-0-op-c-im-okm-2-0-1-000 - forwarding-name: ApprovingApplicationCausesConnectingToBroadcast.CreateLinkForUpdatingClient diff --git a/spec/RegistryOffice+services.yaml b/spec/RegistryOffice+services.yaml index edd56b4..1779dee 100644 --- a/spec/RegistryOffice+services.yaml +++ b/spec/RegistryOffice+services.yaml @@ -124,15 +124,11 @@ clients: basic: individual: - operation-name: /v1/inquire-application-type-approvals - uuid: ro-2-1-0-op-c-im-nr-2-1-0-000 - - operation-name: /v1/notify-deregistrations - uuid: ro-2-1-0-op-c-im-nr-2-1-0-001 - - operation-name: /v1/notify-approvals uuid: ro-2-1-0-op-c-im-nr-2-1-0-002 - - operation-name: /v1/notify-withdrawn-approvals - uuid: ro-2-1-0-op-c-im-nr-2-1-0-003 - operation-name: /v2/register-application uuid: ro-2-1-0-op-c-im-nr-2-1-0-005 + - operation-name: /v1/notify-embedding-status-changes + uuid: ro-2-1-0-op-c-im-nr-2-1-0-006 service: basic: individual: diff --git a/spec/RegistryOffice.yaml b/spec/RegistryOffice.yaml index 8e55d50..1edce3d 100644 --- a/spec/RegistryOffice.yaml +++ b/spec/RegistryOffice.yaml @@ -1,7 +1,7 @@ openapi: 3.0.0 info: title: RegistryOffice - version: 2.1.0 + version: 2.1.1 x-gui-paths: ######################################################################################################################## @@ -165,7 +165,7 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' callbacks: PromptForBequeathingDataCausesNewApplicationBeingRequestedToInquireForApplicationTypeApprovals: - url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-nr-2-1-0-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-nr-2-1-0-002/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -280,8 +280,8 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - PromptForBequeathingDataCausesNewApplicationBeingRequestedToDocumentSubscriptionsForDeregistrationNotifications: - url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-nr-2-1-0-001/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + PromptForBequeathingDataCausesTransferOfListOfAlreadyRegisteredApplications: + url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-nr-2-1-0-005/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -296,66 +296,98 @@ paths: schema: type: object required: - - subscriber-application - - subscriber-release-number - - subscriber-operation - - subscriber-protocol - - subscriber-address - - subscriber-port + - application-name + - release-number + - embedding-operation + - client-update-operation + - operation-client-update-operation + - dispose-remainders-operation + - preceding-release-operation + - subsequent-release-operation + - tcp-server properties: - subscriber-application: + application-name: type: string description: > - 'Name of application that wants to receive notifications about obsolete registrations + 'Name of application that wants to register from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]' - subscriber-release-number: + release-number: type: string description: > - 'Release of application that wants to receive notifications about obsolete registrations + 'Release of application that wants to register from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]' - subscriber-operation: + preceding-application-name: type: string description: > - 'Names of the operation that shall be addressed by notifications about obsolete registrations - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-004/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - subscriber-protocol: + 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding application after receiving /v1/embed-yourself + from LOADfile' + preceding-release-number: type: string description: > - 'Protocol to be used for addressing the application that wants to receive notifications about obsolete registrations - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' - subscriber-address: + 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding release after receiving /v1/embed-yourself + from LOADfile' + embedding-operation: + type: string + description: > + 'Name of service for initiating embedding process + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + client-update-operation: + type: string + description: > + 'Name of service for broadcasting server changes + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-001/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + operation-client-update-operation: + type: string + description: > + 'Name of service for broadcasting replacements of operations by backward compatible substitutes + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-002/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + dispose-remainders-operation: + type: string + description: > + 'Name of service for broadcasting de-registrations of applications + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-006/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + preceding-release-operation: + type: string + description: > + 'Name of service for retrieving information about the preceding release of a new application + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-008/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + subsequent-release-operation: + type: string + description: > + 'Name of service for configuring the newRelease at the existing application + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-009/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + tcp-server: type: object properties: - ip-address: + protocol: + type: string + description: > + 'Protocol to be used for addressing the application that wants to register + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' + address: type: object properties: - ipv-4-address: + ip-address: + type: object + properties: + ipv-4-address: + type: string + description: > + 'IPv4 address of application that wants to register + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' + domain-name: type: string description: > - 'IPv4 address of application that wants to receive notifications about obsolete registrations - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' - domain-name: - type: string + 'Domain name of application that wants to register + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' + port: + type: integer description: > - 'Domain name of application that wants to receive notifications about obsolete registrations - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' - subscriber-port: - type: integer - description: > - 'TCP port of application that wants to receive notifications about obsolete registrations - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' - example: - subscriber-application: 'TypeApprovalRegister' - subscriber-release-number: '2.0.1' - subscriber-operation: '/v1/disregard-application' - subscriber-protocol: 'HTTP' - subscriber-address: - ip-address: - ipv-4-address: '127.0.0.1' - subscriber-port: 3009 + 'TCP port of application that wants to register + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' responses: '204': - description: 'Subscribed for notifications about deregistrations' + description: 'Application registered' headers: x-correlator: schema: @@ -396,8 +428,8 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - PromptForBequeathingDataCausesTransferOfListOfAlreadyRegisteredApplications: - url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-nr-2-1-0-005/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + PromptForBequeathingDataCausesTransferOfListOfSubscriptionsForEmbeddingStatusChanges: + url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-2-1-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-nr-2-1-0-006/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -411,79 +443,63 @@ paths: application/json: schema: type: object + required: + - subscriber-application + - subscriber-release-number + - subscriber-operation + - subscriber-protocol + - subscriber-address + - subscriber-port properties: - application-name: + subscriber-application: type: string description: > - 'Name of application that wants to register + 'Name of application that wants to receive notifications about changes of the embedding status from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]' - release-number: + subscriber-release-number: type: string description: > - 'Release of application that wants to register + 'Release of application that wants to receive notifications about changes of the embedding status from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]' - preceding-application-name: - type: string - description: > - 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding application after receiving /v1/embed-yourself - from LOADfile' - preceding-release-number: - type: string - description: > - 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding release after receiving /v1/embed-yourself - from LOADfile' - embedding-operation: - type: string - description: > - 'Name of service for initiating embedding process - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - dispose-remainders-operation: - type: string - description: > - 'Name of service for broadcasting de-registrations of applications - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-006/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - client-update-operation: + subscriber-operation: type: string description: > - 'Name of service for broadcasting server changes - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-001/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - operation-client-update-operation: + 'Names of the operation that shall be addressed by notifications about changes of the embedding status + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-007/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + subscriber-protocol: type: string description: > - 'Name of service for broadcasting replacements of operations by backward compatible substitutes - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-002/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - tcp-server: + 'Protocol to be used for addressing the application that wants to receive notifications about changes of the embedding status + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' + subscriber-address: type: object + minProperties: 1 + maxProperties: 1 + additionalProperties: false properties: - protocol: - type: string - description: > - 'Protocol to be used for addressing the application that wants to register - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' - address: + ip-address: type: object + minProperties: 1 + additionalProperties: false properties: - ip-address: - type: object - properties: - ipv-4-address: - type: string - description: > - 'IPv4 address of application that wants to register - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' - domain-name: + ipv-4-address: type: string description: > - 'Domain name of application that wants to register - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' - port: - type: integer + 'IPv4 address of application that wants to receive notifications about changes of the embedding status + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' + domain-name: + type: string description: > - 'TCP port of application that wants to register - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' + 'Domain name of application that wants to receive notifications about changes of the embedding status + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' + subscriber-port: + type: integer + description: > + 'TCP port of application that wants to receive notifications about changes of the embedding status + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' responses: '204': - description: 'Application registered' + description: 'Subscribed for notifications about changes of the embedding status' headers: x-correlator: schema: @@ -938,264 +954,124 @@ paths: content: application/json: schema: - oneOf: - - description: 'old-multiple-TcpServers-format, to be deleted with RO v3.0.0' - type: object - required: - - application-name - - release-number - - embedding-operation - - client-update-operation - - operation-client-update-operation - - tcp-server-list - properties: - application-name: - type: string - pattern: '^([A-Z][a-z0-9]+){2,}$' - description: > - 'Name of application that wants to register - find or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]' - release-number: - type: string - pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' - description: > - 'Release of application that wants to register - find or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]' - preceding-application-name: - type: string - minLength: 3 - description: > - 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding application after receiving /v1/embed-yourself - update or create in LOADfile' - preceding-release-number: - type: string - pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' - description: > - 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding release after receiving /v1/embed-yourself - update or create in LOADfile' - embedding-operation: - type: string - minLength: 6 - description: > - 'Name of service for initiating embedding process - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - client-update-operation: - type: string - minLength: 6 - description: > - 'Name of service for broadcasting server changes - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-001/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - operation-client-update-operation: - type: string - minLength: 6 - description: > - 'Name of service for broadcasting replacements of operations by backward compatible substitutes - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-002/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - tcp-server-list: - type: array - minItems: 1 - items: - type: object - required: - - protocol - - address - - port - properties: - protocol: - type: string - enum: - - 'HTTP' - - 'HTTPS' - description: > - 'Protocol to be used for addressing the application that wants to register - find or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' - address: - type: object - minProperties: 1 - maxProperties: 1 - additionalProperties: false - properties: - ip-address: - type: object - minProperties: 1 - additionalProperties: false - properties: - ipv-4-address: - type: string - pattern: '^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$' - description: > - 'IPv4 address of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' - domain-name: + type: object + required: + - application-name + - release-number + - embedding-operation + - client-update-operation + - operation-client-update-operation + - tcp-server-list + properties: + application-name: + type: string + pattern: '^([A-Z][a-z0-9]+){2,}$' + description: > + 'Name of application that wants to register + find, but not at OldRelease or NewRelease, or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]' + release-number: + type: string + pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' + description: > + 'Release of application that wants to register + find, but not at OldRelease or NewRelease, or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]' + preceding-application-name: + type: string + minLength: 3 + description: > + 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding application after receiving /v1/embed-yourself + update or create in LOADfile' + preceding-release-number: + type: string + pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' + description: > + 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding release after receiving /v1/embed-yourself + update or create in LOADfile' + embedding-operation: + type: string + minLength: 6 + description: > + 'Name of service for initiating embedding process + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + client-update-operation: + type: string + minLength: 6 + description: > + 'Name of service for broadcasting server changes + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-001/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + operation-client-update-operation: + type: string + minLength: 6 + description: > + 'Name of service for broadcasting replacements of operations by backward compatible substitutes + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-002/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + tcp-server-list: + type: array + minItems: 1 + items: + type: object + required: + - protocol + - address + - port + properties: + protocol: + type: string + enum: + - 'HTTP' + - 'HTTPS' + description: > + 'Protocol to be used for addressing the application that wants to register + find or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' + address: + type: object + minProperties: 1 + maxProperties: 1 + additionalProperties: false + properties: + ip-address: + type: object + minProperties: 1 + additionalProperties: false + properties: + ipv-4-address: type: string - pattern: '^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$' + pattern: '^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$' description: > - 'Domain name of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' - port: - type: integer - minimum: 0 - maximum: 65535 + 'IPv4 address of application that wants to register + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' + domain-name: + type: string + pattern: '^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$' description: > - 'TCP port of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' - - description: 'new-single-TcpServer-format' - type: object - required: - - application-name - - release-number - - embedding-operation - - client-update-operation - - operation-client-update-operation - - dispose-remainders-operation - - preceding-release-operation - - subsequent-release-operation - - tcp-server - properties: - application-name: - type: string - pattern: '^([A-Z][a-z0-9]+){2,}$' - description: > - 'Name of application that wants to register - find or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]' - release-number: - type: string - pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' - description: > - 'Release of application that wants to register - find or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]' - preceding-application-name: - type: string - minLength: 3 - description: > - 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding application after receiving /v1/embed-yourself - update or create in LOADfile' - preceding-release-number: - type: string - pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' - description: > - 'If provided, the new application will address /v1/bequeath-your-data-and-die at the preceding release after receiving /v1/embed-yourself - update or create in LOADfile' - embedding-operation: - type: string - minLength: 6 - description: > - 'Name of service for initiating embedding process - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - client-update-operation: - type: string - minLength: 6 - description: > - 'Name of service for broadcasting server changes - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-001/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - operation-client-update-operation: - type: string - minLength: 6 - description: > - 'Name of service for broadcasting replacements of operations by backward compatible substitutes - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-002/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - dispose-remainders-operation: - type: string - minLength: 6 - description: > - 'Name of service for broadcasting de-registered applications that are to be removed from the application layer - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-006/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - preceding-release-operation: - type: string - minLength: 6 - description: > - 'Name of service for retrieving information about the preceding release of a new application - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-008/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - subsequent-release-operation: - type: string - minLength: 6 - description: > - 'Name of service for configuring the newRelease at the existing application - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-009/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - tcp-server: - type: object - required: - - protocol - - address - - port - properties: - protocol: - type: string - enum: - - 'HTTP' - - 'HTTPS' - description: > - 'Protocol to be used for addressing the application that wants to register - find or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' - address: - type: object - minProperties: 1 - maxProperties: 1 - additionalProperties: false - properties: - ip-address: - type: object - minProperties: 1 - additionalProperties: false - properties: - ipv-4-address: - type: string - pattern: '^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$' - description: > - 'IPv4 address of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' - domain-name: - type: string - pattern: '^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$' - description: > - 'Domain name of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' - port: - type: integer - minimum: 0 - maximum: 65535 - description: > - 'TCP port of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' - examples: - old-multiple-TcpServers-format: - value: - application-name: 'TypeApprovalRegister' - release-number: '2.0.1' - preceding-application-name: 'TypeApprovalRegister' - preceding-release-number: '1.0.0' - embedding-operation: '/v1/embed-yourself' - client-update-operation: '/v1/update-client' - operation-client-update-operation: '/v1/update-operation-client' - tcp-server-list: - - protocol: 'HTTP' - address: - ip-address: - ipv-4-address: '127.0.0.1' - port: 3009 - - protocol: 'HTTPS' - address: - ip-address: - ipv-4-address: '1.2.3.9' - port: 3209 - new-single-TcpServer-format: - value: - application-name: 'TypeApprovalRegister' - release-number: '2.0.1' - preceding-application-name: 'TypeApprovalRegister' - preceding-release-number: '1.0.0' - embedding-operation: '/v1/embed-yourself' - client-update-operation: '/v1/update-client' - operation-client-update-operation: '/v1/update-operation-client' - dispose-remainders-operation: '/v1/dispose-remainders-of-deregistered-application' - preceding-release-operation: '/v1/inform-about-preceding-release' - subsequent-release-operation: '/v1/update-client-of-subsequent-release' - tcp-server: - protocol: 'HTTP' + 'Domain name of application that wants to register + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' + port: + type: integer + minimum: 0 + maximum: 65535 + description: > + 'TCP port of application that wants to register + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' + example: + application-name: 'TypeApprovalRegister' + release-number: '2.0.1' + preceding-application-name: 'TypeApprovalRegister' + preceding-release-number: '1.0.0' + embedding-operation: '/v1/embed-yourself' + client-update-operation: '/v1/update-client' + operation-client-update-operation: '/v1/update-operation-client' + tcp-server-list: + - protocol: 'HTTP' address: ip-address: ipv-4-address: '127.0.0.1' port: 3009 + - protocol: 'HTTPS' + address: + ip-address: + ipv-4-address: '1.2.3.9' + port: 3209 responses: '204': description: 'Application registered' @@ -1232,182 +1108,13 @@ paths: '400': $ref: '#/components/responses/responseForErroredServiceRequests' '403': - $ref: '#/components/responses/responseForErroredServiceRequests' - '404': - $ref: '#/components/responses/responseForErroredServiceRequests' - '500': - $ref: '#/components/responses/responseForErroredServiceRequests' - default: - $ref: '#/components/responses/responseForErroredServiceRequests' - callbacks: - TypeApprovalCausesRequestForEmbedding: - url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] - post: - parameters: - - $ref: '#/components/parameters/user' - - $ref: '#/components/parameters/originator' - - $ref: '#/components/parameters/x-correlator' - - $ref: '#/components/parameters/trace-indicator' - - $ref: '#/components/parameters/customer-journey' - requestBody: - required: true - content: - application/json: - schema: - type: object - required: - - registry-office-application - - registry-office-application-release-number - - relay-server-replacement-operation - - relay-operation-update-operation - - deregistration-operation - - registry-office-protocol - - registry-office-address - - registry-office-port - - old-release-protocol - - old-release-address - - old-release-port - properties: - registry-office-application: - type: string - description: > - 'Own application name - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name]' - registry-office-application-release-number: - type: string - description: > - 'Own release number - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/release-number]' - relay-server-replacement-operation: - type: string - description: > - 'Operation for requesting for broadcasting a new server address - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-010/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-capability/operation-name]' - relay-operation-update-operation: - type: string - description: > - 'Operation for requesting for broadcasting a backward compatible replacement of an operation - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-011/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-capability/operation-name]' - deregistration-operation: - type: string - description: > - 'Operation for deregistering from the application layer - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-002/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-capability/operation-name]' - registry-office-protocol: - type: string - description: > - 'Protocol for addressing the RegistryOffice application - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-protocol]' - registry-office-address: - type: object - properties: - ip-address: - type: object - properties: - ipv-4-address: - type: string - description: > - 'Own IP address - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-address/ipv-4-address]' - domain-name: - type: string - description: > - 'Own domain name - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-address/domain-name]' - registry-office-port: - type: integer - description: > - 'Own TCP port - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-port]' - old-release-protocol: - type: string - description: > - 'If application of the same name (but lower release number is already registered), Protocol for addressing the old release of the same application - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*-*-*-*-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol] - otherwise protocol for addressing the newly approved application.' - old-release-address: - type: object - properties: - ip-address: - type: object - properties: - ipv-4-address: - type: string - description: > - 'If application of the same name (but lower release number is already registered), IPv4 address of the OldRelease - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*-*-*-*-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address] - otherwise IPv4 address of the newly approved application.' - domain-name: - type: string - description: > - 'If application of the same name (but lower release number is already registered), domain name of the OldRelease - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*-*-*-*-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name] - otherwise domain-name of the newly approved application.' - old-release-port: - type: integer - description: > - 'If application of the same name (but lower release number is already registered), TCP port of the OldRelease - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*-*-*-*-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port] - otherwise TCP port of the newly approved application.' - example: - registry-office-application: 'RegistryOffice' - registry-office-application-release-number: '2.0.1' - relay-server-replacement-operation: '/v1/relay-server-replacement' - relay-operation-update-operation: '/v1/relay-operation-update' - deregistration-operation: '/v1/deregister-application' - registry-office-protocol: 'HTTP' - registry-office-address: - ip-address: - ipv-4-address: '127.0.0.1' - registry-office-port: 3024 - old-release-protocol: 'HTTP' - old-release-address: - ip-address: - ipv-4-address: '1.1.3.1' - old-release-port: 3001 - responses: - '204': - description: 'Will embed into the MBH SDN application layer' - headers: - x-correlator: - schema: - type: string - example: '550e8400-e29b-11d4-a716-446655440000' - description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request' - exec-time: - schema: - type: integer - example: 1100 - description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds' - backend-time: - schema: - type: integer - example: 850 - description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds' - life-cycle-state: - schema: - type: string - enum: - - 'EXPERIMENTAL' - - 'OPERATIONAL' - - 'DEPRECATED' - - 'OBSOLETE' - - 'UNKNOWN' - - 'NOT_YET_DEFINED' - example: 'EXPERIMENTAL' - description: 'Life cycle state of the consumed service' - '400': - $ref: '#/components/responses/responseForErroredServiceRequests' - '401': - $ref: '#/components/responses/responseForErroredServiceRequests' - '403': - $ref: '#/components/responses/responseForErroredServiceRequests' - '404': - $ref: '#/components/responses/responseForErroredServiceRequests' - '500': - $ref: '#/components/responses/responseForErroredServiceRequests' - default: - $ref: '#/components/responses/responseForErroredServiceRequests' + $ref: '#/components/responses/responseForErroredServiceRequests' + '404': + $ref: '#/components/responses/responseForErroredServiceRequests' + '500': + $ref: '#/components/responses/responseForErroredServiceRequests' + default: + $ref: '#/components/responses/responseForErroredServiceRequests' /v2/register-application: parameters: - $ref: '#/components/parameters/user' @@ -1536,9 +1243,11 @@ paths: - application-name - release-number - embedding-operation - - dispose-remainders-operation - client-update-operation - operation-client-update-operation + - dispose-remainders-operation + - preceding-release-operation + - subsequent-release-operation - tcp-server properties: application-name: @@ -1571,12 +1280,6 @@ paths: description: > 'Name of service for initiating embedding process update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - dispose-remainders-operation: - type: string - minLength: 6 - description: > - 'Name of service for broadcasting de-registrations of applications - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-006/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' client-update-operation: type: string minLength: 6 @@ -1589,6 +1292,24 @@ paths: description: > 'Name of service for broadcasting replacements of operations by backward compatible substitutes update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-002/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + dispose-remainders-operation: + type: string + minLength: 6 + description: > + 'Name of service for broadcasting de-registered applications that are to be removed from the application layer + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-006/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + preceding-release-operation: + type: string + minLength: 6 + description: > + 'Name of service for retrieving information about the preceding release of a new application + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-008/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + subsequent-release-operation: + type: string + minLength: 6 + description: > + 'Name of service for configuring the newRelease at the existing application + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-009/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' tcp-server: type: object required: @@ -1605,241 +1326,117 @@ paths: 'Protocol to be used for addressing the application that wants to register find or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' address: - type: object - minProperties: 1 - maxProperties: 1 - additionalProperties: false - properties: - ip-address: - type: object - minProperties: 1 - additionalProperties: false - properties: - ipv-4-address: - type: string - pattern: '^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$' - description: > - 'IPv4 address of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' - domain-name: - type: string - pattern: '^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$' - description: > - 'Domain name of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' - port: - type: integer - minimum: 0 - maximum: 65535 - description: > - 'TCP port of application that wants to register - update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' - examples: - old-multiple-TcpServers-format: - value: - application-name: 'TypeApprovalRegister' - release-number: '2.0.1' - preceding-application-name: 'TypeApprovalRegister' - preceding-release-number: '1.0.0' - embedding-operation: '/v1/embed-yourself' - client-update-operation: '/v1/update-client' - operation-client-update-operation: '/v1/update-operation-client' - tcp-server-list: - - protocol: 'HTTP' - address: - ip-address: - ipv-4-address: '127.0.0.1' - port: 3009 - new-single-TcpServer-format: - value: - application-name: 'TypeApprovalRegister' - release-number: '2.0.1' - preceding-application-name: 'TypeApprovalRegister' - preceding-release-number: '1.0.0' - embedding-operation: '/v1/embed-yourself' - dispose-remainders-operation: '/v1/dispose-remainders-of-deregistered-application' - client-update-operation: '/v1/update-client' - operation-client-update-operation: '/v1/update-operation-client' - tcp-server: - protocol: 'HTTP' - address: - ip-address: - ipv-4-address: '127.0.0.1' - port: 3009 - responses: - '204': - description: 'Application registered' - headers: - x-correlator: - schema: - type: string - example: '550e8400-e29b-11d4-a716-446655440000' - description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request' - exec-time: - schema: - type: integer - example: 1100 - description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds' - backend-time: - schema: - type: integer - example: 850 - description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds' - life-cycle-state: - schema: - type: string - enum: - - 'EXPERIMENTAL' - - 'OPERATIONAL' - - 'DEPRECATED' - - 'OBSOLETE' - - 'UNKNOWN' - - 'NOT_YET_DEFINED' - example: 'EXPERIMENTAL' - description: > - 'Life cycle state of the consumed service - find in [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-001/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-configuration/life-cycle-state]' - '400': - $ref: '#/components/responses/responseForErroredServiceRequests' - '403': - $ref: '#/components/responses/responseForErroredServiceRequests' - '404': - $ref: '#/components/responses/responseForErroredServiceRequests' - '500': - $ref: '#/components/responses/responseForErroredServiceRequests' - default: - $ref: '#/components/responses/responseForErroredServiceRequests' - callbacks: - TypeApprovalCausesRequestForEmbedding: - url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] - post: - parameters: - - $ref: '#/components/parameters/user' - - $ref: '#/components/parameters/originator' - - $ref: '#/components/parameters/x-correlator' - - $ref: '#/components/parameters/trace-indicator' - - $ref: '#/components/parameters/customer-journey' - requestBody: - required: true - content: - application/json: - schema: - type: object - required: - - registry-office-application - - registry-office-application-release-number - - relay-server-replacement-operation - - relay-operation-update-operation - - deregistration-operation - - registry-office-protocol - - registry-office-address - - registry-office-port - properties: - registry-office-application: - type: string - description: > - 'Own application name - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name]' - registry-office-application-release-number: - type: string - description: > - 'Own release number - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/release-number]' - relay-server-replacement-operation: - type: string - description: > - 'Operation for requesting for broadcasting a new server address - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-010/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-capability/operation-name]' - relay-operation-update-operation: - type: string - description: > - 'Operation for requesting for broadcasting a backward compatible replacement of an operation - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-011/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-capability/operation-name]' - deregistration-operation: - type: string - description: > - 'Operation for deregistering from the application layer - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-002/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-capability/operation-name]' - registry-office-protocol: - type: string - description: > - 'Protocol for addressing the RegistryOffice application - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-protocol]' - registry-office-address: - type: object - properties: - ip-address: - type: object - properties: - ipv-4-address: - type: string - description: > - 'Own IP address - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-address/ipv-4-address]' - domain-name: - type: string - description: > - 'Own domain name - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-address/domain-name]' - registry-office-port: - type: integer - description: > - 'Own TCP port - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-port]' - example: - registry-office-application: 'RegistryOffice' - registry-office-application-release-number: '2.1.0' - relay-server-replacement-operation: '/v1/relay-server-replacement' - relay-operation-update-operation: '/v1/relay-operation-update' - deregistration-operation: '/v1/deregister-application' - registry-office-protocol: 'HTTP' - registry-office-address: - ip-address: - ipv-4-address: '1.1.3.17' - registry-office-port: 3017 - responses: - '204': - description: 'Will embed into the MBH SDN application layer' - headers: - x-correlator: - schema: - type: string - example: '550e8400-e29b-11d4-a716-446655440000' - description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request' - exec-time: - schema: - type: integer - example: 1100 - description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds' - backend-time: - schema: - type: integer - example: 850 - description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds' - life-cycle-state: - schema: - type: string - enum: - - 'EXPERIMENTAL' - - 'OPERATIONAL' - - 'DEPRECATED' - - 'OBSOLETE' - - 'UNKNOWN' - - 'NOT_YET_DEFINED' - example: 'EXPERIMENTAL' - description: 'Life cycle state of the consumed service' - '400': - $ref: '#/components/responses/responseForErroredServiceRequests' - '401': - $ref: '#/components/responses/responseForErroredServiceRequests' - '403': - $ref: '#/components/responses/responseForErroredServiceRequests' - '404': - $ref: '#/components/responses/responseForErroredServiceRequests' - '500': - $ref: '#/components/responses/responseForErroredServiceRequests' - default: - $ref: '#/components/responses/responseForErroredServiceRequests' + type: object + minProperties: 1 + maxProperties: 1 + additionalProperties: false + properties: + ip-address: + type: object + minProperties: 1 + additionalProperties: false + properties: + ipv-4-address: + type: string + pattern: '^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$' + description: > + 'IPv4 address of application that wants to register + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' + domain-name: + type: string + pattern: '^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$' + description: > + 'Domain name of application that wants to register + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' + port: + type: integer + minimum: 0 + maximum: 65535 + description: > + 'TCP port of application that wants to register + update or create [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' + examples: + old-multiple-TcpServers-format: + value: + application-name: 'TypeApprovalRegister' + release-number: '2.0.1' + preceding-application-name: 'TypeApprovalRegister' + preceding-release-number: '1.0.0' + embedding-operation: '/v1/embed-yourself' + client-update-operation: '/v1/update-client' + operation-client-update-operation: '/v1/update-operation-client' + tcp-server-list: + - protocol: 'HTTP' + address: + ip-address: + ipv-4-address: '127.0.0.1' + port: 3009 + - protocol: 'HTTPS' + address: + ip-address: + ipv-4-address: '1.2.3.9' + port: 3209 + new-single-TcpServer-format: + value: + application-name: 'TypeApprovalRegister' + release-number: '2.0.1' + preceding-application-name: 'TypeApprovalRegister' + preceding-release-number: '1.0.0' + embedding-operation: '/v1/embed-yourself' + client-update-operation: '/v1/update-client' + operation-client-update-operation: '/v1/update-operation-client' + dispose-remainders-operation: '/v1/dispose-remainders-of-deregistered-application' + preceding-release-operation: '/v1/inform-about-preceding-release' + subsequent-release-operation: '/v1/update-client-of-subsequent-release' + tcp-server: + protocol: 'HTTP' + address: + ip-address: + ipv-4-address: '127.0.0.1' + port: 3009 + responses: + '204': + description: 'Application registered' + headers: + x-correlator: + schema: + type: string + example: '550e8400-e29b-11d4-a716-446655440000' + description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request' + exec-time: + schema: + type: integer + example: 1100 + description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds' + backend-time: + schema: + type: integer + example: 850 + description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds' + life-cycle-state: + schema: + type: string + enum: + - 'EXPERIMENTAL' + - 'OPERATIONAL' + - 'DEPRECATED' + - 'OBSOLETE' + - 'UNKNOWN' + - 'NOT_YET_DEFINED' + example: 'EXPERIMENTAL' + description: > + 'Life cycle state of the consumed service + find in [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-001/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-configuration/life-cycle-state]' + '400': + $ref: '#/components/responses/responseForErroredServiceRequests' + '403': + $ref: '#/components/responses/responseForErroredServiceRequests' + '404': + $ref: '#/components/responses/responseForErroredServiceRequests' + '500': + $ref: '#/components/responses/responseForErroredServiceRequests' + default: + $ref: '#/components/responses/responseForErroredServiceRequests' /v1/deregister-application: parameters: - $ref: '#/components/parameters/user' @@ -2013,42 +1610,75 @@ paths: content: application/json: schema: - type: object - required: - - application-name - - release-number - - approval-status - - response-receiver-operation - properties: - application-name: - type: string - description: 'Name of application with updated approval status' - release-number: - type: string - pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' - description: 'Release of application with updated approval status' - approval-status: - type: string - enum: - - 'REGISTERED' - - 'APPROVED' - - 'BARRED' - - 'NOT_YET_DEFINED' - description: 'Updated approval status' - response-receiver-operation: - type: string - minLength: 6 - description: > - 'Name of the operation that shall be addressed for documenting the embedding status - update [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-tar-2-0-1-007/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' - example: - application-name: 'BadApplication' - release-number: '1.0.0' - approval-status: 'BARRED' - response-receiver-operation: '/v1/document-embedding-status' + oneOf: + - description: 'requestBody according to v2.1' + type: object + required: + - application-name + - release-number + - approval-status + - response-receiver-operation + properties: + application-name: + type: string + description: 'Name of application with updated approval status' + release-number: + type: string + pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' + description: 'Release of application with updated approval status' + approval-status: + type: string + enum: + - 'REGISTERED' + - 'APPROVED' + - 'BARRED' + - 'NOT_YET_DEFINED' + description: 'Updated approval status' + response-receiver-operation: + type: string + minLength: 6 + description: > + 'Name of the operation that shall be addressed for documenting the embedding status + update [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-tar-2-0-1-007/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + - description: 'requestBody according to v2.0; DEPRECATED; to be deleted with RO v3.0.0' + type: object + required: + - application-name + - release-number + - approval-status + properties: + application-name: + type: string + description: 'Name of application with updated approval status' + release-number: + type: string + pattern: '^([0-9]{1,2})\.([0-9]{1,2})\.([0-9]{1,2})$' + description: 'Release of application with updated approval status' + approval-status: + type: string + enum: + - 'REGISTERED' + - 'APPROVED' + - 'BARRED' + - 'NOT_YET_DEFINED' + description: 'Updated approval status' + examples: + requestBody-according-to-v2.1: + value: + application-name: 'BadApplication' + release-number: '1.0.0' + approval-status: 'BARRED' + response-receiver-operation: '/v1/document-embedding-status' + requestBody-according-to-v2.0: + value: + application-name: 'BadApplication' + release-number: '1.0.0' + approval-status: 'BARRED' responses: '200': - description: 'Approval status updated' + description: > + 'Approval status updated + ResponseCode 200 is to be sent, if the requestBody is according to v2.1 or later' content: application/json: schema: @@ -2091,6 +1721,44 @@ paths: description: > 'Life cycle state of the consumed service find in [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-is-003/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-configuration/life-cycle-state]' + '204': + description: > + 'Approval status updated + DEPRECATED + ResponseCode 204 is just for assuring backward compatibility during the upgrade process of the TAC applications + It shall be deleted with RO v3.0.0 + Is is to be sent, if the requestBody is according to v2.0' + headers: + x-correlator: + schema: + type: string + example: '550e8400-e29b-11d4-a716-446655440000' + description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request' + exec-time: + schema: + type: integer + example: 1100 + description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds' + backend-time: + schema: + type: integer + example: 850 + description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds' + life-cycle-state: + schema: + type: string + enum: + - 'EXPERIMENTAL' + - 'OPERATIONAL' + - 'DEPRECATED' + - 'OBSOLETE' + - 'UNKNOWN' + - 'NOT_YET_DEFINED' + example: 'EXPERIMENTAL' + description: > + 'Life cycle state of the consumed service + find in [/core-model-1-4:control-construct/logical-termination-point=ro-2-0-1-op-s-is-003/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-configuration/life-cycle-state]' + '400': $ref: '#/components/responses/responseForErroredServiceRequests' '401': @@ -2124,16 +1792,120 @@ paths: application-name: type: string description: > - 'Name of application that shall be removed from the register - from {$request.body#application-name}' + 'Name of application that shall be removed from the register + from {$request.body#application-name}' + release-number: + type: string + description: > + 'Release of application that shall be removed from the register + from {$request.body#release-number}' + responses: + '204': + description: 'Application deregistered' + headers: + x-correlator: + schema: + type: string + example: '550e8400-e29b-11d4-a716-446655440000' + description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request' + exec-time: + schema: + type: integer + example: 1100 + description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds' + backend-time: + schema: + type: integer + example: 850 + description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds' + life-cycle-state: + schema: + type: string + enum: + - 'EXPERIMENTAL' + - 'OPERATIONAL' + - 'DEPRECATED' + - 'OBSOLETE' + - 'UNKNOWN' + - 'NOT_YET_DEFINED' + example: 'EXPERIMENTAL' + description: 'Life cycle state of the consumed service' + '400': + $ref: '#/components/responses/responseForErroredServiceRequests' + '401': + $ref: '#/components/responses/responseForErroredServiceRequests' + '403': + $ref: '#/components/responses/responseForErroredServiceRequests' + '404': + $ref: '#/components/responses/responseForErroredServiceRequests' + '500': + $ref: '#/components/responses/responseForErroredServiceRequests' + default: + $ref: '#/components/responses/responseForErroredServiceRequests' + ApprovingApplicationCausesConnectingWith: + Alt: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-alt-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + post: + parameters: + - $ref: '#/components/parameters/user' + - $ref: '#/components/parameters/originator' + - $ref: '#/components/parameters/x-correlator' + - $ref: '#/components/parameters/trace-indicator' + - $ref: '#/components/parameters/customer-journey' + requestBody: + required: true + content: + application/json: + schema: + type: object + properties: + application-name: + type: string + description: > + 'Name of application that is approved + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}' release-number: type: string description: > - 'Release of application that shall be removed from the register - from {$request.body#release-number}' + 'Release of application that is approved + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$request.body#release-number}' + protocol: + type: string + description: > + 'Protocol to be used for addressing the application that is approved + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' + address: + type: object + properties: + ip-address: + type: object + properties: + ipv-4-address: + type: string + description: > + 'IPv4 address of application that is approved + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' + domain-name: + type: string + description: > + 'Domain name of application that is approved + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' + port: + type: integer + description: > + 'TCP port of application that is approved + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' responses: - '204': - description: 'Application deregistered' + '200': + description: 'Application will be represented in the application layer topology' + content: + application/json: + schema: + type: object + properties: + successfully-connected: + type: boolean + reason-of-failure: + type: string headers: x-correlator: schema: @@ -2174,8 +1946,7 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - ApprovingApplicationCausesConnectingWith: - Alt: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-alt-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + Okm: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-okm-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-okm-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-okm-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-okm-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-okm-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -2228,7 +1999,7 @@ paths: from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' responses: '200': - description: 'Application will be represented in the application layer topology' + description: 'Application will be able to receive operationKeys' content: application/json: schema: @@ -2278,7 +2049,7 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - Okm: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-okm-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-okm-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-okm-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-okm-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-okm-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + Eatl: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-eatl-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -2331,7 +2102,7 @@ paths: from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' responses: '200': - description: 'Application will be able to receive operationKeys' + description: 'Application will be requested for service request notifications' content: application/json: schema: @@ -2381,7 +2152,7 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - Eatl: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-eatl-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + Aa: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-aa-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -2434,7 +2205,7 @@ paths: from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' responses: '200': - description: 'Application will be requested for service request notifications' + description: 'Application requested to inquire approvals of BasicAuth requests' content: application/json: schema: @@ -2484,7 +2255,7 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - Aa: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-aa-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + Ol: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-ol-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-ol-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-ol-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-ol-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-ol-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -2537,7 +2308,7 @@ paths: from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' responses: '200': - description: 'Application requested to inquire approvals of BasicAuth requests' + description: 'Application will be requested for OaM request notifications' content: application/json: schema: @@ -2587,7 +2358,10 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - Ol: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-ol-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-ol-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-ol-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-ol-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-ol-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + ApprovalNotification: + url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + description: > + 'To be activated, if received /v1/regard-updated-approval-status::requestBody::approval-status == APPROVED' post: parameters: - $ref: '#/components/parameters/user' @@ -2601,17 +2375,23 @@ paths: application/json: schema: type: object + required: + - application-name + - release-number + - protocol + - address + - port properties: application-name: type: string description: > 'Name of application that is approved - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]' release-number: type: string description: > 'Release of application that is approved - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$request.body#release-number}' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]' protocol: type: string description: > @@ -2638,18 +2418,17 @@ paths: description: > 'TCP port of application that is approved from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' + example: + application-name: 'CurrentController' + release-number: '1.0.0' + protocol: 'HTTP' + address: + ip-address: + ipv-4-address: '1.1.4.1' + port: 4001 responses: - '200': - description: 'Application will be requested for OaM request notifications' - content: - application/json: - schema: - type: object - properties: - successfully-connected: - type: boolean - reason-of-failure: - type: string + '204': + description: 'Application will be regarded' headers: x-correlator: schema: @@ -3252,16 +3031,25 @@ paths: application/json: schema: type: object + required: + - registry-office-application + - registry-office-application-release-number + - relay-server-replacement-operation + - relay-operation-update-operation + - deregistration-operation + - registry-office-protocol + - registry-office-address + - registry-office-port properties: registry-office-application: type: string description: > - 'Own application name + 'Name of RegistryOffice application from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name]' registry-office-application-release-number: type: string description: > - 'Own release number + 'Release of RegistryOffice application from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/release-number]' relay-server-replacement-operation: type: string @@ -3281,29 +3069,73 @@ paths: registry-office-protocol: type: string description: > - 'Protocol for addressing the RegistryOffice application + 'Protocol for addressing RegistryOffice application from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-protocol]' registry-office-address: type: object + minProperties: 1 + maxProperties: 1 + additionalProperties: false properties: ip-address: type: object + minProperties: 1 + additionalProperties: false properties: ipv-4-address: type: string description: > - 'Own IP address + 'IPv4 address of RegistryOffice application from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-address/ipv-4-address]' domain-name: type: string description: > - 'Own domain name - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-address/domain-name]' + 'Domain name of RegistryOffice application + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-address/domain-name]' registry-office-port: type: integer description: > - 'Own TCP port + 'Port of RegistryOffice application from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-s-000/layer-protocol=0/tcp-server-interface-1-0:tcp-server-interface-pac/tcp-server-interface-configuration/local-port]' + old-release-protocol: + type: string + description: > + 'Protocol for addressing the currently running old release of the same application + for [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*-*-*-*-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$RequestForOldRelease.responses.body#application-name} + AND [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*-*-*-*-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$RequestForOldRelease.responses.body#release-number} + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*-*-*-*-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' + old-release-address: + type: object + minProperties: 1 + maxProperties: 1 + additionalProperties: false + properties: + ip-address: + type: object + minProperties: 1 + additionalProperties: false + properties: + ipv-4-address: + type: string + description: > + 'IPv4 address of currently running old release of the same application + for [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*-*-*-*-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$RequestForOldRelease.responses.body#application-name} + AND [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*-*-*-*-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$RequestForOldRelease.responses.body#release-number} + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*-*-*-*-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' + domain-name: + type: string + description: > + 'Domain name of currently running old release of the same application + for [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*-*-*-*-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$RequestForOldRelease.responses.body#application-name} + AND [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*-*-*-*-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$RequestForOldRelease.responses.body#release-number} + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*-*-*-*-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' + old-release-port: + type: integer + description: > + 'Port of currently running old release of the same application + for [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*-*-*-*-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$RequestForOldRelease.responses.body#application-name} + AND [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*-*-*-*-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$RequestForOldRelease.responses.body#release-number} + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*-*-*-*-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' responses: '204': description: 'Will embed into the MBH SDN application layer' @@ -4528,121 +4360,6 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - callbacks: - ApprovalNotification: - url: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] - description: > - 'DEPRECATED - Callback shall be deleted with RO v3.0.0 - Starting from RO v2.1.0, sending notifications has been substituded by a concrete sequence for addressing the TAC components - To be activated, if received /v1/regard-updated-approval-status::requestBody::approval-status == APPROVED' - post: - parameters: - - $ref: '#/components/parameters/user' - - $ref: '#/components/parameters/originator' - - $ref: '#/components/parameters/x-correlator' - - $ref: '#/components/parameters/trace-indicator' - - $ref: '#/components/parameters/customer-journey' - requestBody: - required: true - content: - application/json: - schema: - type: object - required: - - application-name - - release-number - - protocol - - address - - port - properties: - application-name: - type: string - description: > - 'Name of application that is approved - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]' - release-number: - type: string - description: > - 'Release of application that is approved - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]' - protocol: - type: string - description: > - 'Protocol to be used for addressing the application that is approved - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]' - address: - type: object - properties: - ip-address: - type: object - properties: - ipv-4-address: - type: string - description: > - 'IPv4 address of application that is approved - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]' - domain-name: - type: string - description: > - 'Domain name of application that is approved - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' - port: - type: integer - description: > - 'TCP port of application that is approved - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port]' - example: - application-name: 'CurrentController' - release-number: '1.0.0' - protocol: 'HTTP' - address: - ip-address: - ipv-4-address: '1.1.4.1' - port: 4001 - responses: - '204': - description: 'Application will be regarded' - headers: - x-correlator: - schema: - type: string - example: '550e8400-e29b-11d4-a716-446655440000' - description: 'UUID for the service execution flow that allows to correlate requests and responses. Its value must be identical at the response compared with its corresponding request' - exec-time: - schema: - type: integer - example: 1100 - description: 'Value written by the service provider, reporting the total elapsed time for the execution, including all the additional processing needed to retrieve the data from the backend service. Expressed in milliseconds' - backend-time: - schema: - type: integer - example: 850 - description: 'Value written by the service provider, reporting the elapsed time for data retrieval from the backend (service invocation, database access…). Expressed in milliseconds' - life-cycle-state: - schema: - type: string - enum: - - 'EXPERIMENTAL' - - 'OPERATIONAL' - - 'DEPRECATED' - - 'OBSOLETE' - - 'UNKNOWN' - - 'NOT_YET_DEFINED' - example: 'EXPERIMENTAL' - description: 'Life cycle state of the consumed service' - '400': - $ref: '#/components/responses/responseForErroredServiceRequests' - '401': - $ref: '#/components/responses/responseForErroredServiceRequests' - '403': - $ref: '#/components/responses/responseForErroredServiceRequests' - '404': - $ref: '#/components/responses/responseForErroredServiceRequests' - '500': - $ref: '#/components/responses/responseForErroredServiceRequests' - default: - $ref: '#/components/responses/responseForErroredServiceRequests' /v1/notify-withdrawn-approvals: description: > 'DEPRECATED @@ -11236,7 +10953,7 @@ paths: properties: action-profile-1-0:consequent-operation-reference: type: string - example: '/core-model-1-4:control-construct/logical-termination-point=xx-1-0-0-op-s-bs-002/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-capability/operation-name' + example: '/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-s-bs-002/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-capability/operation-name' responses: '204': description: 'Reference on the consequent operation configured' @@ -11465,7 +11182,7 @@ paths: type: string example: response-profile-1-0:value: - value-reference: '/core-model-1-4:control-construct/logical-termination-point=xx-1-0-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name' + value-reference: '/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name' '400': $ref: '#/components/responses/responseForErroredOamRequests' '401': @@ -11506,7 +11223,7 @@ paths: type: string example: response-profile-1-0:value: - value-reference: '/core-model-1-4:control-construct/logical-termination-point=xx-1-0-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name' + value-reference: '/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name' responses: '204': description: 'Request path configured' diff --git a/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml b/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml index 3295617..72ac197 100644 --- a/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml +++ b/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml @@ -4,6 +4,7 @@ skinparam responseMessageBelowArrow true title BarringApplicationCausesDeregisteringOfApplication ApprovingApplicationCausesConnectingWith +ApprovalNotification ApprovingApplicationCausesPreparingTheEmbedding ApprovingApplicationCausesConnectingToBroadcast end title @@ -20,6 +21,8 @@ participant "EaTL://v1/regard-application" as eatlRegardApplication participant "AA://v1/regard-application" as aaRegardApplication participant "OL://v1/regard-application" as olRegardApplication +participant "subscribers://v1/regard-application" as RegardApplicationNotification + participant "ALT://v1/add-operation-client-to-link" as altAddClientToLink participant "NA://v1/inform-about-preceding-release" as naInformAboutOR participant "OR://v1/update-client-of-subsequent-release" as orUpdateNR @@ -118,10 +121,17 @@ terminate process with response end note tarReceiver <- ro : {processId, successfully-embedded==false, reason-of-failure} -note over ro +note over ro #LightSkyBlue ELSE end note +note over ro #LightSkyBlue +ApprovalNotification +end note +ro -> RegardApplicationNotification : {newApplicationName, releaseNumber, TCP/IP address} +ro <-- RegardApplicationNotification : 204 + + note over ro RequestForOldRelease end note From 90692dc27af55ecadc018cd3f5a7bf7475737ea9 Mon Sep 17 00:00:00 2001 From: openBackhaul Date: Thu, 25 Jan 2024 18:28:10 +0100 Subject: [PATCH 3/6] Consolidate findings in v2.1.0_spec --- spec/RegistryOffice+config.json | 102 +++++++--- spec/RegistryOffice+forwardings.yaml | 51 ++++- spec/RegistryOffice+services.yaml | 2 +- spec/RegistryOffice.yaml | 59 ++++-- spec/reference.yml | 293 +++++++++++++++++++++++++++ 5 files changed, 452 insertions(+), 55 deletions(-) create mode 100644 spec/reference.yml diff --git a/spec/RegistryOffice+config.json b/spec/RegistryOffice+config.json index 0004e2e..dc8774d 100644 --- a/spec/RegistryOffice+config.json +++ b/spec/RegistryOffice+config.json @@ -1323,8 +1323,8 @@ }, { "local-id": "2", - "release-number": "2.1.0", - "release-date": "09.12.2023", + "release-number": "2.1.1", + "release-date": "25.01.2024", "changes": "Update on ApplicationPattern 2.1.0 and fixing several findings." } ] @@ -3712,7 +3712,7 @@ "uuid": "ro-2-1-0-op-fd-000", "forwarding-construct": [ { - "uuid": "ro-2-1-0-op-fc-bm-000", + "uuid": "ro-2-1-0-op-fc-bm-999", "name": [ { "value-name": "ForwardingKind", @@ -3741,6 +3741,36 @@ } ] }, + { + "uuid": "ro-2-1-0-op-fc-bm-000", + "name": [ + { + "value-name": "ForwardingKind", + "value": "core-model-1-4:FORWARDING_KIND_TYPE_INVARIANT_PROCESS_SNIPPET" + }, + { + "value-name": "ForwardingName", + "value": "PromptForRegisteringCausesRegistrationRequest2" + } + ], + "fc-port": [ + { + "local-id": "000", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", + "logical-termination-point": "ro-2-1-0-op-s-bm-000" + }, + { + "local-id": "100", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-bm-000" + }, + { + "local-id": "200", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", + "logical-termination-point": "ro-2-1-0-op-c-bm-ro-2-0-1-000" + } + ] + }, { "uuid": "ro-2-1-0-op-fc-bm-001", "name": [ @@ -3844,6 +3874,21 @@ "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-bm-012" }, + { + "local-id": "113", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-bm-013" + }, + { + "local-id": "114", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-bm-014" + }, + { + "local-id": "115", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-bm-015" + }, { "local-id": "130", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", @@ -3990,7 +4035,7 @@ "logical-termination-point": "ro-2-1-0-op-s-bm-012" }, { - "local-id": "000", + "local-id": "001", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", "logical-termination-point": "ro-2-1-0-op-s-bm-005" }, @@ -4254,46 +4299,56 @@ "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-bm-012" }, + { + "local-id": "115", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-bm-015" + }, { "local-id": "130", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-im-000" }, { - "local-id": "110", + "local-id": "141", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-001" }, { - "local-id": "111", + "local-id": "146", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-006" }, { - "local-id": "112", + "local-id": "147", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-007" }, { - "local-id": "113", + "local-id": "148", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-008" }, { - "local-id": "114", + "local-id": "149", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-009" }, { - "local-id": "115", + "local-id": "150", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-010" }, { - "local-id": "116", + "local-id": "152", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-012" }, + { + "local-id": "153", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-is-013" + }, { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", @@ -4324,6 +4379,11 @@ "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-bm-013" }, + { + "local-id": "100", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-is-002" + }, { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", @@ -5192,11 +5252,6 @@ { "local-id": "002", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-003" - }, - { - "local-id": "003", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", "logical-termination-point": "ro-2-1-0-op-s-is-013" }, { @@ -5204,11 +5259,6 @@ "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-003" }, - { - "local-id": "101", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", - "logical-termination-point": "ro-2-1-0-op-s-bm-010" - }, { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", @@ -5297,11 +5347,6 @@ { "local-id": "002", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-003" - }, - { - "local-id": "003", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", "logical-termination-point": "ro-2-1-0-op-s-is-013" }, { @@ -5452,11 +5497,6 @@ { "local-id": "002", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", - "logical-termination-point": "ro-2-1-0-op-s-is-003" - }, - { - "local-id": "003", - "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_MANAGEMENT", "logical-termination-point": "ro-2-1-0-op-s-is-013" }, { diff --git a/spec/RegistryOffice+forwardings.yaml b/spec/RegistryOffice+forwardings.yaml index 6618f38..cf8246a 100644 --- a/spec/RegistryOffice+forwardings.yaml +++ b/spec/RegistryOffice+forwardings.yaml @@ -1,6 +1,25 @@ forwardings: - forwarding-name: PromptForRegisteringCausesRegistrationRequest + uuid: ro-2-1-0-op-fc-bm-999 + forwarding-type: InvariantProcessSnippet + management-requests: + operation-client-update: + - server-name: /v1/register-yourself + uuid: ro-2-1-0-op-s-bm-000 + fc-port-update: + - server-name: /v1/register-yourself + uuid: ro-2-1-0-op-s-bm-000 + fc-port-deletion: + operation-client-deletion: + initiating-requests: + - server-name: /v1/register-yourself + uuid: ro-2-1-0-op-s-bm-000 + consequent-requests: + - client-name: RegistryOffice://v1/register-application + uuid: ro-2-1-0-op-c-bm-ro-2-0-1-000 + + - forwarding-name: PromptForRegisteringCausesRegistrationRequest2 uuid: ro-2-1-0-op-fc-bm-000 forwarding-type: InvariantProcessSnippet management-requests: @@ -71,6 +90,12 @@ forwardings: uuid: ro-2-1-0-op-s-bm-011 - server-name: /v1/inquire-basic-auth-approvals uuid: ro-2-1-0-op-s-bm-012 + - server-name: /v1/dispose-remainders-of-deregistered-application + uuid: ro-2-1-0-op-s-bm-013 + - server-name: /v1/inform-about-preceding-release + uuid: ro-2-1-0-op-s-bm-014 + - server-name: /v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-s-bm-015 - server-name: /v1/bequeath-your-data-and-die uuid: ro-2-1-0-op-s-im-000 - server-name: /v1/start-application-in-generic-representation @@ -301,6 +326,8 @@ forwardings: uuid: ro-2-1-0-op-s-bm-011 - server-name: /v1/inquire-basic-auth-approvals uuid: ro-2-1-0-op-s-bm-012 + - server-name: /v1/update-client-of-subsequent-release + uuid: ro-2-1-0-op-s-bm-015 - server-name: /v1/bequeath-your-data-and-die uuid: ro-2-1-0-op-s-im-000 - server-name: /v1/register-application @@ -317,6 +344,8 @@ forwardings: uuid: ro-2-1-0-op-s-is-010 - server-name: /v2/register-application uuid: ro-2-1-0-op-s-is-012 + - server-name: /v1/notify-embedding-status-changes + uuid: ro-2-1-0-op-s-is-013 consequent-requests: - client-name: ApplicationLayerTopology://v1/update-ltp uuid: ro-2-1-0-op-c-bm-alt-2-0-1-001 @@ -336,6 +365,8 @@ forwardings: initiating-requests: - server-name: /v1/dispose-remainders-of-deregistered-application uuid: ro-2-1-0-op-s-bm-013 + - server-name: /v1/deregister-application + uuid: ro-2-1-0-op-s-is-002 consequent-requests: - client-name: ApplicationLayerTopology://v1/delete-ltp-and-dependents uuid: ro-2-1-0-op-c-bm-alt-2-0-1-002 @@ -827,14 +858,14 @@ forwardings: - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.RequestForOldRelease uuid: ro-2-1-0-op-fc-is-042 - forwarding-type: InvariantProcessSnippet + forwarding-type: ProcessSnippet management-requests: operation-client-update: - server-name: /v2/register-application uuid: ro-2-1-0-op-s-is-012 fc-port-update: - - server-name: /v1/regard-updated-approval-status - uuid: ro-2-1-0-op-s-is-003 + - server-name: /v2/register-application + uuid: ro-2-1-0-op-s-is-012 fc-port-deletion: - server-name: /v1/dispose-remainders-of-deregistered-application uuid: ro-2-1-0-op-s-bm-013 @@ -844,8 +875,6 @@ forwardings: initiating-requests: - server-name: /v1/regard-updated-approval-status uuid: ro-2-1-0-op-s-is-003 - - server-name: /v1/update-operation-key - uuid: ro-2-1-0-op-s-bm-010 consequent-requests: - client-name: RegistryOffice://v1/inform-about-preceding-release uuid: ro-2-1-0-op-c-im-ro-2-0-1-008 @@ -879,14 +908,14 @@ forwardings: - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.RequestForUpdatingNewReleaseClient uuid: ro-2-1-0-op-fc-is-044 - forwarding-type: InvariantProcessSnippet + forwarding-type: ProcessSnippet management-requests: operation-client-update: - server-name: /v2/register-application uuid: ro-2-1-0-op-s-is-012 fc-port-update: - - server-name: /v1/regard-updated-approval-status - uuid: ro-2-1-0-op-s-is-003 + - server-name: /v2/register-application + uuid: ro-2-1-0-op-s-is-012 fc-port-deletion: - server-name: /v1/dispose-remainders-of-deregistered-application uuid: ro-2-1-0-op-s-bm-013 @@ -969,8 +998,10 @@ forwardings: - server-name: /v2/register-application uuid: ro-2-1-0-op-s-is-012 fc-port-update: - - server-name: /v1/regard-updated-approval-status - uuid: ro-2-1-0-op-s-is-003 + - server-name: /v1/register-application + uuid: ro-2-1-0-op-s-is-001 + - server-name: /v2/register-application + uuid: ro-2-1-0-op-s-is-012 fc-port-deletion: - server-name: /v1/dispose-remainders-of-deregistered-application uuid: ro-2-1-0-op-s-bm-013 diff --git a/spec/RegistryOffice+services.yaml b/spec/RegistryOffice+services.yaml index 1779dee..83a67e2 100644 --- a/spec/RegistryOffice+services.yaml +++ b/spec/RegistryOffice+services.yaml @@ -79,7 +79,7 @@ servers: uuid: ro-2-1-0-op-s-is-013 http-server: own-application-name: RegistryOffice - own-release-number: 2.1.0 + own-release-number: 2.1.1 uuid: ro-2-1-0-http-s-000 tcp-server: - description: Without TLS layer diff --git a/spec/RegistryOffice.yaml b/spec/RegistryOffice.yaml index 1edce3d..cf9bbc0 100644 --- a/spec/RegistryOffice.yaml +++ b/spec/RegistryOffice.yaml @@ -1758,7 +1758,6 @@ paths: description: > 'Life cycle state of the consumed service find in [/core-model-1-4:control-construct/logical-termination-point=ro-2-0-1-op-s-is-003/layer-protocol=0/operation-server-interface-1-0:operation-server-interface-pac/operation-server-interface-configuration/life-cycle-state]' - '400': $ref: '#/components/responses/responseForErroredServiceRequests' '401': @@ -2152,7 +2151,7 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - Aa: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-eatl-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-aa-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + Aa: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-aa-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-aa-2-0-1-003/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -5653,6 +5652,16 @@ paths: application/json: schema: type: object + required: + - application-name + - release-number + - embedding-operation + - client-update-operation + - operation-client-update-operation + - dispose-remainders-operation + - preceding-release-operation + - subsequent-release-operation + - tcp-server properties: application-name: type: string @@ -6802,6 +6811,12 @@ paths: application/json: schema: type: object + required: + - Authorization + - application-name + - release-number + - operation-name + - method properties: Authorization: type: string @@ -6836,16 +6851,28 @@ paths: content: application/json: schema: - type: object - properties: - basic-auth-request-is-approved: - type: boolean - description: 'If true, BasicAuth request can be executed' - reason-of-objection: - type: string - description: > - 'if AUTHORIZATION_CODE_UNKNOWN BasicAuth request to be aborted and 401 to be sent - else BasicAuth request to be aborted and 403 to be sent' + oneOf: + - description: 'AdministratorAdministration is responding' + type: object + properties: + oam-request-is-approved: + type: boolean + reason-of-objection: + type: string + description: > + 'This attribute to be represented, if response::oam-request-is-approved==false. + Reasons to be checked and indicated according to the sequence defined in the enumeration.' + - description: 'AccessAdministration is responding' + type: object + properties: + basic-auth-request-is-approved: + type: boolean + description: 'If true, BasicAuth request can be executed' + reason-of-objection: + type: string + description: > + 'if AUTHORIZATION_CODE_UNKNOWN BasicAuth request to be aborted and 401 to be sent + else BasicAuth request to be aborted and 403 to be sent' headers: x-correlator: schema: @@ -8492,6 +8519,12 @@ paths: application/json: schema: type: object + required: + - Authorization + - application-name + - release-number + - operation-name + - method properties: Authorization: type: string @@ -8797,7 +8830,7 @@ paths: description: > 'Domain name to be used during the bequeath-your-data-and-die process update [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-nr-1-0-0-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name]' - future-port: + port: type: integer minimum: 0 maximum: 65535 diff --git a/spec/reference.yml b/spec/reference.yml new file mode 100644 index 0000000..c42fa24 --- /dev/null +++ b/spec/reference.yml @@ -0,0 +1,293 @@ +servers: +## TODO: Search and replace all "xx" in the uuid by the official abbreviation of the ApplicationName + + operation-servers: + own-oam: + basic: + - operation-name: /v1/register-yourself + uuid: ro-2-1-0-op-s-bm-000 + - operation-name: /v1/embed-yourself + uuid: ro-2-1-0-op-s-bm-001 + - operation-name: /v1/redirect-service-request-information + uuid: ro-2-1-0-op-s-bm-002 + - operation-name: /v1/redirect-oam-request-information + uuid: ro-2-1-0-op-s-bm-003 + - operation-name: /v1/end-subscription + uuid: ro-2-1-0-op-s-bm-004 + - operation-name: /v1/inquire-oam-request-approvals + uuid: ro-2-1-0-op-s-bm-005 + - operation-name: /v1/update-client + uuid: ro-2-1-0-op-s-bm-007 + - operation-name: /v1/list-ltps-and-fcs + uuid: ro-2-1-0-op-s-bm-008 + - operation-name: /v1/redirect-topology-change-information + uuid: ro-2-1-0-op-s-bm-009 + - operation-name: /v1/update-operation-key + uuid: ro-2-1-0-op-s-bm-010 + - operation-name: /v1/update-operation-client + uuid: ro-2-1-0-op-s-bm-011 + individual: + - operation-name: /v1/bequeath-your-data-and-die + uuid: ro-2-1-0-op-s-im-000 + service: + basic: + - operation-name: /v1/start-application-in-generic-representation + uuid: ro-2-1-0-op-s-bs-000 + - operation-name: /v1/inform-about-application + uuid: ro-2-1-0-op-s-bs-001 + - operation-name: /v1/inform-about-application-in-generic-representation + uuid: ro-2-1-0-op-s-bs-002 + - operation-name: /v1/inform-about-release-history + uuid: ro-2-1-0-op-s-bs-003 + - operation-name: /v1/inform-about-release-history-in-generic-representation + uuid: ro-2-1-0-op-s-bs-004 + - operation-name: /docs + uuid: ro-2-1-0-op-s-bs-005 + individual: + ## TODO: Add Services specific to this application + http-server: + own-application-name: ## TODO: Add OwnApplicationName + own-release-number: ## TODO: Add OwnReleaseNumber (e.g. 1.0.0) + uuid: ro-2-1-0-http-s-000 + tcp-server: + - description: Without TLS layer + local-protocol: http + own-ip-address: ## TODO: Add OwnIpAddress + own-tcp-port: ## TODO: Add OwnTcpPort + uuid: ro-2-1-0-tcp-s-000 + - description: With TLS layer + local-protocol: https + own-ip-address: ## TODO: Add OwnIpAddress + own-tcp-port: ## TODO: Add OwnTcpPort + uuid: ro-2-1-0-tcp-s-001 + + +clients: + + - http-client: + application-name: ElasticSearch + release-number: 1.0.0 + uuid: ro-2-1-0-http-c-es-1-0-0-000 + tcp-client: + remote-protocol: http + ip-address: 1.1.3.15 + tcp-port: 3015 + uuid: ro-2-1-0-tcp-c-es-1-0-0-000 + elasticsearch-client: + uuid: ro-2-1-0-es-c-es-1-0-0-000 + index-alias: ## TODO: Add IndexAlias + + - http-client: + application-name: OldRelease + release-number: ## TODO: Add Number of Release to be substituted (e.g. 1.0.0) + uuid: ro-2-1-0-http-c-or-1-0-0-000 + tcp-client: + remote-protocol: http + ip-address: ## TODO: Add IpAddress of Release to be substituted + tcp-port: ## TODO: Add TcpPort of Release to be substituted + uuid: ro-2-1-0-tcp-c-or-1-0-0-000 + operation-clients: + own-oam: + basic: + - operation-name: /v1/bequeath-your-data-and-die + uuid: ro-2-1-0-op-c-bm-or-1-0-0-000 + individual: + service: + basic: + individual: + + - http-client: + application-name: NewRelease + release-number: ## TODO: Add Number of substituting Release (e.g. 1.0.1) + uuid: ro-2-1-0-http-c-nr-1-0-0-000 + tcp-client: + remote-protocol: http + ip-address: ## TODO: Add IpAddress of substituting Release + tcp-port: ## TODO: Add TcpPort of substituting Release + uuid: ro-2-1-0-tcp-c-nr-1-0-0-000 + operation-clients: + own-oam: + basic: + individual: + ## TODO: Add Services required for handing-over configuration or data during update + service: + basic: + individual: + + - http-client: + application-name: RegistryOffice + release-number: 2.0.1 + uuid: ro-2-1-0-http-c-ro-2-0-1-000 + tcp-client: + remote-protocol: http + ip-address: 1.1.3.8 + tcp-port: 3008 + uuid: ro-2-1-0-tcp-c-ro-2-0-1-000 + operation-clients: + own-oam: + basic: + - operation-name: /v1/register-application + uuid: ro-2-1-0-op-c-bm-ro-2-0-1-000 + - operation-name: /v1/relay-server-replacement + uuid: ro-2-1-0-op-c-bm-ro-2-0-1-001 + - operation-name: /v1/deregister-application + uuid: ro-2-1-0-op-c-bm-ro-2-0-1-002 + - operation-name: /v1/relay-operation-update + uuid: ro-2-1-0-op-c-bm-ro-2-0-1-003 + individual: + service: + basic: + ## TODO: Add Clients specific to this application, but addressing all other applications + individual: + ## TODO: Add Clients specific to this application + + - http-client: + application-name: TypeApprovalRegister + release-number: 2.0.1 + uuid: ro-2-1-0-http-c-tar-2-0-1-000 + tcp-client: + remote-protocol: http + ip-address: 1.1.3.9 + tcp-port: 3009 + uuid: ro-2-1-0-tcp-c-tar-2-0-1-000 + operation-clients: + own-oam: + basic: + individual: + service: + basic: + ## TODO: Add Clients specific to this application, but addressing all other applications + individual: + ## TODO: Add Clients specific to this application + + - http-client: + application-name: ExecutionAndTraceLog + release-number: 2.0.1 + uuid: ro-2-1-0-http-c-eatl-2-0-1-000 + tcp-client: + remote-protocol: http + ip-address: 1.1.3.10 + tcp-port: 3010 + uuid: ro-2-1-0-tcp-c-eatl-2-0-1-000 + operation-clients: + own-oam: + basic: + - operation-name: /v1/record-service-request + uuid: ro-2-1-0-op-c-bs-eatl-2-0-1-000 + individual: + service: + basic: + ## TODO: Add Clients specific to this application, but addressing all other applications + individual: + ## TODO: Add Clients specific to this application + + - http-client: + application-name: OamLog + release-number: 2.0.1 + uuid: ro-2-1-0-http-c-ol-2-0-1-000 + tcp-client: + remote-protocol: http + ip-address: 1.1.3.11 + tcp-port: 3011 + uuid: ro-2-1-0-tcp-c-ol-2-0-1-000 + operation-clients: + own-oam: + basic: + - operation-name: /v1/record-oam-request + uuid: ro-2-1-0-op-c-bs-ol-2-0-1-000 + individual: + service: + basic: + ## TODO: Add Clients specific to this application, but addressing all other applications + individual: + ## TODO: Add Clients specific to this application + + - http-client: + application-name: AdministratorAdministration + release-number: 2.0.1 + uuid: ro-2-1-0-http-c-aa-2-0-1-000 + tcp-client: + remote-protocol: http + ip-address: 1.1.3.12 + tcp-port: 3012 + uuid: ro-2-1-0-tcp-c-aa-2-0-1-000 + operation-clients: + own-oam: + basic: + - operation-name: /v1/approve-oam-request + uuid: ro-2-1-0-op-c-bs-aa-2-0-1-000 + individual: + service: + basic: + ## TODO: Add Clients specific to this application, but addressing all other applications + individual: + ## TODO: Add Clients specific to this application + + - http-client: + application-name: ApplicationLayerTopology + release-number: 2.0.1 + uuid: ro-2-1-0-http-c-alt-2-0-1-000 + tcp-client: + remote-protocol: http + ip-address: 1.1.3.13 + tcp-port: 3013 + uuid: ro-2-1-0-tcp-c-alt-2-0-1-000 + operation-clients: + own-oam: + basic: + - operation-name: /v1/update-all-ltps-and-fcs + uuid: ro-2-1-0-op-c-bm-alt-2-0-1-000 + - operation-name: /v1/update-ltp + uuid: ro-2-1-0-op-c-bm-alt-2-0-1-001 + - operation-name: /v1/delete-ltp-and-dependents + uuid: ro-2-1-0-op-c-bm-alt-2-0-1-002 + - operation-name: /v1/update-fc + uuid: ro-2-1-0-op-c-bm-alt-2-0-1-003 + - operation-name: /v1/update-fc-port + uuid: ro-2-1-0-op-c-bm-alt-2-0-1-004 + - operation-name: /v1/delete-fc-port + uuid: ro-2-1-0-op-c-bm-alt-2-0-1-005 + individual: + service: + basic: + ## TODO: Add Clients specific to this application, but addressing all other applications + individual: + ## TODO: Add Clients specific to this application + + - http-client: + application-name: OperationKeyManagement + release-number: 2.0.1 + uuid: ro-2-1-0-http-c-okm-2-0-1-000 + tcp-client: + remote-protocol: http + ip-address: 1.1.3.14 + tcp-port: 3014 + uuid: ro-2-1-0-tcp-c-okm-2-0-1-000 + operation-clients: + own-oam: + basic: + individual: + service: + basic: + ## TODO: Add Clients specific to this application, but addressing all other applications + individual: + ## TODO: Add Clients specific to this application + + - http-client: + application-name: ## TODO: Add Name of application to be addressed + release-number: ## TODO: Add Release number of application to be addressed + uuid: ## TODO: Add UUID of the HttpClient + tcp-client: + remote-protocol: http + ip-address: ## TODO: Add IP address of application to be addressed + tcp-port: ## TODO: Add TCP port of application to be addressed + uuid: ## TODO: Add UUID of the TcpClient + operation-clients: + own-oam: + basic: + individual: + service: + basic: + ## TODO: Add Clients specific to this application, but addressing all other applications + individual: + ## TODO: Add Clients specific to this application \ No newline at end of file From 6a054cc9bcf63b76cab016e1040de0e74165a7e4 Mon Sep 17 00:00:00 2001 From: openBackhaul Date: Thu, 8 Feb 2024 12:44:52 +0100 Subject: [PATCH 4/6] Update process for embedding --- spec/RegistryOffice+config.json | 38 +++++- spec/RegistryOffice+forwardings.yaml | 6 +- spec/RegistryOffice+profileInstances.yaml | 32 +++-- spec/RegistryOffice+profiles.yaml | 1 + spec/RegistryOffice.yaml | 83 +++++++++---- ...egardApprovalStatusCausesSequence.plantuml | 115 ++++++++++++++++-- 6 files changed, 226 insertions(+), 49 deletions(-) diff --git a/spec/RegistryOffice+config.json b/spec/RegistryOffice+config.json index dc8774d..aaadc2d 100644 --- a/spec/RegistryOffice+config.json +++ b/spec/RegistryOffice+config.json @@ -398,6 +398,38 @@ { "uuid": "ro-2-1-0-integer-p-000", "profile-name": "integer-profile-1-0:PROFILE_NAME_TYPE_INTEGER_PROFILE", + "integer-profile-1-0:integer-profile-pac": { + "integer-profile-capability": { + "integer-name": "maximumWaitTimeToReceiveOperationKey", + "purpose": "Creating a Link in ALT was successful if an OperationKey could be received. This attribute limits waiting for the OperationKey to be received.", + "unit": "millisecond", + "minimum": 0, + "maximum": 5000 + }, + "integer-profile-configuration": { + "integer-value": 500 + } + } + }, + { + "uuid": "ro-2-1-0-integer-p-001", + "profile-name": "integer-profile-1-0:PROFILE_NAME_TYPE_INTEGER_PROFILE", + "integer-profile-1-0:integer-profile-pac": { + "integer-profile-capability": { + "integer-name": "maximumNumberOfAttemptsToCreateLink", + "purpose": "Creating a Link in ALT may fail because background processes are not finished. This attribute limits the number of attempts to create the Link.", + "unit": "attempt", + "minimum": 0, + "maximum": 20 + }, + "integer-profile-configuration": { + "integer-value": 5 + } + } + }, + { + "uuid": "ro-2-1-0-integer-p-010", + "profile-name": "integer-profile-1-0:PROFILE_NAME_TYPE_INTEGER_PROFILE", "integer-profile-1-0:integer-profile-pac": { "integer-profile-capability": { "integer-name": "waitTimeToApprove", @@ -5405,7 +5437,7 @@ }, { "value-name": "ForwardingName", - "value": "ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForPromptingEmbedding" + "value": "ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForBequeathYourData" } ], "fc-port": [ @@ -5430,7 +5462,7 @@ }, { "value-name": "ForwardingName", - "value": "ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForBequeathYourData" + "value": "ApprovingApplicationCausesPreparingTheEmbedding.CreateFurtherLinksForTransferringData" } ], "fc-port": [ @@ -5455,7 +5487,7 @@ }, { "value-name": "ForwardingName", - "value": "ApprovingApplicationCausesPreparingTheEmbedding.CreateFurtherLinksForTransferringData" + "value": "ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForPromptingEmbedding" } ], "fc-port": [ diff --git a/spec/RegistryOffice+forwardings.yaml b/spec/RegistryOffice+forwardings.yaml index cf8246a..9bb119e 100644 --- a/spec/RegistryOffice+forwardings.yaml +++ b/spec/RegistryOffice+forwardings.yaml @@ -943,7 +943,7 @@ forwardings: - client-name: OperationKeyManagement://v1/update-client-of-subsequent-release uuid: ro-2-1-0-op-c-im-okm-2-0-1-009 - - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForPromptingEmbedding + - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForBequeathYourData uuid: ro-2-1-0-op-fc-is-046 forwarding-type: InvariantProcessSnippet management-requests: @@ -958,7 +958,7 @@ forwardings: - client-name: ALT://v1/add-operation-client-to-link uuid: ro-2-1-0-op-c-is-alt-2-0-1-000 - - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForBequeathYourData + - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateFurtherLinksForTransferringData uuid: ro-2-1-0-op-fc-is-047 forwarding-type: InvariantProcessSnippet management-requests: @@ -973,7 +973,7 @@ forwardings: - client-name: ALT://v1/add-operation-client-to-link uuid: ro-2-1-0-op-c-is-alt-2-0-1-000 - - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateFurtherLinksForTransferringData + - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.CreateLinkForPromptingEmbedding uuid: ro-2-1-0-op-fc-is-048 forwarding-type: InvariantProcessSnippet management-requests: diff --git a/spec/RegistryOffice+profileInstances.yaml b/spec/RegistryOffice+profileInstances.yaml index e1eb12e..2692a83 100644 --- a/spec/RegistryOffice+profileInstances.yaml +++ b/spec/RegistryOffice+profileInstances.yaml @@ -187,16 +187,6 @@ profile-instances: configuration: value-reference: '/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-okm-2-0-1-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number' - - profile-name: 'GenericResponseProfile' - uuid: 'ro-2-1-0-response-p-015' - capability: - operation-name: '/v1/list-applications-in-generic-representation' - field-name-reference: '/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-cc-1-0-0-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name' - description: 'List of registered application names and release numbers' - datatype: 'string' - configuration: - value-reference: '/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-cc-1-0-0-000/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number' - - profile-name: 'FileProfile' uuid: 'ro-2-1-0-file-p-000' @@ -212,6 +202,28 @@ profile-instances: - profile-name: 'IntegerProfile' uuid: 'ro-2-1-0-integer-p-000' + capability: + integer-name: 'maximumWaitTimeToReceiveOperationKey' + purpose: 'Creating a Link in ALT was successful if an OperationKey could be received. This attribute limits waiting for the OperationKey to be received.' + unit: 'millisecond' + minimum: 0 + maximum: 5000 + configuration: + integer-value: 500 + + - profile-name: 'IntegerProfile' + uuid: 'ro-2-1-0-integer-p-001' + capability: + integer-name: 'maximumNumberOfAttemptsToCreateLink' + purpose: 'Creating a Link in ALT may fail because background processes are not finished. This attribute limits the number of attempts to create the Link.' + unit: 'attempt' + minimum: 0 + maximum: 20 + configuration: + integer-value: 5 + + - profile-name: 'IntegerProfile' + uuid: 'ro-2-1-0-integer-p-010' capability: integer-name: 'waitTimeToApprove' unit: 'second' diff --git a/spec/RegistryOffice+profiles.yaml b/spec/RegistryOffice+profiles.yaml index 61aa9c1..e43dd36 100644 --- a/spec/RegistryOffice+profiles.yaml +++ b/spec/RegistryOffice+profiles.yaml @@ -39,6 +39,7 @@ profiles: uuid: '^[a-z]{2,6}-([0-9]+)-([0-9]+)-([0-9]+)-integer-p-[0-9]{3}$' capability: integer-name: string + purpose: string unit: string minimum: integer maximum: integer diff --git a/spec/RegistryOffice.yaml b/spec/RegistryOffice.yaml index cf9bbc0..6ba4f8c 100644 --- a/spec/RegistryOffice.yaml +++ b/spec/RegistryOffice.yaml @@ -948,7 +948,7 @@ paths: description: > 'Registration service is not protected by operationKey. Receiving a de-registration request shall be assumed after passing wait time to approve - from [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-000/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' + from [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-010/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' requestBody: required: true content: @@ -1130,7 +1130,7 @@ paths: description: > 'Registration service is not protected by operationKey. Receiving a de-registration request shall be assumed after passing wait time to approve - from [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-000/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' + from [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-010/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' requestBody: required: true content: @@ -2627,7 +2627,8 @@ paths: RequestForUpdatingNewReleaseClient: #for [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$RequestForOldRelease.responses.body#application-name}: [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-009/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] description: > 'To be executed, IF (oldReleaseApplicationName != "OldRelease") AND (HttpClient for oldReleaseApplicationName exists in RO) - This request is initiated by receiving /v1/update-operation-key of {$ApprovingApplicationCausesPreparingTheEmbedding.RequestForOldRelease.responses.body#applicationName}://v1/update-client-of-subsequent-release' + Request to be initiated by receiving /v1/update-operation-key of {$ApprovingApplicationCausesPreparingTheEmbedding.RequestForOldRelease.responses.body#applicationName}://v1/update-client-of-subsequent-release + Process shall be terminated, if /v1/update-operation-key is not received within time period defined in [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-000/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' post: parameters: - $ref: '#/components/parameters/user' @@ -2734,7 +2735,11 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - CreateLinkForPromptingEmbedding: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + CreateLinkForBequeathYourData: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + description: > + 'To be executed, IF (oldReleaseApplicationName != "OldRelease") AND (HttpClient for oldReleaseApplicationName exists in RO) + This request shall be repeated as it may fail because background processes are not finished. + Process shall be terminated, if number of attempts is exceeding the maximum defined in [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-001/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' post: parameters: - $ref: '#/components/parameters/user' @@ -2753,27 +2758,27 @@ paths: type: string description: > 'Name of application that holds the OperationServer of the link, which is to be complemented - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}' + from {$RequestForOldRelease.responses.body#application-name}' serving-application-release-number: type: string description: > 'Release of application that holds the OperationServer of the link, which is to be complemented - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$request.body#release-number}' + from {$RequestForOldRelease.responses.body#release-number}' operation-name: type: string description: > 'Name of the operation, which is made available via the link - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' + from {$RequestForUpdatingNewReleaseClient.responses.body#bequeath-your-data-and-die-operation}' consuming-application-name: type: string description: > 'Name of application that holds the OperationClient, which shall be connected via the link - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name]' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}' consuming-application-release-number: type: string description: > 'Release of application that holds the OperationClient, which shall be connected via the link - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/release-number]' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$request.body#release-number}' responses: '200': description: 'OperationClient connected with OperationServer' @@ -2826,8 +2831,10 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - CreateLinkForBequeathYourData: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] - description: 'To be executed, IF (oldReleaseApplicationName != "OldRelease") AND (HttpClient for oldReleaseApplicationName exists in RO)' + CreateFurtherLinksForTransferringData: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + description: > + 'To be executed, IF (oldReleaseApplicationName != "OldRelease") AND (HttpClient for oldReleaseApplicationName exists in RO) + This request might be sent multiple times, according to the number of entries in {$RequestForUpdatingNewReleaseClient.responses.body#data-transfer-operations-list}' post: parameters: - $ref: '#/components/parameters/user' @@ -2846,27 +2853,28 @@ paths: type: string description: > 'Name of application that holds the OperationServer of the link, which is to be complemented - from {$RequestForOldRelease.responses.body#application-name}' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}' serving-application-release-number: type: string description: > 'Release of application that holds the OperationServer of the link, which is to be complemented - from {$RequestForOldRelease.responses.body#release-number}' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$request.body#release-number}' operation-name: type: string description: > 'Name of the operation, which is made available via the link - from {$RequestForUpdatingNewReleaseClient.responses.body#bequeath-your-data-and-die-operation}' + from {$RequestForUpdatingNewReleaseClient.responses.body#data-transfer-operations-list} + to be repeated for all entries' consuming-application-name: type: string description: > 'Name of application that holds the OperationClient, which shall be connected via the link - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}' + from {$RequestForOldRelease.responses.body#application-name}' consuming-application-release-number: type: string description: > 'Release of application that holds the OperationClient, which shall be connected via the link - from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/release-number]=={$request.body#release-number}' + from {$RequestForOldRelease.responses.body#release-number}' responses: '200': description: 'OperationClient connected with OperationServer' @@ -2919,10 +2927,7 @@ paths: $ref: '#/components/responses/responseForErroredServiceRequests' default: $ref: '#/components/responses/responseForErroredServiceRequests' - CreateFurtherLinksForTransferringData: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] - description: > - 'To be executed, IF (oldReleaseApplicationName != "OldRelease") AND (HttpClient for oldReleaseApplicationName exists in RO) - This request might be sent multiple times, according to the number of entries in {$RequestForUpdatingNewReleaseClient.responses.body#data-transfer-operations-list}' + CreateLinkForPromptingEmbedding: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] post: parameters: - $ref: '#/components/parameters/user' @@ -2951,18 +2956,17 @@ paths: type: string description: > 'Name of the operation, which is made available via the link - from {$RequestForUpdatingNewReleaseClient.responses.body#data-transfer-operations-list} - to be repeated for all entries' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name]' consuming-application-name: type: string description: > 'Name of application that holds the OperationClient, which shall be connected via the link - from {$RequestForOldRelease.responses.body#application-name}' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/application-name]' consuming-application-release-number: type: string description: > 'Release of application that holds the OperationClient, which shall be connected via the link - from {$RequestForOldRelease.responses.body#release-number}' + from [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-s-000/layer-protocol=0/http-server-interface-1-0:http-server-interface-pac/http-server-interface-capability/release-number]' responses: '200': description: 'OperationClient connected with OperationServer' @@ -3016,7 +3020,9 @@ paths: default: $ref: '#/components/responses/responseForErroredServiceRequests' RequestForEmbedding: #for [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-http-c-*/layer-protocol=0/http-client-interface-1-0:http-client-interface-pac/http-client-interface-configuration/application-name]=={$request.body#application-name}: [/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-*/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-im-*-*-*-*-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] - description: 'This request is initiated by receiving /v1/update-operation-key of {$request.body#application-name}://v1/embed-yourself' + description: > + 'Request to be initiated by receiving /v1/update-operation-key of {$request.body#application-name}://v1/embed-yourself + Process shall be terminated, if /v1/update-operation-key is not received within time period defined in [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-000/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' post: parameters: - $ref: '#/components/parameters/user' @@ -3272,6 +3278,9 @@ paths: default: $ref: '#/components/responses/responseForErroredServiceRequests' CreateLinkForUpdatingOperationClient: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + description: > + 'Request to be initiated by receiving /v1/update-operation-key of {$request.body#application-name}://v1/update-client + Process shall be terminated, if /v1/update-operation-key is not received within time period defined in [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-000/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' post: parameters: - $ref: '#/components/parameters/user' @@ -3364,6 +3373,9 @@ paths: default: $ref: '#/components/responses/responseForErroredServiceRequests' CreateLinkForDisposingRemainders: #[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-protocol]://[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/domain-name or /core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-address/ip-address/ipv-4-address]:[/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-tcp-c-alt-2-0-1-000/layer-protocol=0/tcp-client-interface-1-0:tcp-client-interface-pac/tcp-client-interface-configuration/remote-port][/core-model-1-4:control-construct/logical-termination-point=ro-2-1-0-op-c-is-alt-2-0-1-000/layer-protocol=0/operation-client-interface-1-0:operation-client-interface-pac/operation-client-interface-configuration/operation-name] + description: > + 'Request to be initiated by receiving /v1/update-operation-key of {$request.body#application-name}://v1/update-operation-client + Process shall be terminated, if /v1/update-operation-key is not received within time period defined in [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-000/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' post: parameters: - $ref: '#/components/parameters/user' @@ -3470,7 +3482,9 @@ paths: application/json: schema: oneOf: - - description: 'IF {$CreateLinkForDisposingRemainders.responses.code}==200 => successfully-embedded==true' + - description: 'IF {$CreateLinkForDisposingRemainders.responses.code}==200 => successfully-embedded==true + Request to be initiated by receiving /v1/update-operation-key of {$request.body#application-name}://v1/dispose-remainders-of-deregistered-application + Process shall be terminated, if /v1/update-operation-key is not received within time period defined in [/core-model-1-4:control-construct/profile-collection/profile=ro-2-1-0-integer-p-000/integer-profile-1-0:integer-profile-pac/integer-profile-configuration/integer-value]' type: object properties: process-id: @@ -3529,6 +3543,23 @@ paths: description: > 'Only exists, if successfully-embedded==false from [RO_.concat{$*.*.responses.code} or RO_REQUEST_UNANSWERED]' + - description: 'Waiting exceeds maximumWaitTimeToReceiveOperationKey' + type: object + properties: + process-id: + type: string + description: > + 'Unique identifier of the request that allows associating the responses that are sent to the receiver service at TAR + from {$responses.body#process-id}' + successfully-embedded: + type: boolean + description: 'false, if waiting > maximumWaitTimeToReceiveOperationKey' + reason-of-failure: + type: string + enum: + - 'RO_MAXIMUM_WAIT_TIME_TO_RECEIVE_OPERATION_KEY_EXCEEDED' + description: > + 'Only exists, if successfully-embedded==false' responses: '204': description: 'Embedding status documented' diff --git a/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml b/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml index 72ac197..8ab078f 100644 --- a/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml +++ b/spec/diagrams/is010_regardApprovalStatusCausesSequence.plantuml @@ -168,10 +168,25 @@ note over ro ELSE end note +note left ro #Pink +OKM addressing RO://v1/update-operation-key +is indicating successful creation of the Link +IF waiting > maximumWaitTimeToReceiveOperationKey +end note +tarReceiver <- ro : {processId, successfully-embedded==false, reason-of-failure} + +note over ro +ELSE +end note + note over ro #orange IF (oldReleaseApplicationName != "OldRelease") AND (HttpClient for oldReleaseApplicationName exists in RO) RequestForUpdatingNewReleaseClient + +After receiving an updated operation-key +for the operation-client +oldReleaseApplicationName://v1/update-client-of-subsequent-release: end note ro -> orUpdateNR : {newApplicationName, releaseNumber, TCP/IP address} ro <-- orUpdateNR : {bequeathYourDataAndDieOperation, dataTransferOperationsList} @@ -186,6 +201,23 @@ note over ro ELSE end note +note over ro #LightCoral +RO does not know, whether ALT already +contains an updated NewRelease client at the OldRelease +end note + +note over ro #Pink +attempts = 0 +end note + +note over ro #Pink +mark#1 +end note + +note over ro #Pink +attempts = attempts + 1 +end note + note over ro #orange IF (oldReleaseApplicationName != "OldRelease") AND (HttpClient for oldReleaseApplicationName exists in RO) @@ -196,6 +228,21 @@ end note ro -> altAddClientToLink : { servingApplicationName == oldReleaseApplicationName,\n servingApplicationReleaseNumber == releaseNumber,\n operationName == /v1/bequeath-your-data-and-die,\n consumingApplicationName == requestBody.newApplicationName,\n consumingApplicationReleaseNumber == requestBody.releaseNumber } (apiKey) ro <-- altAddClientToLink : {client-successfully-added, reason-of-failure} +note left ro #Pink +IF ( (attempts<=maximumNumberOfAttemptsToCreateLink) + AND + (client-successfully-added==false) + AND + ( (reason-of-failure==ALT_SERVING_APPLICATION_NAME_UNKNOWN) + OR (reason-of-failure==ALT_SERVING_APPLICATION_RELEASE_NUMBER_UNKNOWN) + Return to mark#1 +) +end note + +note over ro +ELSE +end note + note left ro IF (NOT 200) OR (client-successfully-added==false) terminate process with response @@ -244,16 +291,22 @@ note over ro ELSE end note -note right ro #WhiteSmoke -Attention: -The next process step should be initiated by all Links from CreateLinkForBequeathYourData, CreateFurtherLinksForTransferringData and CreateLinkForPromptingEmbedding being actually created. -In other cases, the next step gets initiated by its OperationKey being updated. -Links from CreateLinkForBequeathYourData and CreateFurtherLinksForTransferringData will be created between the new application and the old release. -RO receives no indication of successful execution. -Consequently, RO might trigger the embedding process before all Links that are required for its successful execution have been created. +note left ro #Pink +OKM addressing RO://v1/update-operation-key +is indicating successful creation of the Link +IF waiting > maximumWaitTimeToReceiveOperationKey +end note +tarReceiver <- ro : {processId, successfully-embedded==false, reason-of-failure} + +note over ro +ELSE end note note over ro +After receiving an updated operation-key +for the operation-client +NewApp://v1/embed-yourself + RequestForEmbedding end note ro -> newApplication : {..., oldReleaseProtocol, oldReleaseAddress, oldReleasePort, ...} @@ -296,7 +349,22 @@ note over ro ELSE end note +note left ro #Pink +OKM addressing RO://v1/update-operation-key +is indicating successful creation of the Link +IF waiting > maximumWaitTimeToReceiveOperationKey +end note +tarReceiver <- ro : {processId, successfully-embedded==false, reason-of-failure} + +note over ro +ELSE +end note + note over ro +After receiving an updated operation-key +for the operation-client +NewApp://v1/update-client + CreateLinkForUpdatingOperationClient Request for automatically creating the Link: RO => NA://v1/update-operation-client @@ -314,7 +382,22 @@ note over ro ELSE end note +note left ro #Pink +OKM addressing RO://v1/update-operation-key +is indicating successful creation of the Link +IF waiting > maximumWaitTimeToReceiveOperationKey +end note +tarReceiver <- ro : {processId, successfully-embedded==false, reason-of-failure} + note over ro +ELSE +end note + +note over ro +After receiving an updated operation-key +for the operation-client +NewApp://v1/update-operation-client + CreateLinkForDisposingRemainders Request for automatically creating the Link: RO => NA://v1/dispose-remainders-of-deregistered-application @@ -331,6 +414,24 @@ tarReceiver <- ro : {processId, successfully-embedded==false, reason-of-failure note over ro ELSE end note + +note left ro #Pink +OKM addressing RO://v1/update-operation-key +is indicating successful creation of the Link +IF waiting > maximumWaitTimeToReceiveOperationKey +end note +tarReceiver <- ro : {processId, successfully-embedded==false, reason-of-failure} + +note over ro +ELSE +end note + +note over ro #Pink +After receiving an updated operation-key +for the operation-client +NewApp://v1/dispose-remainders-of-deregistered-application +end note + tarReceiver <- ro : {successfully-embedded==true } deactivate ro From 54c4572cbaa16cd2240fc0260e3b8ecd8b37dafb Mon Sep 17 00:00:00 2001 From: openBackhaul Date: Fri, 9 Feb 2024 08:47:51 +0100 Subject: [PATCH 5/6] Update readmes; add additionalProperties: false (fixes #542) --- spec/README.md | 3 + spec/RegistryOffice+config.json | 10 + spec/RegistryOffice+forwardings.yaml | 4 + spec/RegistryOffice.yaml | 1 + spec/diagrams/README.md | 9 + spec/reference.yml | 293 --------------------------- 6 files changed, 27 insertions(+), 293 deletions(-) create mode 100644 spec/diagrams/README.md delete mode 100644 spec/reference.yml diff --git a/spec/README.md b/spec/README.md index 40148cf..32db1da 100644 --- a/spec/README.md +++ b/spec/README.md @@ -1,5 +1,8 @@ # RegistryOffice Specification +### Diagrams +- [Collection of Diagrams](./diagrams) + ### ServiceList - [RegistryOffice+services](./RegistryOffice+services.yaml) diff --git a/spec/RegistryOffice+config.json b/spec/RegistryOffice+config.json index aaadc2d..a6416ed 100644 --- a/spec/RegistryOffice+config.json +++ b/spec/RegistryOffice+config.json @@ -5646,6 +5646,11 @@ "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-003" }, + { + "local-id": "101", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-bm-010" + }, { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", @@ -5676,6 +5681,11 @@ "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", "logical-termination-point": "ro-2-1-0-op-s-is-003" }, + { + "local-id": "101", + "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_INPUT", + "logical-termination-point": "ro-2-1-0-op-s-bm-010" + }, { "local-id": "200", "port-direction": "core-model-1-4:PORT_DIRECTION_TYPE_OUTPUT", diff --git a/spec/RegistryOffice+forwardings.yaml b/spec/RegistryOffice+forwardings.yaml index 9bb119e..0536694 100644 --- a/spec/RegistryOffice+forwardings.yaml +++ b/spec/RegistryOffice+forwardings.yaml @@ -1071,6 +1071,8 @@ forwardings: initiating-requests: - server-name: /v1/regard-updated-approval-status uuid: ro-2-1-0-op-s-is-003 + - server-name: /v1/update-operation-key + uuid: ro-2-1-0-op-s-bm-010 consequent-requests: - client-name: ALT://v1/add-operation-client-to-link uuid: ro-2-1-0-op-c-is-alt-2-0-1-000 @@ -1090,6 +1092,8 @@ forwardings: initiating-requests: - server-name: /v1/regard-updated-approval-status uuid: ro-2-1-0-op-s-is-003 + - server-name: /v1/update-operation-key + uuid: ro-2-1-0-op-s-bm-010 consequent-requests: - client-name: TAR://v1/document-embedding-status uuid: ro-2-1-0-op-c-im-tar-2-0-1-007 diff --git a/spec/RegistryOffice.yaml b/spec/RegistryOffice.yaml index 6ba4f8c..51ea14e 100644 --- a/spec/RegistryOffice.yaml +++ b/spec/RegistryOffice.yaml @@ -1646,6 +1646,7 @@ paths: - application-name - release-number - approval-status + additionalProperties: false properties: application-name: type: string diff --git a/spec/diagrams/README.md b/spec/diagrams/README.md new file mode 100644 index 0000000..83eb8e8 --- /dev/null +++ b/spec/diagrams/README.md @@ -0,0 +1,9 @@ +# RegistryOffice Diagrams +. +. +![DeregistrationNotification and DeRegistrationBroadcast](./is002_DeregisterApplication.png) +. +. +![BarringApplicationCausesDeregisteringOfApplication, ApprovingApplicationCausesConnectingWith, ApprovalNotification, ApprovingApplicationCausesPreparingTheEmbedding and ApprovingApplicationCausesConnectingToBroadcast](./is010_regardApprovalStatusCausesSequence.png) +. +. \ No newline at end of file diff --git a/spec/reference.yml b/spec/reference.yml deleted file mode 100644 index c42fa24..0000000 --- a/spec/reference.yml +++ /dev/null @@ -1,293 +0,0 @@ -servers: -## TODO: Search and replace all "xx" in the uuid by the official abbreviation of the ApplicationName - - operation-servers: - own-oam: - basic: - - operation-name: /v1/register-yourself - uuid: ro-2-1-0-op-s-bm-000 - - operation-name: /v1/embed-yourself - uuid: ro-2-1-0-op-s-bm-001 - - operation-name: /v1/redirect-service-request-information - uuid: ro-2-1-0-op-s-bm-002 - - operation-name: /v1/redirect-oam-request-information - uuid: ro-2-1-0-op-s-bm-003 - - operation-name: /v1/end-subscription - uuid: ro-2-1-0-op-s-bm-004 - - operation-name: /v1/inquire-oam-request-approvals - uuid: ro-2-1-0-op-s-bm-005 - - operation-name: /v1/update-client - uuid: ro-2-1-0-op-s-bm-007 - - operation-name: /v1/list-ltps-and-fcs - uuid: ro-2-1-0-op-s-bm-008 - - operation-name: /v1/redirect-topology-change-information - uuid: ro-2-1-0-op-s-bm-009 - - operation-name: /v1/update-operation-key - uuid: ro-2-1-0-op-s-bm-010 - - operation-name: /v1/update-operation-client - uuid: ro-2-1-0-op-s-bm-011 - individual: - - operation-name: /v1/bequeath-your-data-and-die - uuid: ro-2-1-0-op-s-im-000 - service: - basic: - - operation-name: /v1/start-application-in-generic-representation - uuid: ro-2-1-0-op-s-bs-000 - - operation-name: /v1/inform-about-application - uuid: ro-2-1-0-op-s-bs-001 - - operation-name: /v1/inform-about-application-in-generic-representation - uuid: ro-2-1-0-op-s-bs-002 - - operation-name: /v1/inform-about-release-history - uuid: ro-2-1-0-op-s-bs-003 - - operation-name: /v1/inform-about-release-history-in-generic-representation - uuid: ro-2-1-0-op-s-bs-004 - - operation-name: /docs - uuid: ro-2-1-0-op-s-bs-005 - individual: - ## TODO: Add Services specific to this application - http-server: - own-application-name: ## TODO: Add OwnApplicationName - own-release-number: ## TODO: Add OwnReleaseNumber (e.g. 1.0.0) - uuid: ro-2-1-0-http-s-000 - tcp-server: - - description: Without TLS layer - local-protocol: http - own-ip-address: ## TODO: Add OwnIpAddress - own-tcp-port: ## TODO: Add OwnTcpPort - uuid: ro-2-1-0-tcp-s-000 - - description: With TLS layer - local-protocol: https - own-ip-address: ## TODO: Add OwnIpAddress - own-tcp-port: ## TODO: Add OwnTcpPort - uuid: ro-2-1-0-tcp-s-001 - - -clients: - - - http-client: - application-name: ElasticSearch - release-number: 1.0.0 - uuid: ro-2-1-0-http-c-es-1-0-0-000 - tcp-client: - remote-protocol: http - ip-address: 1.1.3.15 - tcp-port: 3015 - uuid: ro-2-1-0-tcp-c-es-1-0-0-000 - elasticsearch-client: - uuid: ro-2-1-0-es-c-es-1-0-0-000 - index-alias: ## TODO: Add IndexAlias - - - http-client: - application-name: OldRelease - release-number: ## TODO: Add Number of Release to be substituted (e.g. 1.0.0) - uuid: ro-2-1-0-http-c-or-1-0-0-000 - tcp-client: - remote-protocol: http - ip-address: ## TODO: Add IpAddress of Release to be substituted - tcp-port: ## TODO: Add TcpPort of Release to be substituted - uuid: ro-2-1-0-tcp-c-or-1-0-0-000 - operation-clients: - own-oam: - basic: - - operation-name: /v1/bequeath-your-data-and-die - uuid: ro-2-1-0-op-c-bm-or-1-0-0-000 - individual: - service: - basic: - individual: - - - http-client: - application-name: NewRelease - release-number: ## TODO: Add Number of substituting Release (e.g. 1.0.1) - uuid: ro-2-1-0-http-c-nr-1-0-0-000 - tcp-client: - remote-protocol: http - ip-address: ## TODO: Add IpAddress of substituting Release - tcp-port: ## TODO: Add TcpPort of substituting Release - uuid: ro-2-1-0-tcp-c-nr-1-0-0-000 - operation-clients: - own-oam: - basic: - individual: - ## TODO: Add Services required for handing-over configuration or data during update - service: - basic: - individual: - - - http-client: - application-name: RegistryOffice - release-number: 2.0.1 - uuid: ro-2-1-0-http-c-ro-2-0-1-000 - tcp-client: - remote-protocol: http - ip-address: 1.1.3.8 - tcp-port: 3008 - uuid: ro-2-1-0-tcp-c-ro-2-0-1-000 - operation-clients: - own-oam: - basic: - - operation-name: /v1/register-application - uuid: ro-2-1-0-op-c-bm-ro-2-0-1-000 - - operation-name: /v1/relay-server-replacement - uuid: ro-2-1-0-op-c-bm-ro-2-0-1-001 - - operation-name: /v1/deregister-application - uuid: ro-2-1-0-op-c-bm-ro-2-0-1-002 - - operation-name: /v1/relay-operation-update - uuid: ro-2-1-0-op-c-bm-ro-2-0-1-003 - individual: - service: - basic: - ## TODO: Add Clients specific to this application, but addressing all other applications - individual: - ## TODO: Add Clients specific to this application - - - http-client: - application-name: TypeApprovalRegister - release-number: 2.0.1 - uuid: ro-2-1-0-http-c-tar-2-0-1-000 - tcp-client: - remote-protocol: http - ip-address: 1.1.3.9 - tcp-port: 3009 - uuid: ro-2-1-0-tcp-c-tar-2-0-1-000 - operation-clients: - own-oam: - basic: - individual: - service: - basic: - ## TODO: Add Clients specific to this application, but addressing all other applications - individual: - ## TODO: Add Clients specific to this application - - - http-client: - application-name: ExecutionAndTraceLog - release-number: 2.0.1 - uuid: ro-2-1-0-http-c-eatl-2-0-1-000 - tcp-client: - remote-protocol: http - ip-address: 1.1.3.10 - tcp-port: 3010 - uuid: ro-2-1-0-tcp-c-eatl-2-0-1-000 - operation-clients: - own-oam: - basic: - - operation-name: /v1/record-service-request - uuid: ro-2-1-0-op-c-bs-eatl-2-0-1-000 - individual: - service: - basic: - ## TODO: Add Clients specific to this application, but addressing all other applications - individual: - ## TODO: Add Clients specific to this application - - - http-client: - application-name: OamLog - release-number: 2.0.1 - uuid: ro-2-1-0-http-c-ol-2-0-1-000 - tcp-client: - remote-protocol: http - ip-address: 1.1.3.11 - tcp-port: 3011 - uuid: ro-2-1-0-tcp-c-ol-2-0-1-000 - operation-clients: - own-oam: - basic: - - operation-name: /v1/record-oam-request - uuid: ro-2-1-0-op-c-bs-ol-2-0-1-000 - individual: - service: - basic: - ## TODO: Add Clients specific to this application, but addressing all other applications - individual: - ## TODO: Add Clients specific to this application - - - http-client: - application-name: AdministratorAdministration - release-number: 2.0.1 - uuid: ro-2-1-0-http-c-aa-2-0-1-000 - tcp-client: - remote-protocol: http - ip-address: 1.1.3.12 - tcp-port: 3012 - uuid: ro-2-1-0-tcp-c-aa-2-0-1-000 - operation-clients: - own-oam: - basic: - - operation-name: /v1/approve-oam-request - uuid: ro-2-1-0-op-c-bs-aa-2-0-1-000 - individual: - service: - basic: - ## TODO: Add Clients specific to this application, but addressing all other applications - individual: - ## TODO: Add Clients specific to this application - - - http-client: - application-name: ApplicationLayerTopology - release-number: 2.0.1 - uuid: ro-2-1-0-http-c-alt-2-0-1-000 - tcp-client: - remote-protocol: http - ip-address: 1.1.3.13 - tcp-port: 3013 - uuid: ro-2-1-0-tcp-c-alt-2-0-1-000 - operation-clients: - own-oam: - basic: - - operation-name: /v1/update-all-ltps-and-fcs - uuid: ro-2-1-0-op-c-bm-alt-2-0-1-000 - - operation-name: /v1/update-ltp - uuid: ro-2-1-0-op-c-bm-alt-2-0-1-001 - - operation-name: /v1/delete-ltp-and-dependents - uuid: ro-2-1-0-op-c-bm-alt-2-0-1-002 - - operation-name: /v1/update-fc - uuid: ro-2-1-0-op-c-bm-alt-2-0-1-003 - - operation-name: /v1/update-fc-port - uuid: ro-2-1-0-op-c-bm-alt-2-0-1-004 - - operation-name: /v1/delete-fc-port - uuid: ro-2-1-0-op-c-bm-alt-2-0-1-005 - individual: - service: - basic: - ## TODO: Add Clients specific to this application, but addressing all other applications - individual: - ## TODO: Add Clients specific to this application - - - http-client: - application-name: OperationKeyManagement - release-number: 2.0.1 - uuid: ro-2-1-0-http-c-okm-2-0-1-000 - tcp-client: - remote-protocol: http - ip-address: 1.1.3.14 - tcp-port: 3014 - uuid: ro-2-1-0-tcp-c-okm-2-0-1-000 - operation-clients: - own-oam: - basic: - individual: - service: - basic: - ## TODO: Add Clients specific to this application, but addressing all other applications - individual: - ## TODO: Add Clients specific to this application - - - http-client: - application-name: ## TODO: Add Name of application to be addressed - release-number: ## TODO: Add Release number of application to be addressed - uuid: ## TODO: Add UUID of the HttpClient - tcp-client: - remote-protocol: http - ip-address: ## TODO: Add IP address of application to be addressed - tcp-port: ## TODO: Add TCP port of application to be addressed - uuid: ## TODO: Add UUID of the TcpClient - operation-clients: - own-oam: - basic: - individual: - service: - basic: - ## TODO: Add Clients specific to this application, but addressing all other applications - individual: - ## TODO: Add Clients specific to this application \ No newline at end of file From 67f30320364b83c871ad210d9d107e7ca5169d28 Mon Sep 17 00:00:00 2001 From: openBackhaul Date: Mon, 12 Feb 2024 11:27:42 +0100 Subject: [PATCH 6/6] Fix linting error --- spec/RegistryOffice+forwardings.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/spec/RegistryOffice+forwardings.yaml b/spec/RegistryOffice+forwardings.yaml index 0536694..f6a51a7 100644 --- a/spec/RegistryOffice+forwardings.yaml +++ b/spec/RegistryOffice+forwardings.yaml @@ -854,7 +854,6 @@ forwardings: - server-name: /v1/regard-updated-approval-status uuid: ro-2-1-0-op-s-is-003 consequent-requests: - - forwarding-name: ApprovingApplicationCausesPreparingTheEmbedding.RequestForOldRelease uuid: ro-2-1-0-op-fc-is-042