@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.
Files changed (477) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +184 -0
  3. package/bin/README.md +368 -0
  4. package/bin/lock-object.js +274 -0
  5. package/bin/manage-locks.js +331 -0
  6. package/bin/manage-sessions.js +235 -0
  7. package/bin/unlock-object.js +291 -0
  8. package/bin/unlock-test-objects.js +248 -0
  9. package/dist/clients/CrudClient.d.ts +48 -0
  10. package/dist/clients/CrudClient.d.ts.map +1 -0
  11. package/dist/clients/CrudClient.js +135 -0
  12. package/dist/clients/LockClient.d.ts +28 -0
  13. package/dist/clients/LockClient.d.ts.map +1 -0
  14. package/dist/clients/LockClient.js +141 -0
  15. package/dist/clients/ManagementClient.d.ts +34 -0
  16. package/dist/clients/ManagementClient.d.ts.map +1 -0
  17. package/dist/clients/ManagementClient.js +80 -0
  18. package/dist/clients/ReadOnlyClient.d.ts +70 -0
  19. package/dist/clients/ReadOnlyClient.d.ts.map +1 -0
  20. package/dist/clients/ReadOnlyClient.js +141 -0
  21. package/dist/clients/ValidationClient.d.ts +8 -0
  22. package/dist/clients/ValidationClient.d.ts.map +1 -0
  23. package/dist/clients/ValidationClient.js +14 -0
  24. package/dist/core/class/ClassBuilder.d.ts +140 -0
  25. package/dist/core/class/ClassBuilder.d.ts.map +1 -0
  26. package/dist/core/class/ClassBuilder.js +400 -0
  27. package/dist/core/class/activation.d.ts +11 -0
  28. package/dist/core/class/activation.d.ts.map +1 -0
  29. package/dist/core/class/activation.js +16 -0
  30. package/dist/core/class/check.d.ts +24 -0
  31. package/dist/core/class/check.d.ts.map +1 -0
  32. package/dist/core/class/check.js +73 -0
  33. package/dist/core/class/create.d.ts +30 -0
  34. package/dist/core/class/create.d.ts.map +1 -0
  35. package/dist/core/class/create.js +118 -0
  36. package/dist/core/class/index.d.ts +14 -0
  37. package/dist/core/class/index.d.ts.map +1 -0
  38. package/dist/core/class/index.js +31 -0
  39. package/dist/core/class/lock.d.ts +20 -0
  40. package/dist/core/class/lock.d.ts.map +1 -0
  41. package/dist/core/class/lock.js +49 -0
  42. package/dist/core/class/read.d.ts +34 -0
  43. package/dist/core/class/read.d.ts.map +1 -0
  44. package/dist/core/class/read.js +59 -0
  45. package/dist/core/class/run.d.ts +51 -0
  46. package/dist/core/class/run.d.ts.map +1 -0
  47. package/dist/core/class/run.js +105 -0
  48. package/dist/core/class/unlock.d.ts +11 -0
  49. package/dist/core/class/unlock.d.ts.map +1 -0
  50. package/dist/core/class/unlock.js +16 -0
  51. package/dist/core/class/update.d.ts +11 -0
  52. package/dist/core/class/update.d.ts.map +1 -0
  53. package/dist/core/class/update.js +30 -0
  54. package/dist/core/class/validation.d.ts +28 -0
  55. package/dist/core/class/validation.d.ts.map +1 -0
  56. package/dist/core/class/validation.js +269 -0
  57. package/dist/core/dataElement/DataElementBuilder.d.ts +113 -0
  58. package/dist/core/dataElement/DataElementBuilder.d.ts.map +1 -0
  59. package/dist/core/dataElement/DataElementBuilder.js +449 -0
  60. package/dist/core/dataElement/activation.d.ts +11 -0
  61. package/dist/core/dataElement/activation.d.ts.map +1 -0
  62. package/dist/core/dataElement/activation.js +123 -0
  63. package/dist/core/dataElement/check.d.ts +12 -0
  64. package/dist/core/dataElement/check.d.ts.map +1 -0
  65. package/dist/core/dataElement/check.js +32 -0
  66. package/dist/core/dataElement/create.d.ts +12 -0
  67. package/dist/core/dataElement/create.d.ts.map +1 -0
  68. package/dist/core/dataElement/create.js +259 -0
  69. package/dist/core/dataElement/delete.d.ts +14 -0
  70. package/dist/core/dataElement/delete.d.ts.map +1 -0
  71. package/dist/core/dataElement/delete.js +21 -0
  72. package/dist/core/dataElement/index.d.ts +14 -0
  73. package/dist/core/dataElement/index.d.ts.map +1 -0
  74. package/dist/core/dataElement/index.js +31 -0
  75. package/dist/core/dataElement/lock.d.ts +10 -0
  76. package/dist/core/dataElement/lock.d.ts.map +1 -0
  77. package/dist/core/dataElement/lock.js +31 -0
  78. package/dist/core/dataElement/read.d.ts +17 -0
  79. package/dist/core/dataElement/read.d.ts.map +1 -0
  80. package/dist/core/dataElement/read.js +42 -0
  81. package/dist/core/dataElement/types.d.ts +64 -0
  82. package/dist/core/dataElement/types.d.ts.map +1 -0
  83. package/dist/core/dataElement/types.js +5 -0
  84. package/dist/core/dataElement/unlock.d.ts +11 -0
  85. package/dist/core/dataElement/unlock.d.ts.map +1 -0
  86. package/dist/core/dataElement/unlock.js +17 -0
  87. package/dist/core/dataElement/update.d.ts +29 -0
  88. package/dist/core/dataElement/update.d.ts.map +1 -0
  89. package/dist/core/dataElement/update.js +269 -0
  90. package/dist/core/delete.d.ts +22 -0
  91. package/dist/core/delete.d.ts.map +1 -0
  92. package/dist/core/delete.js +148 -0
  93. package/dist/core/domain/DomainBuilder.d.ts +135 -0
  94. package/dist/core/domain/DomainBuilder.d.ts.map +1 -0
  95. package/dist/core/domain/DomainBuilder.js +430 -0
  96. package/dist/core/domain/activation.d.ts +11 -0
  97. package/dist/core/domain/activation.d.ts.map +1 -0
  98. package/dist/core/domain/activation.js +16 -0
  99. package/dist/core/domain/check.d.ts +16 -0
  100. package/dist/core/domain/check.d.ts.map +1 -0
  101. package/dist/core/domain/check.js +36 -0
  102. package/dist/core/domain/create.d.ts +21 -0
  103. package/dist/core/domain/create.d.ts.map +1 -0
  104. package/dist/core/domain/create.js +172 -0
  105. package/dist/core/domain/delete.d.ts +14 -0
  106. package/dist/core/domain/delete.d.ts.map +1 -0
  107. package/dist/core/domain/delete.js +21 -0
  108. package/dist/core/domain/index.d.ts +14 -0
  109. package/dist/core/domain/index.d.ts.map +1 -0
  110. package/dist/core/domain/index.js +31 -0
  111. package/dist/core/domain/lock.d.ts +15 -0
  112. package/dist/core/domain/lock.d.ts.map +1 -0
  113. package/dist/core/domain/lock.js +61 -0
  114. package/dist/core/domain/read.d.ts +17 -0
  115. package/dist/core/domain/read.d.ts.map +1 -0
  116. package/dist/core/domain/read.js +42 -0
  117. package/dist/core/domain/types.d.ts +38 -0
  118. package/dist/core/domain/types.d.ts.map +1 -0
  119. package/dist/core/domain/types.js +5 -0
  120. package/dist/core/domain/unlock.d.ts +11 -0
  121. package/dist/core/domain/unlock.d.ts.map +1 -0
  122. package/dist/core/domain/unlock.js +17 -0
  123. package/dist/core/domain/update.d.ts +12 -0
  124. package/dist/core/domain/update.d.ts.map +1 -0
  125. package/dist/core/domain/update.js +144 -0
  126. package/dist/core/functionGroup/FunctionGroupBuilder.d.ts +91 -0
  127. package/dist/core/functionGroup/FunctionGroupBuilder.d.ts.map +1 -0
  128. package/dist/core/functionGroup/FunctionGroupBuilder.js +268 -0
  129. package/dist/core/functionGroup/activation.d.ts +10 -0
  130. package/dist/core/functionGroup/activation.d.ts.map +1 -0
  131. package/dist/core/functionGroup/activation.js +30 -0
  132. package/dist/core/functionGroup/check.d.ts +24 -0
  133. package/dist/core/functionGroup/check.d.ts.map +1 -0
  134. package/dist/core/functionGroup/check.js +91 -0
  135. package/dist/core/functionGroup/create.d.ts +12 -0
  136. package/dist/core/functionGroup/create.d.ts.map +1 -0
  137. package/dist/core/functionGroup/create.js +90 -0
  138. package/dist/core/functionGroup/delete.d.ts +14 -0
  139. package/dist/core/functionGroup/delete.d.ts.map +1 -0
  140. package/dist/core/functionGroup/delete.js +21 -0
  141. package/dist/core/functionGroup/index.d.ts +15 -0
  142. package/dist/core/functionGroup/index.d.ts.map +1 -0
  143. package/dist/core/functionGroup/index.js +32 -0
  144. package/dist/core/functionGroup/lock.d.ts +25 -0
  145. package/dist/core/functionGroup/lock.d.ts.map +1 -0
  146. package/dist/core/functionGroup/lock.js +50 -0
  147. package/dist/core/functionGroup/read.d.ts +17 -0
  148. package/dist/core/functionGroup/read.d.ts.map +1 -0
  149. package/dist/core/functionGroup/read.js +42 -0
  150. package/dist/core/functionGroup/types.d.ts +11 -0
  151. package/dist/core/functionGroup/types.d.ts.map +1 -0
  152. package/dist/core/functionGroup/types.js +5 -0
  153. package/dist/core/functionGroup/unlock.d.ts +5 -0
  154. package/dist/core/functionGroup/unlock.d.ts.map +1 -0
  155. package/dist/core/functionGroup/unlock.js +8 -0
  156. package/dist/core/functionGroup/update.d.ts +20 -0
  157. package/dist/core/functionGroup/update.d.ts.map +1 -0
  158. package/dist/core/functionGroup/update.js +119 -0
  159. package/dist/core/functionGroup/validation.d.ts +10 -0
  160. package/dist/core/functionGroup/validation.d.ts.map +1 -0
  161. package/dist/core/functionGroup/validation.js +17 -0
  162. package/dist/core/functionModule/FunctionModuleBuilder.d.ts +101 -0
  163. package/dist/core/functionModule/FunctionModuleBuilder.d.ts.map +1 -0
  164. package/dist/core/functionModule/FunctionModuleBuilder.js +314 -0
  165. package/dist/core/functionModule/activation.d.ts +10 -0
  166. package/dist/core/functionModule/activation.d.ts.map +1 -0
  167. package/dist/core/functionModule/activation.js +17 -0
  168. package/dist/core/functionModule/check.d.ts +23 -0
  169. package/dist/core/functionModule/check.d.ts.map +1 -0
  170. package/dist/core/functionModule/check.js +116 -0
  171. package/dist/core/functionModule/create.d.ts +12 -0
  172. package/dist/core/functionModule/create.d.ts.map +1 -0
  173. package/dist/core/functionModule/create.js +158 -0
  174. package/dist/core/functionModule/delete.d.ts +15 -0
  175. package/dist/core/functionModule/delete.d.ts.map +1 -0
  176. package/dist/core/functionModule/delete.js +25 -0
  177. package/dist/core/functionModule/index.d.ts +15 -0
  178. package/dist/core/functionModule/index.d.ts.map +1 -0
  179. package/dist/core/functionModule/index.js +32 -0
  180. package/dist/core/functionModule/lock.d.ts +18 -0
  181. package/dist/core/functionModule/lock.d.ts.map +1 -0
  182. package/dist/core/functionModule/lock.js +52 -0
  183. package/dist/core/functionModule/read.d.ts +31 -0
  184. package/dist/core/functionModule/read.d.ts.map +1 -0
  185. package/dist/core/functionModule/read.js +57 -0
  186. package/dist/core/functionModule/types.d.ts +19 -0
  187. package/dist/core/functionModule/types.d.ts.map +1 -0
  188. package/dist/core/functionModule/types.js +5 -0
  189. package/dist/core/functionModule/unlock.d.ts +10 -0
  190. package/dist/core/functionModule/unlock.d.ts.map +1 -0
  191. package/dist/core/functionModule/unlock.js +20 -0
  192. package/dist/core/functionModule/update.d.ts +17 -0
  193. package/dist/core/functionModule/update.d.ts.map +1 -0
  194. package/dist/core/functionModule/update.js +103 -0
  195. package/dist/core/functionModule/validation.d.ts +27 -0
  196. package/dist/core/functionModule/validation.d.ts.map +1 -0
  197. package/dist/core/functionModule/validation.js +107 -0
  198. package/dist/core/interface/InterfaceBuilder.d.ts +98 -0
  199. package/dist/core/interface/InterfaceBuilder.d.ts.map +1 -0
  200. package/dist/core/interface/InterfaceBuilder.js +311 -0
  201. package/dist/core/interface/activation.d.ts +11 -0
  202. package/dist/core/interface/activation.d.ts.map +1 -0
  203. package/dist/core/interface/activation.js +16 -0
  204. package/dist/core/interface/check.d.ts +10 -0
  205. package/dist/core/interface/check.d.ts.map +1 -0
  206. package/dist/core/interface/check.js +18 -0
  207. package/dist/core/interface/create.d.ts +12 -0
  208. package/dist/core/interface/create.d.ts.map +1 -0
  209. package/dist/core/interface/create.js +119 -0
  210. package/dist/core/interface/delete.d.ts +20 -0
  211. package/dist/core/interface/delete.d.ts.map +1 -0
  212. package/dist/core/interface/delete.js +47 -0
  213. package/dist/core/interface/index.d.ts +15 -0
  214. package/dist/core/interface/index.d.ts.map +1 -0
  215. package/dist/core/interface/index.js +32 -0
  216. package/dist/core/interface/lock.d.ts +23 -0
  217. package/dist/core/interface/lock.d.ts.map +1 -0
  218. package/dist/core/interface/lock.js +51 -0
  219. package/dist/core/interface/read.d.ts +26 -0
  220. package/dist/core/interface/read.d.ts.map +1 -0
  221. package/dist/core/interface/read.js +51 -0
  222. package/dist/core/interface/types.d.ts +19 -0
  223. package/dist/core/interface/types.d.ts.map +1 -0
  224. package/dist/core/interface/types.js +5 -0
  225. package/dist/core/interface/unlock.d.ts +11 -0
  226. package/dist/core/interface/unlock.d.ts.map +1 -0
  227. package/dist/core/interface/unlock.js +35 -0
  228. package/dist/core/interface/update.d.ts +12 -0
  229. package/dist/core/interface/update.d.ts.map +1 -0
  230. package/dist/core/interface/update.js +82 -0
  231. package/dist/core/interface/validation.d.ts +10 -0
  232. package/dist/core/interface/validation.d.ts.map +1 -0
  233. package/dist/core/interface/validation.js +17 -0
  234. package/dist/core/managementOperations.d.ts +34 -0
  235. package/dist/core/managementOperations.d.ts.map +1 -0
  236. package/dist/core/managementOperations.js +136 -0
  237. package/dist/core/package/PackageBuilder.d.ts +129 -0
  238. package/dist/core/package/PackageBuilder.d.ts.map +1 -0
  239. package/dist/core/package/PackageBuilder.js +386 -0
  240. package/dist/core/package/check.d.ts +9 -0
  241. package/dist/core/package/check.d.ts.map +1 -0
  242. package/dist/core/package/check.js +29 -0
  243. package/dist/core/package/create.d.ts +12 -0
  244. package/dist/core/package/create.d.ts.map +1 -0
  245. package/dist/core/package/create.js +145 -0
  246. package/dist/core/package/delete.d.ts +27 -0
  247. package/dist/core/package/delete.d.ts.map +1 -0
  248. package/dist/core/package/delete.js +138 -0
  249. package/dist/core/package/index.d.ts +15 -0
  250. package/dist/core/package/index.d.ts.map +1 -0
  251. package/dist/core/package/index.js +32 -0
  252. package/dist/core/package/lock.d.ts +10 -0
  253. package/dist/core/package/lock.d.ts.map +1 -0
  254. package/dist/core/package/lock.js +28 -0
  255. package/dist/core/package/read.d.ts +17 -0
  256. package/dist/core/package/read.d.ts.map +1 -0
  257. package/dist/core/package/read.js +42 -0
  258. package/dist/core/package/transportCheck.d.ts +10 -0
  259. package/dist/core/package/transportCheck.d.ts.map +1 -0
  260. package/dist/core/package/transportCheck.js +52 -0
  261. package/dist/core/package/types.d.ts +15 -0
  262. package/dist/core/package/types.d.ts.map +1 -0
  263. package/dist/core/package/types.js +5 -0
  264. package/dist/core/package/unlock.d.ts +11 -0
  265. package/dist/core/package/unlock.d.ts.map +1 -0
  266. package/dist/core/package/unlock.js +16 -0
  267. package/dist/core/package/update.d.ts +19 -0
  268. package/dist/core/package/update.d.ts.map +1 -0
  269. package/dist/core/package/update.js +125 -0
  270. package/dist/core/package/validation.d.ts +14 -0
  271. package/dist/core/package/validation.d.ts.map +1 -0
  272. package/dist/core/package/validation.js +72 -0
  273. package/dist/core/program/ProgramBuilder.d.ts +102 -0
  274. package/dist/core/program/ProgramBuilder.d.ts.map +1 -0
  275. package/dist/core/program/ProgramBuilder.js +321 -0
  276. package/dist/core/program/activation.d.ts +11 -0
  277. package/dist/core/program/activation.d.ts.map +1 -0
  278. package/dist/core/program/activation.js +16 -0
  279. package/dist/core/program/check.d.ts +10 -0
  280. package/dist/core/program/check.d.ts.map +1 -0
  281. package/dist/core/program/check.js +18 -0
  282. package/dist/core/program/create.d.ts +23 -0
  283. package/dist/core/program/create.d.ts.map +1 -0
  284. package/dist/core/program/create.js +159 -0
  285. package/dist/core/program/delete.d.ts +14 -0
  286. package/dist/core/program/delete.d.ts.map +1 -0
  287. package/dist/core/program/delete.js +21 -0
  288. package/dist/core/program/index.d.ts +14 -0
  289. package/dist/core/program/index.d.ts.map +1 -0
  290. package/dist/core/program/index.js +31 -0
  291. package/dist/core/program/lock.d.ts +20 -0
  292. package/dist/core/program/lock.d.ts.map +1 -0
  293. package/dist/core/program/lock.js +49 -0
  294. package/dist/core/program/read.d.ts +26 -0
  295. package/dist/core/program/read.d.ts.map +1 -0
  296. package/dist/core/program/read.js +51 -0
  297. package/dist/core/program/unlock.d.ts +11 -0
  298. package/dist/core/program/unlock.d.ts.map +1 -0
  299. package/dist/core/program/unlock.js +16 -0
  300. package/dist/core/program/update.d.ts +16 -0
  301. package/dist/core/program/update.d.ts.map +1 -0
  302. package/dist/core/program/update.js +82 -0
  303. package/dist/core/program/validation.d.ts +10 -0
  304. package/dist/core/program/validation.d.ts.map +1 -0
  305. package/dist/core/program/validation.js +17 -0
  306. package/dist/core/readOperations.d.ts +63 -0
  307. package/dist/core/readOperations.d.ts.map +1 -0
  308. package/dist/core/readOperations.js +204 -0
  309. package/dist/core/shared/checkRun.d.ts +68 -0
  310. package/dist/core/shared/checkRun.d.ts.map +1 -0
  311. package/dist/core/shared/checkRun.js +292 -0
  312. package/dist/core/shared/readMetadata.d.ts +16 -0
  313. package/dist/core/shared/readMetadata.d.ts.map +1 -0
  314. package/dist/core/shared/readMetadata.js +74 -0
  315. package/dist/core/shared/readSource.d.ts +21 -0
  316. package/dist/core/shared/readSource.d.ts.map +1 -0
  317. package/dist/core/shared/readSource.js +83 -0
  318. package/dist/core/shared/search.d.ts +26 -0
  319. package/dist/core/shared/search.d.ts.map +1 -0
  320. package/dist/core/shared/search.js +32 -0
  321. package/dist/core/shared/sqlQuery.d.ts +22 -0
  322. package/dist/core/shared/sqlQuery.d.ts.map +1 -0
  323. package/dist/core/shared/sqlQuery.js +36 -0
  324. package/dist/core/shared/systemInfo.d.ts +22 -0
  325. package/dist/core/shared/systemInfo.d.ts.map +1 -0
  326. package/dist/core/shared/systemInfo.js +67 -0
  327. package/dist/core/shared/tableContents.d.ts +22 -0
  328. package/dist/core/shared/tableContents.d.ts.map +1 -0
  329. package/dist/core/shared/tableContents.js +89 -0
  330. package/dist/core/shared/validation.d.ts +26 -0
  331. package/dist/core/shared/validation.d.ts.map +1 -0
  332. package/dist/core/shared/validation.js +134 -0
  333. package/dist/core/shared/whereUsed.d.ts +19 -0
  334. package/dist/core/shared/whereUsed.d.ts.map +1 -0
  335. package/dist/core/shared/whereUsed.js +88 -0
  336. package/dist/core/structure/StructureBuilder.d.ts +124 -0
  337. package/dist/core/structure/StructureBuilder.d.ts.map +1 -0
  338. package/dist/core/structure/StructureBuilder.js +357 -0
  339. package/dist/core/structure/activation.d.ts +10 -0
  340. package/dist/core/structure/activation.d.ts.map +1 -0
  341. package/dist/core/structure/activation.js +15 -0
  342. package/dist/core/structure/check.d.ts +12 -0
  343. package/dist/core/structure/check.d.ts.map +1 -0
  344. package/dist/core/structure/check.js +44 -0
  345. package/dist/core/structure/create.d.ts +12 -0
  346. package/dist/core/structure/create.d.ts.map +1 -0
  347. package/dist/core/structure/create.js +136 -0
  348. package/dist/core/structure/delete.d.ts +14 -0
  349. package/dist/core/structure/delete.d.ts.map +1 -0
  350. package/dist/core/structure/delete.js +21 -0
  351. package/dist/core/structure/index.d.ts +15 -0
  352. package/dist/core/structure/index.d.ts.map +1 -0
  353. package/dist/core/structure/index.js +32 -0
  354. package/dist/core/structure/lock.d.ts +10 -0
  355. package/dist/core/structure/lock.d.ts.map +1 -0
  356. package/dist/core/structure/lock.js +28 -0
  357. package/dist/core/structure/read.d.ts +26 -0
  358. package/dist/core/structure/read.d.ts.map +1 -0
  359. package/dist/core/structure/read.js +51 -0
  360. package/dist/core/structure/types.d.ts +33 -0
  361. package/dist/core/structure/types.d.ts.map +1 -0
  362. package/dist/core/structure/types.js +5 -0
  363. package/dist/core/structure/unlock.d.ts +11 -0
  364. package/dist/core/structure/unlock.d.ts.map +1 -0
  365. package/dist/core/structure/unlock.js +16 -0
  366. package/dist/core/structure/update.d.ts +11 -0
  367. package/dist/core/structure/update.d.ts.map +1 -0
  368. package/dist/core/structure/update.js +26 -0
  369. package/dist/core/structure/validation.d.ts +10 -0
  370. package/dist/core/structure/validation.d.ts.map +1 -0
  371. package/dist/core/structure/validation.js +17 -0
  372. package/dist/core/table/TableBuilder.d.ts +115 -0
  373. package/dist/core/table/TableBuilder.d.ts.map +1 -0
  374. package/dist/core/table/TableBuilder.js +328 -0
  375. package/dist/core/table/activation.d.ts +10 -0
  376. package/dist/core/table/activation.d.ts.map +1 -0
  377. package/dist/core/table/activation.js +15 -0
  378. package/dist/core/table/check.d.ts +11 -0
  379. package/dist/core/table/check.d.ts.map +1 -0
  380. package/dist/core/table/check.js +30 -0
  381. package/dist/core/table/create.d.ts +12 -0
  382. package/dist/core/table/create.d.ts.map +1 -0
  383. package/dist/core/table/create.js +182 -0
  384. package/dist/core/table/delete.d.ts +14 -0
  385. package/dist/core/table/delete.d.ts.map +1 -0
  386. package/dist/core/table/delete.js +21 -0
  387. package/dist/core/table/index.d.ts +15 -0
  388. package/dist/core/table/index.d.ts.map +1 -0
  389. package/dist/core/table/index.js +32 -0
  390. package/dist/core/table/lock.d.ts +9 -0
  391. package/dist/core/table/lock.d.ts.map +1 -0
  392. package/dist/core/table/lock.js +29 -0
  393. package/dist/core/table/read.d.ts +26 -0
  394. package/dist/core/table/read.d.ts.map +1 -0
  395. package/dist/core/table/read.js +51 -0
  396. package/dist/core/table/types.d.ts +10 -0
  397. package/dist/core/table/types.d.ts.map +1 -0
  398. package/dist/core/table/types.js +5 -0
  399. package/dist/core/table/unlock.d.ts +15 -0
  400. package/dist/core/table/unlock.d.ts.map +1 -0
  401. package/dist/core/table/unlock.js +32 -0
  402. package/dist/core/table/update.d.ts +16 -0
  403. package/dist/core/table/update.d.ts.map +1 -0
  404. package/dist/core/table/update.js +32 -0
  405. package/dist/core/table/validation.d.ts +10 -0
  406. package/dist/core/table/validation.d.ts.map +1 -0
  407. package/dist/core/table/validation.js +17 -0
  408. package/dist/core/transport/TransportBuilder.d.ts +85 -0
  409. package/dist/core/transport/TransportBuilder.d.ts.map +1 -0
  410. package/dist/core/transport/TransportBuilder.js +154 -0
  411. package/dist/core/transport/create.d.ts +11 -0
  412. package/dist/core/transport/create.d.ts.map +1 -0
  413. package/dist/core/transport/create.js +157 -0
  414. package/dist/core/transport/index.d.ts +8 -0
  415. package/dist/core/transport/index.d.ts.map +1 -0
  416. package/dist/core/transport/index.js +25 -0
  417. package/dist/core/transport/read.d.ts +10 -0
  418. package/dist/core/transport/read.d.ts.map +1 -0
  419. package/dist/core/transport/read.js +22 -0
  420. package/dist/core/transport/types.d.ts +10 -0
  421. package/dist/core/transport/types.d.ts.map +1 -0
  422. package/dist/core/transport/types.js +5 -0
  423. package/dist/core/view/ViewBuilder.d.ts +117 -0
  424. package/dist/core/view/ViewBuilder.d.ts.map +1 -0
  425. package/dist/core/view/ViewBuilder.js +335 -0
  426. package/dist/core/view/activation.d.ts +10 -0
  427. package/dist/core/view/activation.d.ts.map +1 -0
  428. package/dist/core/view/activation.js +15 -0
  429. package/dist/core/view/check.d.ts +7 -0
  430. package/dist/core/view/check.d.ts.map +1 -0
  431. package/dist/core/view/check.js +57 -0
  432. package/dist/core/view/create.d.ts +12 -0
  433. package/dist/core/view/create.d.ts.map +1 -0
  434. package/dist/core/view/create.js +88 -0
  435. package/dist/core/view/delete.d.ts +14 -0
  436. package/dist/core/view/delete.d.ts.map +1 -0
  437. package/dist/core/view/delete.js +21 -0
  438. package/dist/core/view/index.d.ts +15 -0
  439. package/dist/core/view/index.d.ts.map +1 -0
  440. package/dist/core/view/index.js +32 -0
  441. package/dist/core/view/lock.d.ts +18 -0
  442. package/dist/core/view/lock.d.ts.map +1 -0
  443. package/dist/core/view/lock.js +45 -0
  444. package/dist/core/view/read.d.ts +26 -0
  445. package/dist/core/view/read.d.ts.map +1 -0
  446. package/dist/core/view/read.js +51 -0
  447. package/dist/core/view/types.d.ts +19 -0
  448. package/dist/core/view/types.d.ts.map +1 -0
  449. package/dist/core/view/types.js +5 -0
  450. package/dist/core/view/unlock.d.ts +10 -0
  451. package/dist/core/view/unlock.d.ts.map +1 -0
  452. package/dist/core/view/unlock.js +15 -0
  453. package/dist/core/view/update.d.ts +12 -0
  454. package/dist/core/view/update.d.ts.map +1 -0
  455. package/dist/core/view/update.js +89 -0
  456. package/dist/core/view/validation.d.ts +10 -0
  457. package/dist/core/view/validation.d.ts.map +1 -0
  458. package/dist/core/view/validation.js +17 -0
  459. package/dist/core.d.ts +133 -0
  460. package/dist/core.d.ts.map +1 -0
  461. package/dist/core.js +175 -0
  462. package/dist/index.d.ts +38 -0
  463. package/dist/index.d.ts.map +1 -0
  464. package/dist/index.js +60 -0
  465. package/dist/utils/activationUtils.d.ts +44 -0
  466. package/dist/utils/activationUtils.d.ts.map +1 -0
  467. package/dist/utils/activationUtils.js +127 -0
  468. package/dist/utils/internalUtils.d.ts +12 -0
  469. package/dist/utils/internalUtils.d.ts.map +1 -0
  470. package/dist/utils/internalUtils.js +16 -0
  471. package/dist/utils/lockStateManager.d.ts +64 -0
  472. package/dist/utils/lockStateManager.d.ts.map +1 -0
  473. package/dist/utils/lockStateManager.js +172 -0
  474. package/dist/utils/sessionUtils.d.ts +69 -0
  475. package/dist/utils/sessionUtils.d.ts.map +1 -0
  476. package/dist/utils/sessionUtils.js +134 -0
  477. package/package.json +75 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/table/TableBuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,328 @@
