From 76fd51e434abe5ae4146c945aed56a14b6421532 Mon Sep 17 00:00:00 2001 From: Lukas Priester Date: Fri, 30 Jun 2023 14:55:42 +0200 Subject: [PATCH 01/14] Add files for SWCR --- file-formats/swcr/README.md | 5 + .../examples/z_aff_example_swcr.swcr.json | 15 +++ file-formats/swcr/swcr-v1.json | 107 ++++++++++++++++++ .../swcr/type/zif_aff_swcr_v1.intf.abap | 57 ++++++++++ .../swcr/type/zif_aff_swcr_v1.intf.json | 7 ++ 5 files changed, 191 insertions(+) create mode 100644 file-formats/swcr/README.md create mode 100644 file-formats/swcr/examples/z_aff_example_swcr.swcr.json create mode 100644 file-formats/swcr/swcr-v1.json create mode 100644 file-formats/swcr/type/zif_aff_swcr_v1.intf.abap create mode 100644 file-formats/swcr/type/zif_aff_swcr_v1.intf.json diff --git a/file-formats/swcr/README.md b/file-formats/swcr/README.md new file mode 100644 index 000000000..90a5de558 --- /dev/null +++ b/file-formats/swcr/README.md @@ -0,0 +1,5 @@ +# SWCR File Format + +File | Cardinality | Definition | Schema | Example +:--- | :--- | :--- | :--- | :--- +`.swcr.json` | 1 | [`zif_aff_swcr_v1.intf.abap`](./type/zif_aff_swcr_v1.intf.abap) | [`swcr-v1.json`](./swcr-v1.json) | [`z_aff_example_swcr.swcr.json`](./examples/z_aff_example_swcr.swcr.json) diff --git a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json new file mode 100644 index 000000000..1b03639dd --- /dev/null +++ b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json @@ -0,0 +1,15 @@ +{ + "header": { + "abapLanguageVersion": "cloudDevelopment" + }, + "relations": [ + { + "relatedSoftwareComponent": "/PARTNER/APPLICATION", + "relationType": "unrestricted" + }, + { + "relatedSoftwareComponent": "ZCUSTOM_DEVELOPMENT", + "relationType": "keyUserExtensibilityUsage" + } + ] +} \ No newline at end of file diff --git a/file-formats/swcr/swcr-v1.json b/file-formats/swcr/swcr-v1.json new file mode 100644 index 000000000..0ec6a3cb9 --- /dev/null +++ b/file-formats/swcr/swcr-v1.json @@ -0,0 +1,107 @@ +{ + "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/swcr/swcr-v1.json", + "title": "Software Component Relations", + "description": "Software Component Relations", + "type": "object", + "properties": { + "formatVersion": { + "title": "Format Version", + "description": "Format version", + "type": "string", + "const": "1" + }, + "header": { + "title": "Header", + "description": "Header", + "type": "object", + "properties": { + "description": { + "title": "Description", + "description": "Description of the ABAP object", + "type": "string", + "maxLength": 60 + }, + "originalLanguage": { + "title": "Original Language", + "description": "Original language of the ABAP object", + "type": "string", + "minLength": 2, + "maxLength": 2, + "pattern": "^[a-z]+$" + }, + "abapLanguageVersion": { + "title": "ABAP Language Version", + "description": "ABAP language version", + "type": "string", + "enum": [ + "standard", + "cloudDevelopment" + ], + "enumTitles": [ + "Standard", + "ABAP Cloud Development" + ], + "enumDescriptions": [ + "Standard", + "ABAP cloud development" + ], + "default": "standard" + } + }, + "additionalProperties": false, + "required": [ + "description", + "originalLanguage" + ] + }, + "relations": { + "title": "Relations", + "description": "Relations", + "type": "array", + "uniqueItems": true, + "items": { + "title": "Relation", + "description": "Relation", + "type": "object", + "properties": { + "relatedSoftwareComponent": { + "title": "Related Software Component", + "description": "Related Software Component", + "type": "string", + "maxLength": 30 + }, + "relationType": { + "title": "Relation Type", + "description": "Relation Type", + "type": "string", + "enum": [ + "unrestricted", + "keyUserExtensibilityUsage" + ], + "enumTitles": [ + "Unrestricted Usage", + "Key User Extensibility Usage" + ], + "enumDescriptions": [ + "Unrestricted Usage", + "Key User Extensibility Usage" + ] + } + }, + "additionalProperties": false, + "required": [ + "relatedSoftwareComponent", + "relationType" + ] + } + } + }, + "additionalProperties": false, + "required": [ + "formatVersion", + "header", + "relations" + ] +} diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap new file mode 100644 index 000000000..3e13e360a --- /dev/null +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -0,0 +1,57 @@ +INTERFACE zif_aff_swcr_v1 + PUBLIC. + + "!

