@mcp-abap-adt/adt-clients 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +184 -0
- package/bin/README.md +368 -0
- package/bin/lock-object.js +274 -0
- package/bin/manage-locks.js +331 -0
- package/bin/manage-sessions.js +235 -0
- package/bin/unlock-object.js +291 -0
- package/bin/unlock-test-objects.js +248 -0
- package/dist/clients/CrudClient.d.ts +48 -0
- package/dist/clients/CrudClient.d.ts.map +1 -0
- package/dist/clients/CrudClient.js +135 -0
- package/dist/clients/LockClient.d.ts +28 -0
- package/dist/clients/LockClient.d.ts.map +1 -0
- package/dist/clients/LockClient.js +141 -0
- package/dist/clients/ManagementClient.d.ts +34 -0
- package/dist/clients/ManagementClient.d.ts.map +1 -0
- package/dist/clients/ManagementClient.js +80 -0
- package/dist/clients/ReadOnlyClient.d.ts +70 -0
- package/dist/clients/ReadOnlyClient.d.ts.map +1 -0
- package/dist/clients/ReadOnlyClient.js +141 -0
- package/dist/clients/ValidationClient.d.ts +8 -0
- package/dist/clients/ValidationClient.d.ts.map +1 -0
- package/dist/clients/ValidationClient.js +14 -0
- package/dist/core/class/ClassBuilder.d.ts +140 -0
- package/dist/core/class/ClassBuilder.d.ts.map +1 -0
- package/dist/core/class/ClassBuilder.js +400 -0
- package/dist/core/class/activation.d.ts +11 -0
- package/dist/core/class/activation.d.ts.map +1 -0
- package/dist/core/class/activation.js +16 -0
- package/dist/core/class/check.d.ts +24 -0
- package/dist/core/class/check.d.ts.map +1 -0
- package/dist/core/class/check.js +73 -0
- package/dist/core/class/create.d.ts +30 -0
- package/dist/core/class/create.d.ts.map +1 -0
- package/dist/core/class/create.js +118 -0
- package/dist/core/class/index.d.ts +14 -0
- package/dist/core/class/index.d.ts.map +1 -0
- package/dist/core/class/index.js +31 -0
- package/dist/core/class/lock.d.ts +20 -0
- package/dist/core/class/lock.d.ts.map +1 -0
- package/dist/core/class/lock.js +49 -0
- package/dist/core/class/read.d.ts +34 -0
- package/dist/core/class/read.d.ts.map +1 -0
- package/dist/core/class/read.js +59 -0
- package/dist/core/class/run.d.ts +51 -0
- package/dist/core/class/run.d.ts.map +1 -0
- package/dist/core/class/run.js +105 -0
- package/dist/core/class/unlock.d.ts +11 -0
- package/dist/core/class/unlock.d.ts.map +1 -0
- package/dist/core/class/unlock.js +16 -0
- package/dist/core/class/update.d.ts +11 -0
- package/dist/core/class/update.d.ts.map +1 -0
- package/dist/core/class/update.js +30 -0
- package/dist/core/class/validation.d.ts +28 -0
- package/dist/core/class/validation.d.ts.map +1 -0
- package/dist/core/class/validation.js +269 -0
- package/dist/core/dataElement/DataElementBuilder.d.ts +113 -0
- package/dist/core/dataElement/DataElementBuilder.d.ts.map +1 -0
- package/dist/core/dataElement/DataElementBuilder.js +449 -0
- package/dist/core/dataElement/activation.d.ts +11 -0
- package/dist/core/dataElement/activation.d.ts.map +1 -0
- package/dist/core/dataElement/activation.js +123 -0
- package/dist/core/dataElement/check.d.ts +12 -0
- package/dist/core/dataElement/check.d.ts.map +1 -0
- package/dist/core/dataElement/check.js +32 -0
- package/dist/core/dataElement/create.d.ts +12 -0
- package/dist/core/dataElement/create.d.ts.map +1 -0
- package/dist/core/dataElement/create.js +259 -0
- package/dist/core/dataElement/delete.d.ts +14 -0
- package/dist/core/dataElement/delete.d.ts.map +1 -0
- package/dist/core/dataElement/delete.js +21 -0
- package/dist/core/dataElement/index.d.ts +14 -0
- package/dist/core/dataElement/index.d.ts.map +1 -0
- package/dist/core/dataElement/index.js +31 -0
- package/dist/core/dataElement/lock.d.ts +10 -0
- package/dist/core/dataElement/lock.d.ts.map +1 -0
- package/dist/core/dataElement/lock.js +31 -0
- package/dist/core/dataElement/read.d.ts +17 -0
- package/dist/core/dataElement/read.d.ts.map +1 -0
- package/dist/core/dataElement/read.js +42 -0
- package/dist/core/dataElement/types.d.ts +64 -0
- package/dist/core/dataElement/types.d.ts.map +1 -0
- package/dist/core/dataElement/types.js +5 -0
- package/dist/core/dataElement/unlock.d.ts +11 -0
- package/dist/core/dataElement/unlock.d.ts.map +1 -0
- package/dist/core/dataElement/unlock.js +17 -0
- package/dist/core/dataElement/update.d.ts +29 -0
- package/dist/core/dataElement/update.d.ts.map +1 -0
- package/dist/core/dataElement/update.js +269 -0
- package/dist/core/delete.d.ts +22 -0
- package/dist/core/delete.d.ts.map +1 -0
- package/dist/core/delete.js +148 -0
- package/dist/core/domain/DomainBuilder.d.ts +135 -0
- package/dist/core/domain/DomainBuilder.d.ts.map +1 -0
- package/dist/core/domain/DomainBuilder.js +430 -0
- package/dist/core/domain/activation.d.ts +11 -0
- package/dist/core/domain/activation.d.ts.map +1 -0
- package/dist/core/domain/activation.js +16 -0
- package/dist/core/domain/check.d.ts +16 -0
- package/dist/core/domain/check.d.ts.map +1 -0
- package/dist/core/domain/check.js +36 -0
- package/dist/core/domain/create.d.ts +21 -0
- package/dist/core/domain/create.d.ts.map +1 -0
- package/dist/core/domain/create.js +172 -0
- package/dist/core/domain/delete.d.ts +14 -0
- package/dist/core/domain/delete.d.ts.map +1 -0
- package/dist/core/domain/delete.js +21 -0
- package/dist/core/domain/index.d.ts +14 -0
- package/dist/core/domain/index.d.ts.map +1 -0
- package/dist/core/domain/index.js +31 -0
- package/dist/core/domain/lock.d.ts +15 -0
- package/dist/core/domain/lock.d.ts.map +1 -0
- package/dist/core/domain/lock.js +61 -0
- package/dist/core/domain/read.d.ts +17 -0
- package/dist/core/domain/read.d.ts.map +1 -0
- package/dist/core/domain/read.js +42 -0
- package/dist/core/domain/types.d.ts +38 -0
- package/dist/core/domain/types.d.ts.map +1 -0
- package/dist/core/domain/types.js +5 -0
- package/dist/core/domain/unlock.d.ts +11 -0
- package/dist/core/domain/unlock.d.ts.map +1 -0
- package/dist/core/domain/unlock.js +17 -0
- package/dist/core/domain/update.d.ts +12 -0
- package/dist/core/domain/update.d.ts.map +1 -0
- package/dist/core/domain/update.js +144 -0
- package/dist/core/functionGroup/FunctionGroupBuilder.d.ts +91 -0
- package/dist/core/functionGroup/FunctionGroupBuilder.d.ts.map +1 -0
- package/dist/core/functionGroup/FunctionGroupBuilder.js +268 -0
- package/dist/core/functionGroup/activation.d.ts +10 -0
- package/dist/core/functionGroup/activation.d.ts.map +1 -0
- package/dist/core/functionGroup/activation.js +30 -0
- package/dist/core/functionGroup/check.d.ts +24 -0
- package/dist/core/functionGroup/check.d.ts.map +1 -0
- package/dist/core/functionGroup/check.js +91 -0
- package/dist/core/functionGroup/create.d.ts +12 -0
- package/dist/core/functionGroup/create.d.ts.map +1 -0
- package/dist/core/functionGroup/create.js +90 -0
- package/dist/core/functionGroup/delete.d.ts +14 -0
- package/dist/core/functionGroup/delete.d.ts.map +1 -0
- package/dist/core/functionGroup/delete.js +21 -0
- package/dist/core/functionGroup/index.d.ts +15 -0
- package/dist/core/functionGroup/index.d.ts.map +1 -0
- package/dist/core/functionGroup/index.js +32 -0
- package/dist/core/functionGroup/lock.d.ts +25 -0
- package/dist/core/functionGroup/lock.d.ts.map +1 -0
- package/dist/core/functionGroup/lock.js +50 -0
- package/dist/core/functionGroup/read.d.ts +17 -0
- package/dist/core/functionGroup/read.d.ts.map +1 -0
- package/dist/core/functionGroup/read.js +42 -0
- package/dist/core/functionGroup/types.d.ts +11 -0
- package/dist/core/functionGroup/types.d.ts.map +1 -0
- package/dist/core/functionGroup/types.js +5 -0
- package/dist/core/functionGroup/unlock.d.ts +5 -0
- package/dist/core/functionGroup/unlock.d.ts.map +1 -0
- package/dist/core/functionGroup/unlock.js +8 -0
- package/dist/core/functionGroup/update.d.ts +20 -0
- package/dist/core/functionGroup/update.d.ts.map +1 -0
- package/dist/core/functionGroup/update.js +119 -0
- package/dist/core/functionGroup/validation.d.ts +10 -0
- package/dist/core/functionGroup/validation.d.ts.map +1 -0
- package/dist/core/functionGroup/validation.js +17 -0
- package/dist/core/functionModule/FunctionModuleBuilder.d.ts +101 -0
- package/dist/core/functionModule/FunctionModuleBuilder.d.ts.map +1 -0
- package/dist/core/functionModule/FunctionModuleBuilder.js +314 -0
- package/dist/core/functionModule/activation.d.ts +10 -0
- package/dist/core/functionModule/activation.d.ts.map +1 -0
- package/dist/core/functionModule/activation.js +17 -0
- package/dist/core/functionModule/check.d.ts +23 -0
- package/dist/core/functionModule/check.d.ts.map +1 -0
- package/dist/core/functionModule/check.js +116 -0
- package/dist/core/functionModule/create.d.ts +12 -0
- package/dist/core/functionModule/create.d.ts.map +1 -0
- package/dist/core/functionModule/create.js +158 -0
- package/dist/core/functionModule/delete.d.ts +15 -0
- package/dist/core/functionModule/delete.d.ts.map +1 -0
- package/dist/core/functionModule/delete.js +25 -0
- package/dist/core/functionModule/index.d.ts +15 -0
- package/dist/core/functionModule/index.d.ts.map +1 -0
- package/dist/core/functionModule/index.js +32 -0
- package/dist/core/functionModule/lock.d.ts +18 -0
- package/dist/core/functionModule/lock.d.ts.map +1 -0
- package/dist/core/functionModule/lock.js +52 -0
- package/dist/core/functionModule/read.d.ts +31 -0
- package/dist/core/functionModule/read.d.ts.map +1 -0
- package/dist/core/functionModule/read.js +57 -0
- package/dist/core/functionModule/types.d.ts +19 -0
- package/dist/core/functionModule/types.d.ts.map +1 -0
- package/dist/core/functionModule/types.js +5 -0
- package/dist/core/functionModule/unlock.d.ts +10 -0
- package/dist/core/functionModule/unlock.d.ts.map +1 -0
- package/dist/core/functionModule/unlock.js +20 -0
- package/dist/core/functionModule/update.d.ts +17 -0
- package/dist/core/functionModule/update.d.ts.map +1 -0
- package/dist/core/functionModule/update.js +103 -0
- package/dist/core/functionModule/validation.d.ts +27 -0
- package/dist/core/functionModule/validation.d.ts.map +1 -0
- package/dist/core/functionModule/validation.js +107 -0
- package/dist/core/interface/InterfaceBuilder.d.ts +98 -0
- package/dist/core/interface/InterfaceBuilder.d.ts.map +1 -0
- package/dist/core/interface/InterfaceBuilder.js +311 -0
- package/dist/core/interface/activation.d.ts +11 -0
- package/dist/core/interface/activation.d.ts.map +1 -0
- package/dist/core/interface/activation.js +16 -0
- package/dist/core/interface/check.d.ts +10 -0
- package/dist/core/interface/check.d.ts.map +1 -0
- package/dist/core/interface/check.js +18 -0
- package/dist/core/interface/create.d.ts +12 -0
- package/dist/core/interface/create.d.ts.map +1 -0
- package/dist/core/interface/create.js +119 -0
- package/dist/core/interface/delete.d.ts +20 -0
- package/dist/core/interface/delete.d.ts.map +1 -0
- package/dist/core/interface/delete.js +47 -0
- package/dist/core/interface/index.d.ts +15 -0
- package/dist/core/interface/index.d.ts.map +1 -0
- package/dist/core/interface/index.js +32 -0
- package/dist/core/interface/lock.d.ts +23 -0
- package/dist/core/interface/lock.d.ts.map +1 -0
- package/dist/core/interface/lock.js +51 -0
- package/dist/core/interface/read.d.ts +26 -0
- package/dist/core/interface/read.d.ts.map +1 -0
- package/dist/core/interface/read.js +51 -0
- package/dist/core/interface/types.d.ts +19 -0
- package/dist/core/interface/types.d.ts.map +1 -0
- package/dist/core/interface/types.js +5 -0
- package/dist/core/interface/unlock.d.ts +11 -0
- package/dist/core/interface/unlock.d.ts.map +1 -0
- package/dist/core/interface/unlock.js +35 -0
- package/dist/core/interface/update.d.ts +12 -0
- package/dist/core/interface/update.d.ts.map +1 -0
- package/dist/core/interface/update.js +82 -0
- package/dist/core/interface/validation.d.ts +10 -0
- package/dist/core/interface/validation.d.ts.map +1 -0
- package/dist/core/interface/validation.js +17 -0
- package/dist/core/managementOperations.d.ts +34 -0
- package/dist/core/managementOperations.d.ts.map +1 -0
- package/dist/core/managementOperations.js +136 -0
- package/dist/core/package/PackageBuilder.d.ts +129 -0
- package/dist/core/package/PackageBuilder.d.ts.map +1 -0
- package/dist/core/package/PackageBuilder.js +386 -0
- package/dist/core/package/check.d.ts +9 -0
- package/dist/core/package/check.d.ts.map +1 -0
- package/dist/core/package/check.js +29 -0
- package/dist/core/package/create.d.ts +12 -0
- package/dist/core/package/create.d.ts.map +1 -0
- package/dist/core/package/create.js +145 -0
- package/dist/core/package/delete.d.ts +27 -0
- package/dist/core/package/delete.d.ts.map +1 -0
- package/dist/core/package/delete.js +138 -0
- package/dist/core/package/index.d.ts +15 -0
- package/dist/core/package/index.d.ts.map +1 -0
- package/dist/core/package/index.js +32 -0
- package/dist/core/package/lock.d.ts +10 -0
- package/dist/core/package/lock.d.ts.map +1 -0
- package/dist/core/package/lock.js +28 -0
- package/dist/core/package/read.d.ts +17 -0
- package/dist/core/package/read.d.ts.map +1 -0
- package/dist/core/package/read.js +42 -0
- package/dist/core/package/transportCheck.d.ts +10 -0
- package/dist/core/package/transportCheck.d.ts.map +1 -0
- package/dist/core/package/transportCheck.js +52 -0
- package/dist/core/package/types.d.ts +15 -0
- package/dist/core/package/types.d.ts.map +1 -0
- package/dist/core/package/types.js +5 -0
- package/dist/core/package/unlock.d.ts +11 -0
- package/dist/core/package/unlock.d.ts.map +1 -0
- package/dist/core/package/unlock.js +16 -0
- package/dist/core/package/update.d.ts +19 -0
- package/dist/core/package/update.d.ts.map +1 -0
- package/dist/core/package/update.js +125 -0
- package/dist/core/package/validation.d.ts +14 -0
- package/dist/core/package/validation.d.ts.map +1 -0
- package/dist/core/package/validation.js +72 -0
- package/dist/core/program/ProgramBuilder.d.ts +102 -0
- package/dist/core/program/ProgramBuilder.d.ts.map +1 -0
- package/dist/core/program/ProgramBuilder.js +321 -0
- package/dist/core/program/activation.d.ts +11 -0
- package/dist/core/program/activation.d.ts.map +1 -0
- package/dist/core/program/activation.js +16 -0
- package/dist/core/program/check.d.ts +10 -0
- package/dist/core/program/check.d.ts.map +1 -0
- package/dist/core/program/check.js +18 -0
- package/dist/core/program/create.d.ts +23 -0
- package/dist/core/program/create.d.ts.map +1 -0
- package/dist/core/program/create.js +159 -0
- package/dist/core/program/delete.d.ts +14 -0
- package/dist/core/program/delete.d.ts.map +1 -0
- package/dist/core/program/delete.js +21 -0
- package/dist/core/program/index.d.ts +14 -0
- package/dist/core/program/index.d.ts.map +1 -0
- package/dist/core/program/index.js +31 -0
- package/dist/core/program/lock.d.ts +20 -0
- package/dist/core/program/lock.d.ts.map +1 -0
- package/dist/core/program/lock.js +49 -0
- package/dist/core/program/read.d.ts +26 -0
- package/dist/core/program/read.d.ts.map +1 -0
- package/dist/core/program/read.js +51 -0
- package/dist/core/program/unlock.d.ts +11 -0
- package/dist/core/program/unlock.d.ts.map +1 -0
- package/dist/core/program/unlock.js +16 -0
- package/dist/core/program/update.d.ts +16 -0
- package/dist/core/program/update.d.ts.map +1 -0
- package/dist/core/program/update.js +82 -0
- package/dist/core/program/validation.d.ts +10 -0
- package/dist/core/program/validation.d.ts.map +1 -0
- package/dist/core/program/validation.js +17 -0
- package/dist/core/readOperations.d.ts +63 -0
- package/dist/core/readOperations.d.ts.map +1 -0
- package/dist/core/readOperations.js +204 -0
- package/dist/core/shared/checkRun.d.ts +68 -0
- package/dist/core/shared/checkRun.d.ts.map +1 -0
- package/dist/core/shared/checkRun.js +292 -0
- package/dist/core/shared/readMetadata.d.ts +16 -0
- package/dist/core/shared/readMetadata.d.ts.map +1 -0
- package/dist/core/shared/readMetadata.js +74 -0
- package/dist/core/shared/readSource.d.ts +21 -0
- package/dist/core/shared/readSource.d.ts.map +1 -0
- package/dist/core/shared/readSource.js +83 -0
- package/dist/core/shared/search.d.ts +26 -0
- package/dist/core/shared/search.d.ts.map +1 -0
- package/dist/core/shared/search.js +32 -0
- package/dist/core/shared/sqlQuery.d.ts +22 -0
- package/dist/core/shared/sqlQuery.d.ts.map +1 -0
- package/dist/core/shared/sqlQuery.js +36 -0
- package/dist/core/shared/systemInfo.d.ts +22 -0
- package/dist/core/shared/systemInfo.d.ts.map +1 -0
- package/dist/core/shared/systemInfo.js +67 -0
- package/dist/core/shared/tableContents.d.ts +22 -0
- package/dist/core/shared/tableContents.d.ts.map +1 -0
- package/dist/core/shared/tableContents.js +89 -0
- package/dist/core/shared/validation.d.ts +26 -0
- package/dist/core/shared/validation.d.ts.map +1 -0
- package/dist/core/shared/validation.js +134 -0
- package/dist/core/shared/whereUsed.d.ts +19 -0
- package/dist/core/shared/whereUsed.d.ts.map +1 -0
- package/dist/core/shared/whereUsed.js +88 -0
- package/dist/core/structure/StructureBuilder.d.ts +124 -0
- package/dist/core/structure/StructureBuilder.d.ts.map +1 -0
- package/dist/core/structure/StructureBuilder.js +357 -0
- package/dist/core/structure/activation.d.ts +10 -0
- package/dist/core/structure/activation.d.ts.map +1 -0
- package/dist/core/structure/activation.js +15 -0
- package/dist/core/structure/check.d.ts +12 -0
- package/dist/core/structure/check.d.ts.map +1 -0
- package/dist/core/structure/check.js +44 -0
- package/dist/core/structure/create.d.ts +12 -0
- package/dist/core/structure/create.d.ts.map +1 -0
- package/dist/core/structure/create.js +136 -0
- package/dist/core/structure/delete.d.ts +14 -0
- package/dist/core/structure/delete.d.ts.map +1 -0
- package/dist/core/structure/delete.js +21 -0
- package/dist/core/structure/index.d.ts +15 -0
- package/dist/core/structure/index.d.ts.map +1 -0
- package/dist/core/structure/index.js +32 -0
- package/dist/core/structure/lock.d.ts +10 -0
- package/dist/core/structure/lock.d.ts.map +1 -0
- package/dist/core/structure/lock.js +28 -0
- package/dist/core/structure/read.d.ts +26 -0
- package/dist/core/structure/read.d.ts.map +1 -0
- package/dist/core/structure/read.js +51 -0
- package/dist/core/structure/types.d.ts +33 -0
- package/dist/core/structure/types.d.ts.map +1 -0
- package/dist/core/structure/types.js +5 -0
- package/dist/core/structure/unlock.d.ts +11 -0
- package/dist/core/structure/unlock.d.ts.map +1 -0
- package/dist/core/structure/unlock.js +16 -0
- package/dist/core/structure/update.d.ts +11 -0
- package/dist/core/structure/update.d.ts.map +1 -0
- package/dist/core/structure/update.js +26 -0
- package/dist/core/structure/validation.d.ts +10 -0
- package/dist/core/structure/validation.d.ts.map +1 -0
- package/dist/core/structure/validation.js +17 -0
- package/dist/core/table/TableBuilder.d.ts +115 -0
- package/dist/core/table/TableBuilder.d.ts.map +1 -0
- package/dist/core/table/TableBuilder.js +328 -0
- package/dist/core/table/activation.d.ts +10 -0
- package/dist/core/table/activation.d.ts.map +1 -0
- package/dist/core/table/activation.js +15 -0
- package/dist/core/table/check.d.ts +11 -0
- package/dist/core/table/check.d.ts.map +1 -0
- package/dist/core/table/check.js +30 -0
- package/dist/core/table/create.d.ts +12 -0
- package/dist/core/table/create.d.ts.map +1 -0
- package/dist/core/table/create.js +182 -0
- package/dist/core/table/delete.d.ts +14 -0
- package/dist/core/table/delete.d.ts.map +1 -0
- package/dist/core/table/delete.js +21 -0
- package/dist/core/table/index.d.ts +15 -0
- package/dist/core/table/index.d.ts.map +1 -0
- package/dist/core/table/index.js +32 -0
- package/dist/core/table/lock.d.ts +9 -0
- package/dist/core/table/lock.d.ts.map +1 -0
- package/dist/core/table/lock.js +29 -0
- package/dist/core/table/read.d.ts +26 -0
- package/dist/core/table/read.d.ts.map +1 -0
- package/dist/core/table/read.js +51 -0
- package/dist/core/table/types.d.ts +10 -0
- package/dist/core/table/types.d.ts.map +1 -0
- package/dist/core/table/types.js +5 -0
- package/dist/core/table/unlock.d.ts +15 -0
- package/dist/core/table/unlock.d.ts.map +1 -0
- package/dist/core/table/unlock.js +32 -0
- package/dist/core/table/update.d.ts +16 -0
- package/dist/core/table/update.d.ts.map +1 -0
- package/dist/core/table/update.js +32 -0
- package/dist/core/table/validation.d.ts +10 -0
- package/dist/core/table/validation.d.ts.map +1 -0
- package/dist/core/table/validation.js +17 -0
- package/dist/core/transport/TransportBuilder.d.ts +85 -0
- package/dist/core/transport/TransportBuilder.d.ts.map +1 -0
- package/dist/core/transport/TransportBuilder.js +154 -0
- package/dist/core/transport/create.d.ts +11 -0
- package/dist/core/transport/create.d.ts.map +1 -0
- package/dist/core/transport/create.js +157 -0
- package/dist/core/transport/index.d.ts +8 -0
- package/dist/core/transport/index.d.ts.map +1 -0
- package/dist/core/transport/index.js +25 -0
- package/dist/core/transport/read.d.ts +10 -0
- package/dist/core/transport/read.d.ts.map +1 -0
- package/dist/core/transport/read.js +22 -0
- package/dist/core/transport/types.d.ts +10 -0
- package/dist/core/transport/types.d.ts.map +1 -0
- package/dist/core/transport/types.js +5 -0
- package/dist/core/view/ViewBuilder.d.ts +117 -0
- package/dist/core/view/ViewBuilder.d.ts.map +1 -0
- package/dist/core/view/ViewBuilder.js +335 -0
- package/dist/core/view/activation.d.ts +10 -0
- package/dist/core/view/activation.d.ts.map +1 -0
- package/dist/core/view/activation.js +15 -0
- package/dist/core/view/check.d.ts +7 -0
- package/dist/core/view/check.d.ts.map +1 -0
- package/dist/core/view/check.js +57 -0
- package/dist/core/view/create.d.ts +12 -0
- package/dist/core/view/create.d.ts.map +1 -0
- package/dist/core/view/create.js +88 -0
- package/dist/core/view/delete.d.ts +14 -0
- package/dist/core/view/delete.d.ts.map +1 -0
- package/dist/core/view/delete.js +21 -0
- package/dist/core/view/index.d.ts +15 -0
- package/dist/core/view/index.d.ts.map +1 -0
- package/dist/core/view/index.js +32 -0
- package/dist/core/view/lock.d.ts +18 -0
- package/dist/core/view/lock.d.ts.map +1 -0
- package/dist/core/view/lock.js +45 -0
- package/dist/core/view/read.d.ts +26 -0
- package/dist/core/view/read.d.ts.map +1 -0
- package/dist/core/view/read.js +51 -0
- package/dist/core/view/types.d.ts +19 -0
- package/dist/core/view/types.d.ts.map +1 -0
- package/dist/core/view/types.js +5 -0
- package/dist/core/view/unlock.d.ts +10 -0
- package/dist/core/view/unlock.d.ts.map +1 -0
- package/dist/core/view/unlock.js +15 -0
- package/dist/core/view/update.d.ts +12 -0
- package/dist/core/view/update.d.ts.map +1 -0
- package/dist/core/view/update.js +89 -0
- package/dist/core/view/validation.d.ts +10 -0
- package/dist/core/view/validation.d.ts.map +1 -0
- package/dist/core/view/validation.js +17 -0
- package/dist/core.d.ts +133 -0
- package/dist/core.d.ts.map +1 -0
- package/dist/core.js +175 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +60 -0
- package/dist/utils/activationUtils.d.ts +44 -0
- package/dist/utils/activationUtils.d.ts.map +1 -0
- package/dist/utils/activationUtils.js +127 -0
- package/dist/utils/internalUtils.d.ts +12 -0
- package/dist/utils/internalUtils.d.ts.map +1 -0
- package/dist/utils/internalUtils.js +16 -0
- package/dist/utils/lockStateManager.d.ts +64 -0
- package/dist/utils/lockStateManager.d.ts.map +1 -0
- package/dist/utils/lockStateManager.js +172 -0
- package/dist/utils/sessionUtils.d.ts +69 -0
- package/dist/utils/sessionUtils.d.ts.map +1 -0
- package/dist/utils/sessionUtils.js +134 -0
- package/package.json +75 -0
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Domain create operations
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createEmptyDomain = createEmptyDomain;
|
|
7
|
+
exports.lockAndCreateDomain = lockAndCreateDomain;
|
|
8
|
+
exports.createDomain = createDomain;
|
|
9
|
+
const fast_xml_parser_1 = require("fast-xml-parser");
|
|
10
|
+
const internalUtils_1 = require("../../utils/internalUtils");
|
|
11
|
+
const sessionUtils_1 = require("../../utils/sessionUtils");
|
|
12
|
+
const lock_1 = require("./lock");
|
|
13
|
+
const unlock_1 = require("./unlock");
|
|
14
|
+
const activation_1 = require("./activation");
|
|
15
|
+
const check_1 = require("./check");
|
|
16
|
+
const systemInfo_1 = require("../shared/systemInfo");
|
|
17
|
+
/**
|
|
18
|
+
* Create empty domain (initial POST to register the name)
|
|
19
|
+
*/
|
|
20
|
+
async function createEmptyDomain(connection, args, sessionId, username, masterSystem) {
|
|
21
|
+
const corrNrParam = args.transport_request ? `?corrNr=${args.transport_request}` : '';
|
|
22
|
+
const url = `/sap/bc/adt/ddic/domains${corrNrParam}`;
|
|
23
|
+
const masterSystemAttr = masterSystem ? ` adtcore:masterSystem="${masterSystem}"` : '';
|
|
24
|
+
const xmlBody = `<?xml version="1.0" encoding="UTF-8"?>
|
|
25
|
+
<doma:domain xmlns:doma="http://www.sap.com/dictionary/domain"
|
|
26
|
+
xmlns:adtcore="http://www.sap.com/adt/core"
|
|
27
|
+
adtcore:description="${args.description || args.domain_name}"
|
|
28
|
+
adtcore:language="EN"
|
|
29
|
+
adtcore:name="${args.domain_name.toUpperCase()}"
|
|
30
|
+
adtcore:type="DOMA/DD"
|
|
31
|
+
adtcore:masterLanguage="EN"${masterSystemAttr}
|
|
32
|
+
adtcore:responsible="${username}">
|
|
33
|
+
<adtcore:packageRef adtcore:name="${args.package_name.toUpperCase()}"/>
|
|
34
|
+
</doma:domain>`;
|
|
35
|
+
const headers = {
|
|
36
|
+
'Accept': 'application/vnd.sap.adt.domains.v1+xml, application/vnd.sap.adt.domains.v2+xml',
|
|
37
|
+
'Content-Type': 'application/vnd.sap.adt.domains.v2+xml'
|
|
38
|
+
};
|
|
39
|
+
return (0, sessionUtils_1.makeAdtRequestWithSession)(connection, url, 'POST', sessionId, xmlBody, headers);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Create domain with lock handle
|
|
43
|
+
* Build XML from scratch using parameters
|
|
44
|
+
*/
|
|
45
|
+
async function lockAndCreateDomain(connection, args, lockHandle, sessionId, username, masterSystem) {
|
|
46
|
+
const domainNameEncoded = (0, internalUtils_1.encodeSapObjectName)(args.domain_name.toLowerCase());
|
|
47
|
+
const corrNrParam = args.transport_request ? `&corrNr=${args.transport_request}` : '';
|
|
48
|
+
const url = `/sap/bc/adt/ddic/domains/${domainNameEncoded}?lockHandle=${lockHandle}${corrNrParam}`;
|
|
49
|
+
const datatype = args.datatype || 'CHAR';
|
|
50
|
+
const length = args.length || 100;
|
|
51
|
+
const decimals = args.decimals || 0;
|
|
52
|
+
let fixValuesXml = '';
|
|
53
|
+
if (args.fixed_values && args.fixed_values.length > 0) {
|
|
54
|
+
const fixValueItems = args.fixed_values.map(fv => ` <doma:fixValue>\n <doma:low>${fv.low}</doma:low>\n <doma:text>${fv.text}</doma:text>\n </doma:fixValue>`).join('\n');
|
|
55
|
+
fixValuesXml = ` <doma:fixValues>\n${fixValueItems}\n </doma:fixValues>`;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
fixValuesXml = ' <doma:fixValues/>';
|
|
59
|
+
}
|
|
60
|
+
const masterSystemAttr = masterSystem ? ` adtcore:masterSystem="${masterSystem}"` : '';
|
|
61
|
+
const xmlBody = `<?xml version="1.0" encoding="UTF-8"?>
|
|
62
|
+
<doma:domain xmlns:doma="http://www.sap.com/dictionary/domain"
|
|
63
|
+
xmlns:adtcore="http://www.sap.com/adt/core"
|
|
64
|
+
adtcore:description="${args.description || args.domain_name}"
|
|
65
|
+
adtcore:language="EN"
|
|
66
|
+
adtcore:name="${args.domain_name.toUpperCase()}"
|
|
67
|
+
adtcore:type="DOMA/DD"
|
|
68
|
+
adtcore:masterLanguage="EN"${masterSystemAttr}
|
|
69
|
+
adtcore:responsible="${username}">
|
|
70
|
+
<adtcore:packageRef adtcore:name="${args.package_name.toUpperCase()}"/>
|
|
71
|
+
<doma:content>
|
|
72
|
+
<doma:typeInformation>
|
|
73
|
+
<doma:datatype>${datatype}</doma:datatype>
|
|
74
|
+
<doma:length>${length}</doma:length>
|
|
75
|
+
<doma:decimals>${decimals}</doma:decimals>
|
|
76
|
+
</doma:typeInformation>
|
|
77
|
+
<doma:outputInformation>
|
|
78
|
+
<doma:length>${length}</doma:length>
|
|
79
|
+
<doma:conversionExit>${args.conversion_exit || ''}</doma:conversionExit>
|
|
80
|
+
<doma:signExists>${args.sign_exists || false}</doma:signExists>
|
|
81
|
+
<doma:lowercase>${args.lowercase || false}</doma:lowercase>
|
|
82
|
+
</doma:outputInformation>
|
|
83
|
+
<doma:valueInformation>
|
|
84
|
+
<doma:valueTableRef adtcore:name="${args.value_table || ''}"/>
|
|
85
|
+
<doma:appendExists>false</doma:appendExists>
|
|
86
|
+
${fixValuesXml}
|
|
87
|
+
</doma:valueInformation>
|
|
88
|
+
</doma:content>
|
|
89
|
+
</doma:domain>`;
|
|
90
|
+
const headers = {
|
|
91
|
+
'Accept': 'application/vnd.sap.adt.domains.v1+xml, application/vnd.sap.adt.domains.v2+xml',
|
|
92
|
+
'Content-Type': 'application/vnd.sap.adt.domains.v2+xml; charset=utf-8'
|
|
93
|
+
};
|
|
94
|
+
return (0, sessionUtils_1.makeAdtRequestWithSession)(connection, url, 'PUT', sessionId, xmlBody, headers);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Get domain to verify creation
|
|
98
|
+
*/
|
|
99
|
+
async function getDomainForVerification(connection, domainName, sessionId) {
|
|
100
|
+
const domainNameEncoded = (0, internalUtils_1.encodeSapObjectName)(domainName.toLowerCase());
|
|
101
|
+
const url = `/sap/bc/adt/ddic/domains/${domainNameEncoded}?version=workingArea`;
|
|
102
|
+
const headers = {
|
|
103
|
+
'Accept': 'application/vnd.sap.adt.domains.v1+xml, application/vnd.sap.adt.domains.v2+xml'
|
|
104
|
+
};
|
|
105
|
+
const response = await (0, sessionUtils_1.makeAdtRequestWithSession)(connection, url, 'GET', sessionId, undefined, headers);
|
|
106
|
+
const parser = new fast_xml_parser_1.XMLParser({
|
|
107
|
+
ignoreAttributes: false,
|
|
108
|
+
attributeNamePrefix: '',
|
|
109
|
+
});
|
|
110
|
+
const result = parser.parse(response.data);
|
|
111
|
+
return result['doma:domain'];
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Create ABAP domain
|
|
115
|
+
* Full workflow: create empty -> lock -> create with data -> check -> unlock -> activate
|
|
116
|
+
*/
|
|
117
|
+
async function createDomain(connection, params) {
|
|
118
|
+
if (!params.domain_name) {
|
|
119
|
+
throw new Error('Domain name is required');
|
|
120
|
+
}
|
|
121
|
+
if (!params.package_name) {
|
|
122
|
+
throw new Error('Package name is required');
|
|
123
|
+
}
|
|
124
|
+
if (params.domain_name.length > 30) {
|
|
125
|
+
throw new Error('Domain name must not exceed 30 characters');
|
|
126
|
+
}
|
|
127
|
+
const sessionId = (0, sessionUtils_1.generateSessionId)();
|
|
128
|
+
// Get masterSystem and responsible (only for cloud systems)
|
|
129
|
+
// On cloud, getSystemInformation returns systemID and userName
|
|
130
|
+
// On on-premise, it returns null, so we don't add these attributes
|
|
131
|
+
const systemInfo = await (0, systemInfo_1.getSystemInformation)(connection);
|
|
132
|
+
const masterSystem = systemInfo?.systemID;
|
|
133
|
+
const username = systemInfo?.userName || process.env.SAP_USER || process.env.SAP_USERNAME || 'MPCUSER';
|
|
134
|
+
let lockHandle = '';
|
|
135
|
+
let createResponse = null;
|
|
136
|
+
try {
|
|
137
|
+
// Step 1: Create empty domain
|
|
138
|
+
createResponse = await createEmptyDomain(connection, params, sessionId, username, masterSystem);
|
|
139
|
+
// Step 2: Acquire lock
|
|
140
|
+
lockHandle = await (0, lock_1.acquireLockHandle)(connection, params, sessionId);
|
|
141
|
+
await new Promise(resolve => setTimeout(resolve, 500));
|
|
142
|
+
await new Promise(resolve => setTimeout(resolve, 500));
|
|
143
|
+
// Step 3: Create domain with full data
|
|
144
|
+
await lockAndCreateDomain(connection, params, lockHandle, sessionId, username, masterSystem);
|
|
145
|
+
// Step 4: Check domain validity (inactive version after creation)
|
|
146
|
+
await (0, check_1.checkDomainSyntax)(connection, params.domain_name, 'inactive', sessionId);
|
|
147
|
+
// Step 5: Unlock domain
|
|
148
|
+
await (0, unlock_1.unlockDomain)(connection, params.domain_name, lockHandle, sessionId);
|
|
149
|
+
// Step 6: Activate domain (optional, default true)
|
|
150
|
+
const shouldActivate = params.activate !== false;
|
|
151
|
+
if (shouldActivate) {
|
|
152
|
+
await (0, activation_1.activateDomain)(connection, params.domain_name, sessionId);
|
|
153
|
+
}
|
|
154
|
+
// Return the real response from SAP (from initial POST)
|
|
155
|
+
return createResponse;
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
// Try to unlock if we have a lock handle
|
|
159
|
+
if (lockHandle) {
|
|
160
|
+
try {
|
|
161
|
+
await (0, unlock_1.unlockDomain)(connection, params.domain_name, lockHandle, sessionId);
|
|
162
|
+
}
|
|
163
|
+
catch (unlockError) {
|
|
164
|
+
// Ignore unlock errors
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
const errorMessage = error.response?.data
|
|
168
|
+
? (typeof error.response.data === 'string' ? error.response.data : JSON.stringify(error.response.data))
|
|
169
|
+
: error.message;
|
|
170
|
+
throw new Error(`Failed to create domain ${params.domain_name}: ${errorMessage}`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Domain delete operations
|
|
3
|
+
*/
|
|
4
|
+
import { AbapConnection } from '@mcp-abap-adt/connection';
|
|
5
|
+
import { AxiosResponse } from 'axios';
|
|
6
|
+
export interface DeleteDomainParams {
|
|
7
|
+
domain_name: string;
|
|
8
|
+
transport_request?: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Delete ABAP domain
|
|
12
|
+
*/
|
|
13
|
+
export declare function deleteDomain(connection: AbapConnection, params: DeleteDomainParams): Promise<AxiosResponse>;
|
|
14
|
+
//# sourceMappingURL=delete.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/core/domain/delete.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGtC,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,aAAa,CAAC,CAYxB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Domain delete operations
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.deleteDomain = deleteDomain;
|
|
7
|
+
const delete_1 = require("../delete");
|
|
8
|
+
/**
|
|
9
|
+
* Delete ABAP domain
|
|
10
|
+
*/
|
|
11
|
+
async function deleteDomain(connection, params) {
|
|
12
|
+
if (!params.domain_name) {
|
|
13
|
+
throw new Error('domain_name is required');
|
|
14
|
+
}
|
|
15
|
+
const deleteParams = {
|
|
16
|
+
object_name: params.domain_name,
|
|
17
|
+
object_type: 'DOMA/DD',
|
|
18
|
+
transport_request: params.transport_request
|
|
19
|
+
};
|
|
20
|
+
return await (0, delete_1.deleteObject)(connection, deleteParams);
|
|
21
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Domain operations - exports
|
|
3
|
+
*/
|
|
4
|
+
export * from './types';
|
|
5
|
+
export * from './create';
|
|
6
|
+
export * from './update';
|
|
7
|
+
export * from './read';
|
|
8
|
+
export * from './lock';
|
|
9
|
+
export * from './unlock';
|
|
10
|
+
export * from './activation';
|
|
11
|
+
export * from './check';
|
|
12
|
+
export * from './delete';
|
|
13
|
+
export { DomainBuilder, type DomainBuilderConfig, type DomainBuilderLogger, type DomainBuilderState } from './DomainBuilder';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/domain/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,KAAK,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Domain operations - exports
|
|
4
|
+
*/
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
17
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.DomainBuilder = void 0;
|
|
21
|
+
__exportStar(require("./types"), exports);
|
|
22
|
+
__exportStar(require("./create"), exports);
|
|
23
|
+
__exportStar(require("./update"), exports);
|
|
24
|
+
__exportStar(require("./read"), exports);
|
|
25
|
+
__exportStar(require("./lock"), exports);
|
|
26
|
+
__exportStar(require("./unlock"), exports);
|
|
27
|
+
__exportStar(require("./activation"), exports);
|
|
28
|
+
__exportStar(require("./check"), exports);
|
|
29
|
+
__exportStar(require("./delete"), exports);
|
|
30
|
+
var DomainBuilder_1 = require("./DomainBuilder");
|
|
31
|
+
Object.defineProperty(exports, "DomainBuilder", { enumerable: true, get: function () { return DomainBuilder_1.DomainBuilder; } });
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Domain lock operations
|
|
3
|
+
*/
|
|
4
|
+
import { AbapConnection } from '@mcp-abap-adt/connection';
|
|
5
|
+
import { CreateDomainParams } from './types';
|
|
6
|
+
/**
|
|
7
|
+
* Acquire lock handle by attempting to lock the domain (for create)
|
|
8
|
+
*/
|
|
9
|
+
export declare function acquireLockHandle(connection: AbapConnection, args: CreateDomainParams, sessionId: string): Promise<string>;
|
|
10
|
+
/**
|
|
11
|
+
* Lock domain for modification
|
|
12
|
+
* Returns lock handle that must be used in subsequent requests
|
|
13
|
+
*/
|
|
14
|
+
export declare function lockDomain(connection: AbapConnection, domainName: string, sessionId: string): Promise<string>;
|
|
15
|
+
//# sourceMappingURL=lock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lock.d.ts","sourceRoot":"","sources":["../../../src/core/domain/lock.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAK1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE7C;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,cAAc,EAC1B,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,CAoCjB;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,CAuBjB"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Domain lock operations
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.acquireLockHandle = acquireLockHandle;
|
|
7
|
+
exports.lockDomain = lockDomain;
|
|
8
|
+
const fast_xml_parser_1 = require("fast-xml-parser");
|
|
9
|
+
const internalUtils_1 = require("../../utils/internalUtils");
|
|
10
|
+
const sessionUtils_1 = require("../../utils/sessionUtils");
|
|
11
|
+
/**
|
|
12
|
+
* Acquire lock handle by attempting to lock the domain (for create)
|
|
13
|
+
*/
|
|
14
|
+
async function acquireLockHandle(connection, args, sessionId) {
|
|
15
|
+
const domainNameEncoded = (0, internalUtils_1.encodeSapObjectName)(args.domain_name.toLowerCase());
|
|
16
|
+
const url = `/sap/bc/adt/ddic/domains/${domainNameEncoded}?_action=LOCK&accessMode=MODIFY`;
|
|
17
|
+
const headers = {
|
|
18
|
+
'Accept': 'application/vnd.sap.as+xml;charset=UTF-8;dataname=com.sap.adt.lock.result;q=0.8, application/vnd.sap.as+xml;charset=UTF-8;dataname=com.sap.adt.lock.result2;q=0.9'
|
|
19
|
+
};
|
|
20
|
+
try {
|
|
21
|
+
const response = await (0, sessionUtils_1.makeAdtRequestWithSession)(connection, url, 'POST', sessionId, null, headers);
|
|
22
|
+
const parser = new fast_xml_parser_1.XMLParser({
|
|
23
|
+
ignoreAttributes: false,
|
|
24
|
+
attributeNamePrefix: '',
|
|
25
|
+
});
|
|
26
|
+
const result = parser.parse(response.data);
|
|
27
|
+
const lockHandle = result?.['asx:abap']?.['asx:values']?.['DATA']?.['LOCK_HANDLE'];
|
|
28
|
+
if (!lockHandle) {
|
|
29
|
+
throw new Error('Failed to obtain lock handle from SAP response');
|
|
30
|
+
}
|
|
31
|
+
return lockHandle;
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
if (error.response?.data?.includes('ExceptionResourceAlreadyExists')) {
|
|
35
|
+
throw new Error(`Domain ${args.domain_name} already exists. Please delete it first or use a different name.`);
|
|
36
|
+
}
|
|
37
|
+
throw new Error(`Failed to create empty domain ${args.domain_name}: ${error.message || error}`);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Lock domain for modification
|
|
42
|
+
* Returns lock handle that must be used in subsequent requests
|
|
43
|
+
*/
|
|
44
|
+
async function lockDomain(connection, domainName, sessionId) {
|
|
45
|
+
const domainNameEncoded = (0, internalUtils_1.encodeSapObjectName)(domainName.toLowerCase());
|
|
46
|
+
const url = `/sap/bc/adt/ddic/domains/${domainNameEncoded}?_action=LOCK&accessMode=MODIFY`;
|
|
47
|
+
const headers = {
|
|
48
|
+
'Accept': 'application/vnd.sap.as+xml;charset=UTF-8;dataname=com.sap.adt.lock.result;q=0.8, application/vnd.sap.as+xml;charset=UTF-8;dataname=com.sap.adt.lock.result2;q=0.9'
|
|
49
|
+
};
|
|
50
|
+
const response = await (0, sessionUtils_1.makeAdtRequestWithSession)(connection, url, 'POST', sessionId, null, headers);
|
|
51
|
+
const parser = new fast_xml_parser_1.XMLParser({
|
|
52
|
+
ignoreAttributes: false,
|
|
53
|
+
attributeNamePrefix: ''
|
|
54
|
+
});
|
|
55
|
+
const result = parser.parse(response.data);
|
|
56
|
+
const lockHandle = result['asx:abap']?.['asx:values']?.['DATA']?.['LOCK_HANDLE'];
|
|
57
|
+
if (!lockHandle) {
|
|
58
|
+
throw new Error('Failed to extract lock handle from response');
|
|
59
|
+
}
|
|
60
|
+
return lockHandle;
|
|
61
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Domain read operations
|
|
3
|
+
*/
|
|
4
|
+
import { AbapConnection } from '@mcp-abap-adt/connection';
|
|
5
|
+
import { AxiosResponse } from 'axios';
|
|
6
|
+
/**
|
|
7
|
+
* Get ABAP domain
|
|
8
|
+
*/
|
|
9
|
+
export declare function getDomain(connection: AbapConnection, domainName: string): Promise<AxiosResponse>;
|
|
10
|
+
/**
|
|
11
|
+
* Get transport request for ABAP domain
|
|
12
|
+
* @param connection - SAP connection
|
|
13
|
+
* @param domainName - Domain name
|
|
14
|
+
* @returns Transport request information
|
|
15
|
+
*/
|
|
16
|
+
export declare function getDomainTransport(connection: AbapConnection, domainName: string): Promise<AxiosResponse>;
|
|
17
|
+
//# sourceMappingURL=read.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../src/core/domain/read.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAc,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAGtC;;GAEG;AACH,wBAAsB,SAAS,CAAC,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAWtG;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,aAAa,CAAC,CAaxB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Domain read operations
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getDomain = getDomain;
|
|
7
|
+
exports.getDomainTransport = getDomainTransport;
|
|
8
|
+
const connection_1 = require("@mcp-abap-adt/connection");
|
|
9
|
+
const internalUtils_1 = require("../../utils/internalUtils");
|
|
10
|
+
/**
|
|
11
|
+
* Get ABAP domain
|
|
12
|
+
*/
|
|
13
|
+
async function getDomain(connection, domainName) {
|
|
14
|
+
const baseUrl = await connection.getBaseUrl();
|
|
15
|
+
const encodedName = (0, internalUtils_1.encodeSapObjectName)(domainName);
|
|
16
|
+
const url = `${baseUrl}/sap/bc/adt/ddic/domains/${encodedName}`;
|
|
17
|
+
return connection.makeAdtRequest({
|
|
18
|
+
url,
|
|
19
|
+
method: 'GET',
|
|
20
|
+
timeout: (0, connection_1.getTimeout)('default'),
|
|
21
|
+
headers: {}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Get transport request for ABAP domain
|
|
26
|
+
* @param connection - SAP connection
|
|
27
|
+
* @param domainName - Domain name
|
|
28
|
+
* @returns Transport request information
|
|
29
|
+
*/
|
|
30
|
+
async function getDomainTransport(connection, domainName) {
|
|
31
|
+
const baseUrl = await connection.getBaseUrl();
|
|
32
|
+
const encodedName = (0, internalUtils_1.encodeSapObjectName)(domainName);
|
|
33
|
+
const url = `${baseUrl}/sap/bc/adt/ddic/domains/${encodedName}/transport`;
|
|
34
|
+
return connection.makeAdtRequest({
|
|
35
|
+
url,
|
|
36
|
+
method: 'GET',
|
|
37
|
+
timeout: (0, connection_1.getTimeout)('default'),
|
|
38
|
+
headers: {
|
|
39
|
+
'Accept': 'application/vnd.sap.adt.transportorganizer.v1+xml'
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Domain types
|
|
3
|
+
*/
|
|
4
|
+
export interface FixedValue {
|
|
5
|
+
low: string;
|
|
6
|
+
text: string;
|
|
7
|
+
}
|
|
8
|
+
export interface CreateDomainParams {
|
|
9
|
+
domain_name: string;
|
|
10
|
+
description?: string;
|
|
11
|
+
package_name: string;
|
|
12
|
+
transport_request?: string;
|
|
13
|
+
datatype?: string;
|
|
14
|
+
length?: number;
|
|
15
|
+
decimals?: number;
|
|
16
|
+
conversion_exit?: string;
|
|
17
|
+
lowercase?: boolean;
|
|
18
|
+
sign_exists?: boolean;
|
|
19
|
+
value_table?: string;
|
|
20
|
+
activate?: boolean;
|
|
21
|
+
fixed_values?: FixedValue[];
|
|
22
|
+
}
|
|
23
|
+
export interface UpdateDomainParams {
|
|
24
|
+
domain_name: string;
|
|
25
|
+
description?: string;
|
|
26
|
+
package_name: string;
|
|
27
|
+
transport_request?: string;
|
|
28
|
+
datatype?: string;
|
|
29
|
+
length?: number;
|
|
30
|
+
decimals?: number;
|
|
31
|
+
conversion_exit?: string;
|
|
32
|
+
lowercase?: boolean;
|
|
33
|
+
sign_exists?: boolean;
|
|
34
|
+
value_table?: string;
|
|
35
|
+
activate?: boolean;
|
|
36
|
+
fixed_values?: FixedValue[];
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/domain/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC;CAC7B"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Domain unlock operations
|
|
3
|
+
*/
|
|
4
|
+
import { AbapConnection } from '@mcp-abap-adt/connection';
|
|
5
|
+
import { AxiosResponse } from 'axios';
|
|
6
|
+
/**
|
|
7
|
+
* Unlock domain
|
|
8
|
+
* Must use same session and lock handle from lock operation
|
|
9
|
+
*/
|
|
10
|
+
export declare function unlockDomain(connection: AbapConnection, domainName: string, lockHandle: string, sessionId: string): Promise<AxiosResponse>;
|
|
11
|
+
//# sourceMappingURL=unlock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unlock.d.ts","sourceRoot":"","sources":["../../../src/core/domain/unlock.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC;;;GAGG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,CAAC,CAKxB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Domain unlock operations
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.unlockDomain = unlockDomain;
|
|
7
|
+
const internalUtils_1 = require("../../utils/internalUtils");
|
|
8
|
+
const sessionUtils_1 = require("../../utils/sessionUtils");
|
|
9
|
+
/**
|
|
10
|
+
* Unlock domain
|
|
11
|
+
* Must use same session and lock handle from lock operation
|
|
12
|
+
*/
|
|
13
|
+
async function unlockDomain(connection, domainName, lockHandle, sessionId) {
|
|
14
|
+
const domainNameEncoded = (0, internalUtils_1.encodeSapObjectName)(domainName.toLowerCase());
|
|
15
|
+
const url = `/sap/bc/adt/ddic/domains/${domainNameEncoded}?_action=UNLOCK&lockHandle=${lockHandle}`;
|
|
16
|
+
return (0, sessionUtils_1.makeAdtRequestWithSession)(connection, url, 'POST', sessionId, null);
|
|
17
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Domain update operations
|
|
3
|
+
*/
|
|
4
|
+
import { AbapConnection } from '@mcp-abap-adt/connection';
|
|
5
|
+
import { AxiosResponse } from 'axios';
|
|
6
|
+
import { UpdateDomainParams } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* Update ABAP domain
|
|
9
|
+
* Full workflow: lock -> update -> check -> unlock -> activate
|
|
10
|
+
*/
|
|
11
|
+
export declare function updateDomain(connection: AbapConnection, params: UpdateDomainParams): Promise<AxiosResponse>;
|
|
12
|
+
//# sourceMappingURL=update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/core/domain/update.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAStC,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAiG7C;;;GAGG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,aAAa,CAAC,CAgExB"}
|