1
+ "use strict";
2
+ /**
3
+ * TableBuilder - Fluent API for table operations with Promise chaining
4
+ *
5
+ * Supports:
6
+ * - Method chaining: builder.create().then(b => b.lock()).then(b => b.update())...
7
+ * - Error handling: .catch() for error callbacks
8
+ * - Cleanup: .finally() for guaranteed execution
9
+ * - Result storage: all results stored in logger/state
10
+ * - Chain interruption: chain stops on first error (standard Promise behavior)
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * const builder = new TableBuilder(connection, logger, {
15
+ * tableName: 'Z_TEST_TABLE',
16
+ * packageName: 'ZOK_TEST_PKG_01'
17
+ * });
18
+ *
19
+ * await builder
20
+ * .setDdlCode('@AbapCatalog.tableType : #TRANSPARENT\n...')
21
+ * .create()
22
+ * .then(b => b.lock())
23
+ * .then(b => b.update())
24
+ * .then(b => b.check())
25
+ * .then(b => b.unlock())
26
+ * .then(b => b.activate())
27
+ * .catch(error => {
28
+ * logger.error('Operation failed:', error);
29
+ * });
30
+ * ```
31
+ */
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.TableBuilder = void 0;
34
+ const sessionUtils_1 = require("../../utils/sessionUtils");
35
+ const create_1 = require("./create");
36
+ const lock_1 = require("./lock");
37
+ const update_1 = require("./update");
38
+ const check_1 = require("./check");
39
+ const unlock_1 = require("./unlock");
40
+ const activation_1 = require("./activation");
41
+ const validation_1 = require("./validation");
42
+ const read_1 = require("./read");
43
+ class TableBuilder {
44
+ connection;
45
+ logger;
46
+ config;
47
+ lockHandle;
48
+ sessionId;
49
+ state;
50
+ constructor(connection, logger, config) {
51
+ this.connection = connection;
52
+ this.logger = logger;
53
+ this.config = { ...config };
54
+ this.sessionId = config.sessionId || (0, sessionUtils_1.generateSessionId)();
55
+ this.state = {
56
+ errors: []
57
+ };
58
+ }
59
+ // Builder methods - return this for chaining
60
+ setPackage(packageName) {
61
+ this.config.packageName = packageName;
62
+ this.logger.debug?.('Package set:', packageName);
63
+ return this;
64
+ }
65
+ setRequest(transportRequest) {
66
+ this.config.transportRequest = transportRequest;
67
+ this.logger.debug?.('Transport request set:', transportRequest);
68
+ return this;
69
+ }
70
+ setName(tableName) {
71
+ this.config.tableName = tableName;
72
+ this.logger.debug?.('Table name set:', tableName);
73
+ return this;
74
+ }
75
+ setDdlCode(ddlCode) {
76
+ this.config.ddlCode = ddlCode;
77
+ this.logger.debug?.('DDL code set, length:', ddlCode.length);
78
+ return this;
79
+ }
80
+ // Operation methods - return Promise<this> for Promise chaining
81
+ async validate() {
82
+ try {
83
+ this.logger.info?.('Validating table name:', this.config.tableName);
84
+ const result = await (0, validation_1.validateTableName)(this.connection, this.config.tableName);
85
+ this.state.validationResult = result;
86
+ if (!result.valid) {
87
+ throw new Error(`Table name validation failed: ${result.message}`);
88
+ }
89
+ this.logger.info?.('Table name validation successful');
90
+ return this;
91
+ }
92
+ catch (error) {
93
+ this.state.errors.push({
94
+ method: 'validate',
95
+ error: error instanceof Error ? error : new Error(String(error)),
96
+ timestamp: new Date()
97
+ });
98
+ this.logger.error?.('Validation failed:', error);
99
+ throw error;
100
+ }
101
+ }
102
+ async create() {
103
+ try {
104
+ if (!this.config.packageName) {
105
+ throw new Error('Package name is required');
106
+ }
107
+ if (!this.config.ddlCode) {
108
+ throw new Error('DDL code is required');
109
+ }
110
+ this.logger.info?.('Creating table:', this.config.tableName);
111
+ const params = {
112
+ table_name: this.config.tableName,
113
+ ddl_code: this.config.ddlCode,
114
+ package_name: this.config.packageName,
115
+ transport_request: this.config.transportRequest
116
+ };
117
+ const result = await (0, create_1.createTable)(this.connection, params);
118
+ this.state.createResult = result;
119
+ this.logger.info?.('Table created successfully:', result.status);
120
+ return this;
121
+ }
122
+ catch (error) {
123
+ this.state.errors.push({
124
+ method: 'create',
125
+ error: error instanceof Error ? error : new Error(String(error)),
126
+ timestamp: new Date()
127
+ });
128
+ this.logger.error?.('Create failed:', error);
129
+ throw error;
130
+ }
131
+ }
132
+ async lock() {
133
+ try {
134
+ this.logger.info?.('Locking table:', this.config.tableName);
135
+ const lockHandle = await (0, lock_1.acquireTableLockHandle)(this.connection, this.config.tableName, this.sessionId);
136
+ this.lockHandle = lockHandle;
137
+ this.state.lockHandle = lockHandle;
138
+ // Register lock in persistent storage if callback provided
139
+ if (this.config.onLock) {
140
+ this.config.onLock(lockHandle, this.sessionId);
141
+ }
142
+ this.logger.info?.('Table locked, handle:', lockHandle.substring(0, 10) + '...');
143
+ return this;
144
+ }
145
+ catch (error) {
146
+ this.state.errors.push({
147
+ method: 'lock',
148
+ error: error instanceof Error ? error : new Error(String(error)),
149
+ timestamp: new Date()
150
+ });
151
+ this.logger.error?.('Lock failed:', error);
152
+ throw error;
153
+ }
154
+ }
155
+ async update() {
156
+ try {
157
+ if (!this.lockHandle) {
158
+ throw new Error('Table must be locked before update. Call lock() first.');
159
+ }
160
+ if (!this.config.ddlCode) {
161
+ throw new Error('DDL code is required');
162
+ }
163
+ this.logger.info?.('Updating table:', this.config.tableName);
164
+ const params = {
165
+ table_name: this.config.tableName,
166
+ ddl_code: this.config.ddlCode,
167
+ transport_request: this.config.transportRequest,
168
+ activate: false
169
+ };
170
+ const result = await (0, update_1.updateTable)(this.connection, params, this.lockHandle, this.sessionId);
171
+ this.state.updateResult = result;
172
+ this.logger.info?.('Table updated successfully:', result.status);
173
+ return this;
174
+ }
175
+ catch (error) {
176
+ this.state.errors.push({
177
+ method: 'update',
178
+ error: error instanceof Error ? error : new Error(String(error)),
179
+ timestamp: new Date()
180
+ });
181
+ this.logger.error?.('Update failed:', error);
182
+ throw error;
183
+ }
184
+ }
185
+ async check(reporter = 'abapCheckRun') {
186
+ try {
187
+ this.logger.info?.('Checking table:', this.config.tableName, 'reporter:', reporter);
188
+ const result = await (0, check_1.runTableCheckRun)(this.connection, reporter, this.config.tableName, this.sessionId);
189
+ this.state.checkResult = result;
190
+ this.logger.info?.('Table check successful:', result.status);
191
+ return this;
192
+ }
193
+ catch (error) {
194
+ this.state.errors.push({
195
+ method: 'check',
196
+ error: error instanceof Error ? error : new Error(String(error)),
197
+ timestamp: new Date()
198
+ });
199
+ this.logger.error?.('Check failed:', error);
200
+ throw error;
201
+ }
202
+ }
203
+ async unlock() {
204
+ try {
205
+ if (!this.lockHandle) {
206
+ throw new Error('Table is not locked. Call lock() first.');
207
+ }
208
+ this.logger.info?.('Unlocking table:', this.config.tableName);
209
+ const result = await (0, unlock_1.unlockTable)(this.connection, this.config.tableName, this.lockHandle, this.sessionId);
210
+ this.state.unlockResult = result;
211
+ this.lockHandle = undefined;
212
+ this.state.lockHandle = undefined;
213
+ this.logger.info?.('Table unlocked successfully');
214
+ return this;
215
+ }
216
+ catch (error) {
217
+ this.state.errors.push({
218
+ method: 'unlock',
219
+ error: error instanceof Error ? error : new Error(String(error)),
220
+ timestamp: new Date()
221
+ });
222
+ this.logger.error?.('Unlock failed:', error);
223
+ throw error;
224
+ }
225
+ }
226
+ async activate() {
227
+ try {
228
+ this.logger.info?.('Activating table:', this.config.tableName);
229
+ const result = await (0, activation_1.activateTable)(this.connection, this.config.tableName, this.sessionId);
230
+ this.state.activateResult = result;
231
+ this.logger.info?.('Table activated successfully:', result.status);
232
+ return this;
233
+ }
234
+ catch (error) {
235
+ this.state.errors.push({
236
+ method: 'activate',
237
+ error: error instanceof Error ? error : new Error(String(error)),
238
+ timestamp: new Date()
239
+ });
240
+ this.logger.error?.('Activate failed:', error);
241
+ throw error;
242
+ }
243
+ }
244
+ async read(version = 'active') {
245
+ try {
246
+ this.logger.info?.('Reading table:', this.config.tableName);
247
+ const result = await (0, read_1.getTableSource)(this.connection, this.config.tableName);
248
+ this.state.readResult = result;
249
+ this.logger.info?.('Table read successfully:', result.status);
250
+ return this;
251
+ }
252
+ catch (error) {
253
+ this.state.errors.push({
254
+ method: 'read',
255
+ error: error instanceof Error ? error : new Error(String(error)),
256
+ timestamp: new Date()
257
+ });
258
+ this.logger.error?.('Read failed:', error);
259
+ throw error;
260
+ }
261
+ }
262
+ async forceUnlock() {
263
+ if (!this.lockHandle) {
264
+ return;
265
+ }
266
+ try {
267
+ await (0, unlock_1.unlockTable)(this.connection, this.config.tableName, this.lockHandle, this.sessionId);
268
+ this.logger.info?.('Force unlock successful for', this.config.tableName);
269
+ }
270
+ catch (error) {
271
+ this.logger.warn?.('Force unlock failed:', error);
272
+ }
273
+ finally {
274
+ this.lockHandle = undefined;
275
+ this.state.lockHandle = undefined;
276
+ }
277
+ }
278
+ // Getters for accessing results
279
+ getState() {
280
+ return { ...this.state };
281
+ }
282
+ getTableName() {
283
+ return this.config.tableName;
284
+ }
285
+ getLockHandle() {
286
+ return this.lockHandle;
287
+ }
288
+ getSessionId() {
289
+ return this.sessionId;
290
+ }
291
+ getValidationResult() {
292
+ return this.state.validationResult;
293
+ }
294
+ getCreateResult() {
295
+ return this.state.createResult;
296
+ }
297
+ getUpdateResult() {
298
+ return this.state.updateResult;
299
+ }
300
+ getCheckResult() {
301
+ return this.state.checkResult;
302
+ }
303
+ getUnlockResult() {
304
+ return this.state.unlockResult;
305
+ }
306
+ getActivateResult() {
307
+ return this.state.activateResult;
308
+ }
309
+ getReadResult() {
310
+ return this.state.readResult;
311
+ }
312
+ getErrors() {
313
+ return [...this.state.errors];
314
+ }
315
+ getResults() {
316
+ return {
317
+ validate: this.state.validationResult,
318
+ create: this.state.createResult,
319
+ update: this.state.updateResult,
320
+ check: this.state.checkResult,
321
+ unlock: this.state.unlockResult,
322
+ activate: this.state.activateResult,
323
+ lockHandle: this.lockHandle,
324
+ errors: [...this.state.errors]
325
+ };
326
+ }
327
+ }
328
+ exports.TableBuilder = TableBuilder;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Table activation operations
3
+ */
4
+ import { AbapConnection } from '@mcp-abap-adt/connection';
5
+ import { AxiosResponse } from 'axios';
6
+ /**
7
+ * Activate the table after creation
8
+ */
9
+ export declare function activateTable(connection: AbapConnection, tableName: string, sessionId: string): Promise<AxiosResponse>;
10
+ //# sourceMappingURL=activation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"activation.d.ts","sourceRoot":"","sources":["../../../src/core/table/activation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAItC;;GAEG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,CAAC,CAGxB"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /**
3
+ * Table activation operations
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.activateTable = activateTable;
7
+ const internalUtils_1 = require("../../utils/internalUtils");
8
+ const activationUtils_1 = require("../../utils/activationUtils");
9
+ /**
10
+ * Activate the table after creation
11
+ */
12
+ async function activateTable(connection, tableName, sessionId) {
13
+ const objectUri = `/sap/bc/adt/ddic/tables/${(0, internalUtils_1.encodeSapObjectName)(tableName)}`;
14
+ return await (0, activationUtils_1.activateObjectInSession)(connection, objectUri, tableName, sessionId, true);
15
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Table check operations
3
+ */
4
+ import { AbapConnection } from '@mcp-abap-adt/connection';
5
+ import { AxiosResponse } from 'axios';
6
+ /**
7
+ * Run check run for table
8
+ * Note: This is a table-specific check function. For generic check, use runCheckRun from shared/checkRun
9
+ */
10
+ export declare function runTableCheckRun(connection: AbapConnection, reporter: 'tableStatusCheck' | 'abapCheckRun', tableName: string, sessionId: string): Promise<AxiosResponse>;
11
+ //# sourceMappingURL=check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/core/table/check.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAetC;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,cAAc,EAC1B,QAAQ,EAAE,kBAAkB,GAAG,cAAc,EAC7C,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,CAAC,CAQxB"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ /**
3
+ * Table check operations
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.runTableCheckRun = runTableCheckRun;
7
+ const internalUtils_1 = require("../../utils/internalUtils");
8
+ const sessionUtils_1 = require("../../utils/sessionUtils");
9
+ /**
10
+ * Build check run XML payload
11
+ */
12
+ function buildCheckRunPayload(tableName) {
13
+ const uriName = (0, internalUtils_1.encodeSapObjectName)(tableName).toLowerCase();
14
+ return `<?xml version="1.0" encoding="UTF-8"?><chkrun:checkObjectList xmlns:chkrun="http://www.sap.com/adt/checkrun" xmlns:adtcore="http://www.sap.com/adt/core">
15
+ <chkrun:checkObject adtcore:uri="/sap/bc/adt/ddic/tables/${uriName}" chkrun:version="new"/>
16
+ </chkrun:checkObjectList>`;
17
+ }
18
+ /**
19
+ * Run check run for table
20
+ * Note: This is a table-specific check function. For generic check, use runCheckRun from shared/checkRun
21
+ */
22
+ async function runTableCheckRun(connection, reporter, tableName, sessionId) {
23
+ const payload = buildCheckRunPayload(tableName);
24
+ const headers = {
25
+ 'Accept': 'application/vnd.sap.adt.checkmessages+xml',
26
+ 'Content-Type': 'application/vnd.sap.adt.checkobjects+xml'
27
+ };
28
+ const url = `/sap/bc/adt/checkruns?reporters=${reporter}`;
29
+ return (0, sessionUtils_1.makeAdtRequestWithSession)(connection, url, 'POST', sessionId, payload, headers);
30
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Table create operations
3
+ */
4
+ import { AbapConnection } from '@mcp-abap-adt/connection';
5
+ import { AxiosResponse } from 'axios';
6
+ import { CreateTableParams } from './types';
7
+ /**
8
+ * Create ABAP table
9
+ * Full workflow: create empty -> check status -> lock -> add DDL -> check -> unlock -> activate -> verify
10
+ */
11
+ export declare function createTable(connection: AbapConnection, params: CreateTableParams): Promise<AxiosResponse>;
12
+ //# sourceMappingURL=create.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/core/table/create.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAc,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAQtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AA+D5C;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,aAAa,CAAC,CA6HxB"}
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+ /**
3
+ * Table create operations
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createTable = createTable;
7
+ const connection_1 = require("@mcp-abap-adt/connection");
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
+ const lock_1 = require("./lock");
12
+ const unlock_1 = require("./unlock");
13
+ const activation_1 = require("./activation");
14
+ const check_1 = require("./check");
15
+ /**
16
+ * Parse XML response to extract table creation information
17
+ */
18
+ function parseTableCreationResponse(xml) {
19
+ const parser = new fast_xml_parser_1.XMLParser({
20
+ ignoreAttributes: false,
21
+ attributeNamePrefix: '',
22
+ parseAttributeValue: true,
23
+ trimValues: true
24
+ });
25
+ try {
26
+ const result = parser.parse(xml);
27
+ if (result.error || result['asx:abap']?.['asx:values']?.ERROR) {
28
+ const errorMsg = result.error?.message ||
29
+ result['asx:abap']?.['asx:values']?.ERROR?.MESSAGE ||
30
+ 'Unknown error during table creation';
31
+ throw new Error(errorMsg);
32
+ }
33
+ if (result['ddic:table']) {
34
+ const table = result['ddic:table'];
35
+ return {
36
+ name: table['adtcore:name'],
37
+ description: table['adtcore:description'],
38
+ package: table['adtcore:packageRef']?.['adtcore:name'],
39
+ status: 'created',
40
+ objectType: 'table'
41
+ };
42
+ }
43
+ return { raw: result, status: 'created' };
44
+ }
45
+ catch (parseError) {
46
+ return {
47
+ raw_xml: xml,
48
+ status: 'created',
49
+ note: 'XML parsing failed, but table creation might have succeeded'
50
+ };
51
+ }
52
+ }
53
+ /**
54
+ * Verify table exists and get its details
55
+ */
56
+ async function verifyTableCreation(connection, tableName) {
57
+ const baseUrl = await connection.getBaseUrl();
58
+ const url = `${baseUrl}/sap/bc/adt/ddic/tables/${(0, internalUtils_1.encodeSapObjectName)(tableName)}/source/main`;
59
+ return connection.makeAdtRequest({
60
+ url,
61
+ method: 'GET',
62
+ timeout: (0, connection_1.getTimeout)('default'),
63
+ headers: {}
64
+ });
65
+ }
66
+ /**
67
+ * Create ABAP table
68
+ * Full workflow: create empty -> check status -> lock -> add DDL -> check -> unlock -> activate -> verify
69
+ */
70
+ async function createTable(connection, params) {
71
+ if (!params.table_name) {
72
+ throw new Error('Table name is required');
73
+ }
74
+ if (!params.ddl_code) {
75
+ throw new Error('DDL code is required');
76
+ }
77
+ if (!params.package_name) {
78
+ throw new Error('Package name is required');
79
+ }
80
+ const sessionId = (0, sessionUtils_1.generateSessionId)();
81
+ let lockHandle = null;
82
+ try {
83
+ // Step 1: Create empty table with POST
84
+ const createUrl = `/sap/bc/adt/ddic/tables${params.transport_request ? `?corrNr=${params.transport_request}` : ''}`;
85
+ const tableXml = `<?xml version="1.0" encoding="UTF-8"?><blue:blueSource xmlns:blue="http://www.sap.com/wbobj/blue" xmlns:adtcore="http://www.sap.com/adt/core" adtcore:description="${params.table_name}" adtcore:language="EN" adtcore:name="${params.table_name.toUpperCase()}" adtcore:type="TABL/DT" adtcore:masterLanguage="EN" adtcore:masterSystem="${process.env.SAP_SYSTEM || process.env.SAP_SYSTEM_ID || 'DEV'}" adtcore:responsible="${process.env.SAP_USER || process.env.SAP_USERNAME || 'DEVELOPER'}">
86
+
87
+ <adtcore:packageRef adtcore:name="${params.package_name.toUpperCase()}"/>
88
+
89
+ </blue:blueSource>`;
90
+ const headers = {
91
+ 'Accept': 'application/vnd.sap.adt.blues.v1+xml, application/vnd.sap.adt.tables.v2+xml',
92
+ 'Content-Type': 'application/vnd.sap.adt.tables.v2+xml'
93
+ };
94
+ const createResponse = await (0, sessionUtils_1.makeAdtRequestWithSession)(connection, createUrl, 'POST', sessionId, tableXml, headers);
95
+ // Step 1.1: Run table status check before locking (optional, continue on error)
96
+ try {
97
+ await (0, check_1.runTableCheckRun)(connection, 'tableStatusCheck', params.table_name, sessionId);
98
+ }
99
+ catch (statusError) {
100
+ // Continue even if status check fails
101
+ }
102
+ // Step 1.2: Get lockHandle for the created table
103
+ lockHandle = await (0, lock_1.acquireTableLockHandle)(connection, params.table_name, sessionId);
104
+ // Step 1.3: Add DDL content to the table with lockHandle
105
+ const ddlUrl = `/sap/bc/adt/ddic/tables/${(0, internalUtils_1.encodeSapObjectName)(params.table_name)}/source/main?lockHandle=${lockHandle}${params.transport_request ? `&corrNr=${params.transport_request}` : ''}`;
106
+ const ddlHeaders = {
107
+ 'Accept': 'application/xml, application/json, text/plain, */*',
108
+ 'Content-Type': 'text/plain; charset=utf-8'
109
+ };
110
+ const ddlResponse = await (0, sessionUtils_1.makeAdtRequestWithSession)(connection, ddlUrl, 'PUT', sessionId, params.ddl_code, ddlHeaders);
111
+ parseTableCreationResponse(ddlResponse.data);
112
+ // Step 1.3.1: Run ABAP check before unlock (optional, continue on error)
113
+ try {
114
+ await (0, check_1.runTableCheckRun)(connection, 'abapCheckRun', params.table_name, sessionId);
115
+ }
116
+ catch (checkError) {
117
+ // Continue even if check fails
118
+ }
119
+ // Step 1.4: Unlock the table after DDL content is added
120
+ try {
121
+ await (0, unlock_1.unlockTable)(connection, params.table_name, lockHandle, sessionId);
122
+ lockHandle = null;
123
+ }
124
+ catch (unlockError) {
125
+ try {
126
+ await (0, unlock_1.deleteTableLock)(connection, params.table_name);
127
+ }
128
+ catch (cleanupError) {
129
+ // Ignore cleanup errors
130
+ }
131
+ }
132
+ // Step 2: Activate table
133
+ let activationAttempt = 0;
134
+ const maxActivationAttempts = 2;
135
+ while (activationAttempt < maxActivationAttempts) {
136
+ activationAttempt++;
137
+ try {
138
+ await (0, activation_1.activateTable)(connection, params.table_name, sessionId);
139
+ break;
140
+ }
141
+ catch (attemptError) {
142
+ if (attemptError.response?.data?.includes('No active nametab')) {
143
+ try {
144
+ await (0, check_1.runTableCheckRun)(connection, 'abapCheckRun', params.table_name, sessionId);
145
+ }
146
+ catch (retryCheckError) {
147
+ // Ignore
148
+ }
149
+ if (activationAttempt < maxActivationAttempts) {
150
+ continue;
151
+ }
152
+ }
153
+ if (activationAttempt >= maxActivationAttempts) {
154
+ break;
155
+ }
156
+ throw attemptError;
157
+ }
158
+ }
159
+ // Return the real response from SAP (from initial POST)
160
+ return createResponse;
161
+ }
162
+ catch (error) {
163
+ // Try to unlock if we have a lock handle
164
+ if (lockHandle) {
165
+ try {
166
+ await (0, unlock_1.unlockTable)(connection, params.table_name, lockHandle, sessionId);
167
+ }
168
+ catch (unlockError) {
169
+ try {
170
+ await (0, unlock_1.deleteTableLock)(connection, params.table_name);
171
+ }
172
+ catch (cleanupError) {
173
+ // Ignore
174
+ }
175
+ }
176
+ }
177
+ const errorMessage = error.response?.data
178
+ ? (typeof error.response.data === 'string' ? error.response.data : JSON.stringify(error.response.data))
179
+ : error.message;
180
+ throw new Error(`Failed to create table ${params.table_name}: ${errorMessage}`);
181
+ }
182
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Table delete operations
3
+ */
4
+ import { AbapConnection } from '@mcp-abap-adt/connection';
5
+ import { AxiosResponse } from 'axios';
6
+ export interface DeleteTableParams {
7
+ table_name: string;
8
+ transport_request?: string;
9
+ }
10
+ /**
11
+ * Delete ABAP table
12
+ */
13
+ export declare function deleteTable(connection: AbapConnection, params: DeleteTableParams): Promise<AxiosResponse>;
14
+ //# sourceMappingURL=delete.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/core/table/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,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,cAAc,EAC1B,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,aAAa,CAAC,CAYxB"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ /**
3
+ * Table delete operations
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.deleteTable = deleteTable;
7
+ const delete_1 = require("../delete");
8
+ /**
9
+ * Delete ABAP table
10
+ */
11
+ async function deleteTable(connection, params) {
12
+ if (!params.table_name) {
13
+ throw new Error('table_name is required');
14
+ }
15
+ const deleteParams = {
16
+ object_name: params.table_name,
17
+ object_type: 'TABL/DT',
18
+ transport_request: params.transport_request
19
+ };
20
+ return await (0, delete_1.deleteObject)(connection, deleteParams);
21
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Table operations - exports
3
+ */
4
+ export * from './types';
5
+ export * from './create';
6
+ export * from './read';
7
+ export * from './update';
8
+ export * from './delete';
9
+ export * from './lock';
10
+ export * from './unlock';
11
+ export * from './activation';
12
+ export * from './check';
13
+ export * from './validation';
14
+ export { TableBuilder, type TableBuilderConfig, type TableBuilderLogger, type TableBuilderState } from './TableBuilder';
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/table/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,KAAK,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}