Relation Type

+ "! Relation Type + "! $values {@link zif_aff_swcr_v1.data:co_relation_type} + TYPES ty_relation_type TYPE c LENGTH 1. + + CONSTANTS: + "!

Relation Type

+ "! Relation Type + BEGIN OF co_relation_type, + "!

Unrestricted Usage

+ "! Unrestricted Usage + unrestricted TYPE ty_relation_type VALUE '1', + "!

Key User Extensibility Usage

+ "! Key User Extensibility Usage + key_user_extensibility_usage TYPE ty_relation_type VALUE '2', + END OF co_relation_type. + + TYPES: + "!

Relation

+ "! Relation + BEGIN OF ty_relation, + "!

Related Software Component

+ "! Related Software Component + "! $required + related_software_component TYPE c LENGTH 30, + "!

Relation Type

+ "! Relation Type + "! $required + relation_type TYPE ty_relation_type, + END OF ty_relation. + + "!

Relations

+ "! Relations + TYPES ty_relations TYPE SORTED TABLE OF ty_relation WITH UNIQUE KEY related_software_component. + + TYPES: + "!

Software Component Relations

+ "! Software Component Relations + BEGIN OF ty_main, + "!

Format Version

+ "! Format version + "! $required + format_version TYPE zif_aff_types_v1=>ty_format_version, + "!

Header

+ "! Header + "! $required + header TYPE zif_aff_types_v1=>ty_header_60_cloud, + "!

Relations

+ "! Relations + "! $required + relations TYPE ty_relations, + END OF ty_main. + +ENDINTERFACE. diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.json b/file-formats/swcr/type/zif_aff_swcr_v1.intf.json new file mode 100644 index 000000000..5bd6369b0 --- /dev/null +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.json @@ -0,0 +1,7 @@ +{ + "formatVersion": "1", + "header": { + "description": "AFF Type for SWCR (Software Component Relations)", + "originalLanguage": "en" + } +} From 0317e15dcc80da673e007a45d4bc65f32d903f44 Mon Sep 17 00:00:00 2001 From: Lukas Priester Date: Tue, 4 Jul 2023 15:47:41 +0200 Subject: [PATCH 02/14] Update AFF for SWCR --- .../swcr/examples/z_aff_example_swcr.swcr.json | 2 ++ file-formats/swcr/swcr-v1.json | 12 ++++++------ file-formats/swcr/type/zif_aff_swcr_v1.intf.abap | 10 +++++----- 3 files changed, 13 insertions(+), 11 deletions(-) diff --git a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json index 1b03639dd..8f7771715 100644 --- a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json +++ b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json @@ -1,5 +1,7 @@ { + "formatVersion": "1", "header": { + "originalLanguage": "en", "abapLanguageVersion": "cloudDevelopment" }, "relations": [ diff --git a/file-formats/swcr/swcr-v1.json b/file-formats/swcr/swcr-v1.json index 0ec6a3cb9..097fc5e27 100644 --- a/file-formats/swcr/swcr-v1.json +++ b/file-formats/swcr/swcr-v1.json @@ -62,17 +62,17 @@ "type": "array", "uniqueItems": true, "items": { - "title": "Relation", - "description": "Relation", + "title": "Related Software Component", + "description": "Related Software Component", "type": "object", "properties": { - "relatedSoftwareComponent": { + "softwareComponent": { "title": "Related Software Component", "description": "Related Software Component", "type": "string", "maxLength": 30 }, - "relationType": { + "type": { "title": "Relation Type", "description": "Relation Type", "type": "string", @@ -92,8 +92,8 @@ }, "additionalProperties": false, "required": [ - "relatedSoftwareComponent", - "relationType" + "softwareComponent", + "type" ] } } diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap index 3e13e360a..6c488d7dd 100644 --- a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -19,22 +19,22 @@ INTERFACE zif_aff_swcr_v1 END OF co_relation_type. TYPES: - "!

Relation

- "! Relation + "!

Related Software Component

+ "! Related Software Component BEGIN OF ty_relation, "!

Related Software Component

"! Related Software Component "! $required - related_software_component TYPE c LENGTH 30, + software_component TYPE c LENGTH 30, "!

Relation Type

"! Relation Type "! $required - relation_type TYPE ty_relation_type, + type TYPE ty_relation_type, END OF ty_relation. "!

Relations

"! Relations - TYPES ty_relations TYPE SORTED TABLE OF ty_relation WITH UNIQUE KEY related_software_component. + TYPES ty_relations TYPE SORTED TABLE OF ty_relation WITH UNIQUE KEY software_component. TYPES: "!

Software Component Relations

From ec5ee0d3c6d10f2e1444c5d259d1bb1a712364bf Mon Sep 17 00:00:00 2001 From: Michael Schneider Date: Wed, 5 Jul 2023 09:18:43 +0200 Subject: [PATCH 03/14] Remove description from header (no reuse) --- .../swcr/examples/z_aff_example_swcr.swcr.json | 2 +- file-formats/swcr/type/zif_aff_swcr_v1.intf.abap | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json index 8f7771715..8a5f45256 100644 --- a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json +++ b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json @@ -1,7 +1,7 @@ { "formatVersion": "1", "header": { - "originalLanguage": "en", + "originalLanguage": "en", "abapLanguageVersion": "cloudDevelopment" }, "relations": [ diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap index 6c488d7dd..e02ba86ec 100644 --- a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -1,6 +1,15 @@ INTERFACE zif_aff_swcr_v1 PUBLIC. + TYPES: + "!

Header

+ "! Header + BEGIN OF ty_header, + "! $required + original_language TYPE zif_aff_types_v1=>ty_original_language, + abap_language_version TYPE zif_aff_types_v1=>ty_abap_language_version_cloud, + END OF ty_header. + "!

Relation Type

"! Relation Type "! $values {@link zif_aff_swcr_v1.data:co_relation_type} @@ -47,7 +56,7 @@ INTERFACE zif_aff_swcr_v1 "!

Header

"! Header "! $required - header TYPE zif_aff_types_v1=>ty_header_60_cloud, + header TYPE ty_header, "!

Relations

"! Relations "! $required From 3885970627049ccc25f9877d567265a43b06696c Mon Sep 17 00:00:00 2001 From: Michael Schneider Date: Wed, 5 Jul 2023 09:27:13 +0200 Subject: [PATCH 04/14] Fix spaces in example --- file-formats/swcr/examples/z_aff_example_swcr.swcr.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json index 8a5f45256..a70569917 100644 --- a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json +++ b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json @@ -1,7 +1,7 @@ { "formatVersion": "1", "header": { - "originalLanguage": "en", + "originalLanguage": "en", "abapLanguageVersion": "cloudDevelopment" }, "relations": [ From 07851b73946e12895f77777293bd19ac6f9a2cda Mon Sep 17 00:00:00 2001 From: Michael Schneider Date: Wed, 5 Jul 2023 09:27:34 +0200 Subject: [PATCH 05/14] Remove description from JSON schema --- file-formats/swcr/swcr-v1.json | 6 ------ 1 file changed, 6 deletions(-) diff --git a/file-formats/swcr/swcr-v1.json b/file-formats/swcr/swcr-v1.json index 097fc5e27..4e5735843 100644 --- a/file-formats/swcr/swcr-v1.json +++ b/file-formats/swcr/swcr-v1.json @@ -17,12 +17,6 @@ "description": "Header", "type": "object", "properties": { - "description": { - "title": "Description", - "description": "Description of the ABAP object", - "type": "string", - "maxLength": 60 - }, "originalLanguage": { "title": "Original Language", "description": "Original language of the ABAP object", From d1b0cc69d310c70fb84b504d92ea6f2c686eae9d Mon Sep 17 00:00:00 2001 From: Michael Schneider Date: Wed, 5 Jul 2023 09:32:46 +0200 Subject: [PATCH 06/14] Add line ending --- file-formats/swcr/examples/z_aff_example_swcr.swcr.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json index a70569917..828f74f9d 100644 --- a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json +++ b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json @@ -14,4 +14,4 @@ "relationType": "keyUserExtensibilityUsage" } ] -} \ No newline at end of file +} From 10c0001b41c97f8d5d4d9e78ef2b97b95cc9a9ca Mon Sep 17 00:00:00 2001 From: Michael Schneider Date: Wed, 5 Jul 2023 09:34:52 +0200 Subject: [PATCH 07/14] Remove description as required field --- file-formats/swcr/swcr-v1.json | 1 - 1 file changed, 1 deletion(-) diff --git a/file-formats/swcr/swcr-v1.json b/file-formats/swcr/swcr-v1.json index 4e5735843..d37b4544e 100644 --- a/file-formats/swcr/swcr-v1.json +++ b/file-formats/swcr/swcr-v1.json @@ -46,7 +46,6 @@ }, "additionalProperties": false, "required": [ - "description", "originalLanguage" ] }, From a88a89fa2906af93ca23fd256ad72fbdf9ff7e16 Mon Sep 17 00:00:00 2001 From: Michael Schneider Date: Wed, 5 Jul 2023 09:55:08 +0200 Subject: [PATCH 08/14] Update example to new schema --- file-formats/swcr/examples/z_aff_example_swcr.swcr.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json index 828f74f9d..7d5a4b75c 100644 --- a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json +++ b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json @@ -6,12 +6,12 @@ }, "relations": [ { - "relatedSoftwareComponent": "/PARTNER/APPLICATION", - "relationType": "unrestricted" + "softwareComponent": "/PARTNER/APPLICATION", + "type": "unrestricted" }, { - "relatedSoftwareComponent": "ZCUSTOM_DEVELOPMENT", - "relationType": "keyUserExtensibilityUsage" + "softwareComponent": "ZCUSTOM_DEVELOPMENT", + "type": "keyUserExtensibilityUsage" } ] } From 1c44d311570eb42f2985dd1d7f49e88e5eb46487 Mon Sep 17 00:00:00 2001 From: Lukas Priester Date: Wed, 5 Jul 2023 14:21:55 +0200 Subject: [PATCH 09/14] Add ABAP for Key User as ALV option for SWCR --- file-formats/swcr/swcr-v1.json | 3 +++ file-formats/swcr/type/zif_aff_swcr_v1.intf.abap | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/file-formats/swcr/swcr-v1.json b/file-formats/swcr/swcr-v1.json index d37b4544e..329e6e951 100644 --- a/file-formats/swcr/swcr-v1.json +++ b/file-formats/swcr/swcr-v1.json @@ -31,14 +31,17 @@ "type": "string", "enum": [ "standard", + "keyUser", "cloudDevelopment" ], "enumTitles": [ "Standard", + "ABAP for Key Users", "ABAP Cloud Development" ], "enumDescriptions": [ "Standard", + "ABAP for key user extensibility", "ABAP cloud development" ], "default": "standard" diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap index e02ba86ec..5892c1de2 100644 --- a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -7,7 +7,7 @@ INTERFACE zif_aff_swcr_v1 BEGIN OF ty_header, "! $required original_language TYPE zif_aff_types_v1=>ty_original_language, - abap_language_version TYPE zif_aff_types_v1=>ty_abap_language_version_cloud, + abap_language_version TYPE zif_aff_types_v1=>ty_abap_language_version, END OF ty_header. "!

Relation Type

From 07205aebc3cb980c4562855dc48e87d7f2e8d936 Mon Sep 17 00:00:00 2001 From: Lukas Priester Date: Mon, 17 Jul 2023 17:40:17 +0200 Subject: [PATCH 10/14] Update AFF for SWCR --- .../examples/z_aff_example_swcr.swcr.json | 15 ++-- file-formats/swcr/swcr-v1.json | 62 ++++++++-------- .../swcr/type/zif_aff_swcr_v1.intf.abap | 71 +++++++++---------- 3 files changed, 74 insertions(+), 74 deletions(-) diff --git a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json index 7d5a4b75c..81c5c08a5 100644 --- a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json +++ b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json @@ -1,17 +1,20 @@ { "formatVersion": "1", "header": { - "originalLanguage": "en", + "originalLanguage": "en", "abapLanguageVersion": "cloudDevelopment" }, - "relations": [ + "permissions": [ { - "softwareComponent": "/PARTNER/APPLICATION", - "type": "unrestricted" + "softwareComponent": "/PARTNER_1/SOLUTION_1" }, { - "softwareComponent": "ZCUSTOM_DEVELOPMENT", - "type": "keyUserExtensibilityUsage" + "softwareComponent": "/PARTNER_1/SOLUTION_2" + } + ], + "dependencies": [ + { + "softwareComponent": "/PARTNER_1/KEY_USER" } ] } diff --git a/file-formats/swcr/swcr-v1.json b/file-formats/swcr/swcr-v1.json index 329e6e951..1cd4903b9 100644 --- a/file-formats/swcr/swcr-v1.json +++ b/file-formats/swcr/swcr-v1.json @@ -8,7 +8,7 @@ "properties": { "formatVersion": { "title": "Format Version", - "description": "Format version", + "description": "Format Version", "type": "string", "const": "1" }, @@ -52,44 +52,47 @@ "originalLanguage" ] }, - "relations": { - "title": "Relations", - "description": "Relations", + "permissions": { + "title": "Access Permissions", + "description": "The Software Component Grants Access Permission to the Specified Software Components", "type": "array", - "uniqueItems": true, "items": { - "title": "Related Software Component", - "description": "Related Software Component", + "title": "Access Permission", + "description": "Access Permission", "type": "object", "properties": { "softwareComponent": { - "title": "Related Software Component", - "description": "Related Software Component", + "title": "Software Component", + "description": "Software Component", "type": "string", "maxLength": 30 - }, - "type": { - "title": "Relation Type", - "description": "Relation Type", + } + }, + "additionalProperties": false, + "required": [ + "softwareComponent" + ] + } + }, + "dependencies": { + "title": "Dependencies", + "description": "The Software Component Depends on the Specified Software Components", + "type": "array", + "items": { + "title": "Dependency", + "description": "Dependency", + "type": "object", + "properties": { + "softwareComponent": { + "title": "Software Component", + "description": "Software Component", "type": "string", - "enum": [ - "unrestricted", - "keyUserExtensibilityUsage" - ], - "enumTitles": [ - "Unrestricted Usage", - "Key User Extensibility Usage" - ], - "enumDescriptions": [ - "Unrestricted Usage", - "Key User Extensibility Usage" - ] + "maxLength": 30 } }, "additionalProperties": false, "required": [ - "softwareComponent", - "type" + "softwareComponent" ] } } @@ -97,7 +100,6 @@ "additionalProperties": false, "required": [ "formatVersion", - "header", - "relations" + "header" ] -} +} \ No newline at end of file diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap index 5892c1de2..f9400971f 100644 --- a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -1,4 +1,4 @@ -INTERFACE zif_aff_swcr_v1 +INTERFACE if_aff_swcr_v1 PUBLIC. TYPES: @@ -6,61 +6,56 @@ INTERFACE zif_aff_swcr_v1 "! Header BEGIN OF ty_header, "! $required - original_language TYPE zif_aff_types_v1=>ty_original_language, - abap_language_version TYPE zif_aff_types_v1=>ty_abap_language_version, + original_language TYPE if_aff_types_v1=>ty_original_language, + abap_language_version TYPE if_aff_types_v1=>ty_abap_language_version, END OF ty_header. - "!

Relation Type

- "! Relation Type - "! $values {@link zif_aff_swcr_v1.data:co_relation_type} - TYPES ty_relation_type TYPE c LENGTH 1. + TYPES: + "!

Access Permission

+ "! Access Permission + BEGIN OF ty_permission, + "!

Software Component

+ "! Software Component + "! $required + software_component TYPE c LENGTH 30, + END OF ty_permission. - CONSTANTS: - "!

Relation Type

- "! Relation Type - BEGIN OF co_relation_type, - "!

Unrestricted Usage

- "! Unrestricted Usage - unrestricted TYPE ty_relation_type VALUE '1', - "!

Key User Extensibility Usage

- "! Key User Extensibility Usage - key_user_extensibility_usage TYPE ty_relation_type VALUE '2', - END OF co_relation_type. + "!

Access Permissions

+ "! Access Permissions + TYPES ty_permissions TYPE STANDARD TABLE OF ty_permission WITH DEFAULT KEY. TYPES: - "!

Related Software Component

- "! Related Software Component - BEGIN OF ty_relation, - "!

Related Software Component

- "! Related Software Component + "!

Dependency

+ "! Dependency + BEGIN OF ty_dependency, + "!

Software Component

+ "! Software Component "! $required software_component TYPE c LENGTH 30, - "!

Relation Type

- "! Relation Type - "! $required - type TYPE ty_relation_type, - END OF ty_relation. + END OF ty_dependency. - "!

Relations

- "! Relations - TYPES ty_relations TYPE SORTED TABLE OF ty_relation WITH UNIQUE KEY software_component. + "!

Dependencies

+ "! Dependencies + TYPES ty_dependencies TYPE STANDARD TABLE OF ty_dependency WITH DEFAULT KEY. TYPES: "!

Software Component Relations

"! Software Component Relations BEGIN OF ty_main, "!

Format Version

- "! Format version + "! Format Version "! $required - format_version TYPE zif_aff_types_v1=>ty_format_version, + format_version TYPE if_aff_types_v1=>ty_format_version, "!

Header

"! Header "! $required header TYPE ty_header, - "!

Relations

- "! Relations - "! $required - relations TYPE ty_relations, + "!

Access Permissions

+ "! The Software Component Grants Access Permission to the Specified Software Components + permissions TYPE ty_permissions, + "!

Dependencies

+ "! The Software Component Depends on the Specified Software Components + dependencies TYPE ty_dependencies, END OF ty_main. -ENDINTERFACE. +ENDINTERFACE. \ No newline at end of file From f44f79978a9dac018719d779d6824eca1cb03d56 Mon Sep 17 00:00:00 2001 From: Lukas Priester Date: Mon, 17 Jul 2023 17:46:15 +0200 Subject: [PATCH 11/14] React to abapLint --- file-formats/swcr/type/zif_aff_swcr_v1.intf.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap index f9400971f..1b4aface0 100644 --- a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -1,4 +1,4 @@ -INTERFACE if_aff_swcr_v1 +INTERFACE zif_aff_swcr_v1 PUBLIC. TYPES: From e73f7ba258ecd00c746ef99fd55fa2138c8e3095 Mon Sep 17 00:00:00 2001 From: Lukas Priester Date: Mon, 17 Jul 2023 17:48:23 +0200 Subject: [PATCH 12/14] React to abapLint --- file-formats/swcr/type/zif_aff_swcr_v1.intf.abap | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap index 1b4aface0..3706cf099 100644 --- a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -6,8 +6,8 @@ INTERFACE zif_aff_swcr_v1 "! Header BEGIN OF ty_header, "! $required - original_language TYPE if_aff_types_v1=>ty_original_language, - abap_language_version TYPE if_aff_types_v1=>ty_abap_language_version, + original_language TYPE zif_aff_types_v1=>ty_original_language, + abap_language_version TYPE zif_aff_types_v1=>ty_abap_language_version, END OF ty_header. TYPES: @@ -45,7 +45,7 @@ INTERFACE zif_aff_swcr_v1 "!

Format Version

"! Format Version "! $required - format_version TYPE if_aff_types_v1=>ty_format_version, + format_version TYPE zif_aff_types_v1=>ty_format_version, "!

Header

"! Header "! $required From e6114ba0e66e0f63a69983ffd7c32e3cbf73f576 Mon Sep 17 00:00:00 2001 From: Lukas Priester Date: Mon, 17 Jul 2023 17:57:35 +0200 Subject: [PATCH 13/14] React to checks --- file-formats/swcr/examples/z_aff_example_swcr.swcr.json | 2 +- file-formats/swcr/swcr-v1.json | 2 +- file-formats/swcr/type/zif_aff_swcr_v1.intf.abap | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json index 81c5c08a5..b67b2c58d 100644 --- a/file-formats/swcr/examples/z_aff_example_swcr.swcr.json +++ b/file-formats/swcr/examples/z_aff_example_swcr.swcr.json @@ -1,7 +1,7 @@ { "formatVersion": "1", "header": { - "originalLanguage": "en", + "originalLanguage": "en", "abapLanguageVersion": "cloudDevelopment" }, "permissions": [ diff --git a/file-formats/swcr/swcr-v1.json b/file-formats/swcr/swcr-v1.json index 1cd4903b9..73a632f19 100644 --- a/file-formats/swcr/swcr-v1.json +++ b/file-formats/swcr/swcr-v1.json @@ -102,4 +102,4 @@ "formatVersion", "header" ] -} \ No newline at end of file +} diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap index 3706cf099..3db7739bb 100644 --- a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -58,4 +58,4 @@ INTERFACE zif_aff_swcr_v1 dependencies TYPE ty_dependencies, END OF ty_main. -ENDINTERFACE. \ No newline at end of file +ENDINTERFACE. From 7ad56f831a58e144a515837a7cc13d4ae2efca1e Mon Sep 17 00:00:00 2001 From: Lukas Priester Date: Wed, 2 Aug 2023 09:10:31 +0200 Subject: [PATCH 14/14] Fix issues from UX Cross Check --- file-formats/swcr/swcr-v1.json | 14 +++++++------- file-formats/swcr/type/zif_aff_swcr_v1.intf.abap | 16 ++++++++-------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/file-formats/swcr/swcr-v1.json b/file-formats/swcr/swcr-v1.json index 73a632f19..5dc0bb98d 100644 --- a/file-formats/swcr/swcr-v1.json +++ b/file-formats/swcr/swcr-v1.json @@ -3,12 +3,12 @@ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/swcr/swcr-v1.json", "title": "Software Component Relations", - "description": "Software Component Relations", + "description": "Software component relations", "type": "object", "properties": { "formatVersion": { "title": "Format Version", - "description": "Format Version", + "description": "Format version", "type": "string", "const": "1" }, @@ -54,16 +54,16 @@ }, "permissions": { "title": "Access Permissions", - "description": "The Software Component Grants Access Permission to the Specified Software Components", + "description": "The software component grants access permission to the specified software components", "type": "array", "items": { "title": "Access Permission", - "description": "Access Permission", + "description": "Access permission", "type": "object", "properties": { "softwareComponent": { "title": "Software Component", - "description": "Software Component", + "description": "Software component", "type": "string", "maxLength": 30 } @@ -76,7 +76,7 @@ }, "dependencies": { "title": "Dependencies", - "description": "The Software Component Depends on the Specified Software Components", + "description": "The software component depends on the specified software components", "type": "array", "items": { "title": "Dependency", @@ -85,7 +85,7 @@ "properties": { "softwareComponent": { "title": "Software Component", - "description": "Software Component", + "description": "Software component", "type": "string", "maxLength": 30 } diff --git a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap index 3db7739bb..be8021ead 100644 --- a/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap +++ b/file-formats/swcr/type/zif_aff_swcr_v1.intf.abap @@ -12,16 +12,16 @@ INTERFACE zif_aff_swcr_v1 TYPES: "!

Access Permission

- "! Access Permission + "! Access permission BEGIN OF ty_permission, "!

Software Component

- "! Software Component + "! Software component "! $required software_component TYPE c LENGTH 30, END OF ty_permission. "!

Access Permissions

- "! Access Permissions + "! Access permissions TYPES ty_permissions TYPE STANDARD TABLE OF ty_permission WITH DEFAULT KEY. TYPES: @@ -29,7 +29,7 @@ INTERFACE zif_aff_swcr_v1 "! Dependency BEGIN OF ty_dependency, "!

Software Component

- "! Software Component + "! Software component "! $required software_component TYPE c LENGTH 30, END OF ty_dependency. @@ -40,10 +40,10 @@ INTERFACE zif_aff_swcr_v1 TYPES: "!

Software Component Relations

- "! Software Component Relations + "! Software component relations BEGIN OF ty_main, "!

Format Version

- "! Format Version + "! Format version "! $required format_version TYPE zif_aff_types_v1=>ty_format_version, "!

Header

@@ -51,10 +51,10 @@ INTERFACE zif_aff_swcr_v1 "! $required header TYPE ty_header, "!

Access Permissions

- "! The Software Component Grants Access Permission to the Specified Software Components + "! The software component grants access permission to the specified software components permissions TYPE ty_permissions, "!

Dependencies

- "! The Software Component Depends on the Specified Software Components + "! The software component depends on the specified software components dependencies TYPE ty_dependencies, END OF ty_main.