@mcp-abap-adt/adt-clients 7.3.0 → 7.3.1

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.
@@ -10,9 +10,8 @@
10
10
  * Unsupported operations (message classes are not activatable):
11
11
  * - activate, check, getVersions, getVersionSource → throwUnsupportedOperation
12
12
  *
13
- * transport / corrNr: parsed in config but not sent in requests yet.
14
- * Task 6.2 will wire it for transportable packages after a probe confirms the
15
- * corrNr query parameter is accepted by the endpoint.
13
+ * transport: config.transportRequest is sent as corrNr on create/update and as
14
+ * <del:transportNumber> on delete (transportable packages); local packages send none.
16
15
  */
17
16
  import type { IAbapConnection, IAdtObject, IAdtOperationOptions, ILogger, IObjectVersion } from '@mcp-abap-adt/interfaces';
18
17
  import type { IAdtSystemContext } from '../../clients/AdtClient';
@@ -1 +1 @@
1
- {"version":3,"file":"AdtMessageClass.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/AdtMessageClass.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAEV,eAAe,EACf,UAAU,EACV,oBAAoB,EACpB,OAAO,EACP,cAAc,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAQjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAOvE,qBAAa,eACX,YAAW,UAAU,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;IAE9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IAClD,SAAgB,UAAU,EAAE,MAAM,CAAkB;gBAGlD,UAAU,EAAE,eAAe,EAC3B,MAAM,CAAC,EAAE,OAAO,EAChB,aAAa,CAAC,EAAE,iBAAiB;IAOnC;;OAEG;IACG,QAAQ,CACZ,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,kBAAkB,CAAC;IAqB9B;;;OAGG;IACG,MAAM,CACV,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;IAoC9B;;;OAGG;IACG,IAAI,CACR,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAsB1C;;;;OAIG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;IAoD9B;;;;OAIG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,kBAAkB,CAAC;IA0B9B;;;OAGG;IACG,YAAY,CAChB,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;KAAE,GACvE,OAAO,CAAC,kBAAkB,CAAC;IAW9B;;;OAGG;IACG,aAAa,CACjB,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,kBAAkB,CAAC;IAO9B;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAQjE;;OAEG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAa9B,yDAAyD;IACnD,QAAQ,CACZ,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACpC,OAAO,CAAC,kBAAkB,CAAC;IAO9B,yEAAyE;IACnE,KAAK,CACT,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACpC,OAAO,CAAC,kBAAkB,CAAC;IAI9B,4EAA4E;IACtE,WAAW,CACf,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACpC,OAAO,CAAC,cAAc,EAAE,CAAC;IAO5B,qFAAqF;IAC/E,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAG7D"}
1
+ {"version":3,"file":"AdtMessageClass.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/AdtMessageClass.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAEV,eAAe,EACf,UAAU,EACV,oBAAoB,EACpB,OAAO,EACP,cAAc,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAQjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAOvE,qBAAa,eACX,YAAW,UAAU,CAAC,mBAAmB,EAAE,kBAAkB,CAAC;IAE9D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoB;IAClD,SAAgB,UAAU,EAAE,MAAM,CAAkB;gBAGlD,UAAU,EAAE,eAAe,EAC3B,MAAM,CAAC,EAAE,OAAO,EAChB,aAAa,CAAC,EAAE,iBAAiB;IAOnC;;OAEG;IACG,QAAQ,CACZ,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,kBAAkB,CAAC;IAqB9B;;;OAGG;IACG,MAAM,CACV,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;IAoC9B;;;OAGG;IACG,IAAI,CACR,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IAsB1C;;;;OAIG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;IAqD9B;;;;OAIG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,kBAAkB,CAAC;IA2B9B;;;OAGG;IACG,YAAY,CAChB,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAA;KAAE,GACvE,OAAO,CAAC,kBAAkB,CAAC;IAW9B;;;OAGG;IACG,aAAa,CACjB,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACnC,OAAO,CAAC,kBAAkB,CAAC;IAO9B;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAQjE;;OAEG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,EACpC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAa9B,yDAAyD;IACnD,QAAQ,CACZ,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACpC,OAAO,CAAC,kBAAkB,CAAC;IAO9B,yEAAyE;IACnE,KAAK,CACT,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACpC,OAAO,CAAC,kBAAkB,CAAC;IAI9B,4EAA4E;IACtE,WAAW,CACf,OAAO,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACpC,OAAO,CAAC,cAAc,EAAE,CAAC;IAO5B,qFAAqF;IAC/E,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAG7D"}
@@ -11,9 +11,8 @@
11
11
  * Unsupported operations (message classes are not activatable):
12
12
  * - activate, check, getVersions, getVersionSource → throwUnsupportedOperation
13
13
  *
14
- * transport / corrNr: parsed in config but not sent in requests yet.
15
- * Task 6.2 will wire it for transportable packages after a probe confirms the
16
- * corrNr query parameter is accepted by the endpoint.
14
+ * transport: config.transportRequest is sent as corrNr on create/update and as
15
+ * <del:transportNumber> on delete (transportable packages); local packages send none.
17
16
  */
18
17
  Object.defineProperty(exports, "__esModule", { value: true });
19
18
  exports.AdtMessageClass = void 0;
@@ -82,7 +81,7 @@ class AdtMessageClass {
82
81
  master_language: config.masterLanguage?.trim() ||
83
82
  this.systemContext.masterLanguage?.trim() ||
84
83
  'EN',
85
- // corrNr wiring deferred to the transportable-package task
84
+ // sent as ?corrNr= for a transportable package; empty for local
86
85
  transport_request: config.transportRequest,
87
86
  });
88
87
  this.logger?.info?.('Message class created');
@@ -134,7 +133,7 @@ class AdtMessageClass {
134
133
  lockHandle = await (0, lock_1.lockMessageClass)(this.connection, config.name);
135
134
  this.logger?.info?.('locked');
136
135
  this.logger?.info?.('update');
137
- const updateResult = await (0, update_1.updateMessageClass)(this.connection, config.name, lockHandle, config.description);
136
+ const updateResult = await (0, update_1.updateMessageClass)(this.connection, config.name, lockHandle, config.description, config.transportRequest);
138
137
  this.logger?.info?.('updated');
139
138
  this.logger?.info?.('unlock');
140
139
  const unlockResult = await (0, unlock_1.unlockMessageClass)(this.connection, config.name, lockHandle);
@@ -175,7 +174,7 @@ class AdtMessageClass {
175
174
  this.logger?.info?.('delete: check');
176
175
  await (0, delete_1.checkDeletion)(this.connection, config.name);
177
176
  this.logger?.info?.('delete: delete');
178
- const deleteResult = await (0, delete_1.deleteMessageClass)(this.connection, config.name);
177
+ const deleteResult = await (0, delete_1.deleteMessageClass)(this.connection, config.name, config.transportRequest);
179
178
  this.logger?.info?.('deleted');
180
179
  return { deleteResult, errors: [] };
181
180
  }
@@ -21,7 +21,8 @@
21
21
  * Unsupported: activate, check, validate, lock, unlock, getVersions,
22
22
  * getVersionSource, readTransport → throwUnsupportedOperation.
23
23
  *
24
- * transport / corrNr: not sent yet Task 6.2 will wire it.
24
+ * transport: when config.transportRequest is set (transportable package), it is
25
+ * appended as &corrNr= on the class PUT, like the other CRUD object types.
25
26
  */
26
27
  import type { IAbapConnection, IAdtObject, IAdtOperationOptions, ILogger, IObjectVersion } from '@mcp-abap-adt/interfaces';
27
28
  import type { IMessageClassMessageConfig, IMessageClassMessageState } from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"AdtMessageClassMessage.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/AdtMessageClassMessage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,oBAAoB,EACpB,OAAO,EACP,cAAc,EACf,MAAM,0BAA0B,CAAC;AAclC,OAAO,KAAK,EACV,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,SAAS,CAAC;AAMjB,qBAAa,sBACX,YAAW,UAAU,CAAC,0BAA0B,EAAE,yBAAyB,CAAC;IAE5E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAU;IAClC,SAAgB,UAAU,EAAE,MAAM,CAAyB;gBAE/C,UAAU,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,OAAO;IAOzD;;;;OAIG;IACG,IAAI,CACR,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC1C,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAkCjD;;;OAGG;IACG,MAAM,CACV,MAAM,EAAE,0BAA0B,EAClC,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;IAIrC;;;;OAIG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,EAC3C,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;YAIvB,cAAc;IAqH5B;;;;;;;;;;;;OAYG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC1C,OAAO,CAAC,yBAAyB,CAAC;IAsFrC,oFAAoF;IAC9E,YAAY,CAChB,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC1C,OAAO,CAAC,yBAAyB,CAAC;IAY/B,QAAQ,CACZ,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC;IAI/B,QAAQ,CACZ,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC;IAI/B,KAAK,CACT,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC;IAI/B,aAAa,CACjB,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC;IAI/B,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAInE,MAAM,CACV,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,EAC5C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,yBAAyB,CAAC;IAI/B,WAAW,CACf,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,cAAc,EAAE,CAAC;IAItB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAG7D"}
1
+ {"version":3,"file":"AdtMessageClassMessage.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/AdtMessageClassMessage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,oBAAoB,EACpB,OAAO,EACP,cAAc,EACf,MAAM,0BAA0B,CAAC;AAclC,OAAO,KAAK,EACV,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,SAAS,CAAC;AAMjB,qBAAa,sBACX,YAAW,UAAU,CAAC,0BAA0B,EAAE,yBAAyB,CAAC;IAE5E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAU;IAClC,SAAgB,UAAU,EAAE,MAAM,CAAyB;gBAE/C,UAAU,EAAE,eAAe,EAAE,MAAM,CAAC,EAAE,OAAO;IAOzD;;;;OAIG;IACG,IAAI,CACR,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC1C,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAkCjD;;;OAGG;IACG,MAAM,CACV,MAAM,EAAE,0BAA0B,EAClC,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;IAIrC;;;;OAIG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,EAC3C,QAAQ,CAAC,EAAE,oBAAoB,GAC9B,OAAO,CAAC,yBAAyB,CAAC;YAIvB,cAAc;IAwH5B;;;;;;;;;;;;OAYG;IACG,MAAM,CACV,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC1C,OAAO,CAAC,yBAAyB,CAAC;IAyFrC,oFAAoF;IAC9E,YAAY,CAChB,MAAM,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC1C,OAAO,CAAC,yBAAyB,CAAC;IAY/B,QAAQ,CACZ,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC;IAI/B,QAAQ,CACZ,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC;IAI/B,KAAK,CACT,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC;IAI/B,aAAa,CACjB,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,yBAAyB,CAAC;IAI/B,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAInE,MAAM,CACV,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,EAC5C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,yBAAyB,CAAC;IAI/B,WAAW,CACf,OAAO,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAC3C,OAAO,CAAC,cAAc,EAAE,CAAC;IAItB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAG7D"}
@@ -22,7 +22,8 @@
22
22
  * Unsupported: activate, check, validate, lock, unlock, getVersions,
23
23
  * getVersionSource, readTransport → throwUnsupportedOperation.
24
24
  *
25
- * transport / corrNr: not sent yet Task 6.2 will wire it.
25
+ * transport: when config.transportRequest is set (transportable package), it is
26
+ * appended as &corrNr= on the class PUT, like the other CRUD object types.
26
27
  */
27
28
  Object.defineProperty(exports, "__esModule", { value: true });
28
29
  exports.AdtMessageClassMessage = void 0;
@@ -146,8 +147,11 @@ class AdtMessageClassMessage {
146
147
  messageLockHandles: { [no]: messageLockHandle },
147
148
  });
148
149
  const encoded = (0, internalUtils_1.encodeSapObjectName)(name.toLowerCase());
150
+ const corrNr = config.transportRequest?.trim()
151
+ ? `&corrNr=${encodeURIComponent(config.transportRequest)}`
152
+ : '';
149
153
  const updateResult = await this.connection.makeAdtRequest({
150
- url: `${BASE}/${encoded}?lockHandle=${encodeURIComponent(classLockHandle)}`,
154
+ url: `${BASE}/${encoded}?lockHandle=${encodeURIComponent(classLockHandle)}${corrNr}`,
151
155
  method: 'PUT',
152
156
  timeout: (0, timeouts_1.getTimeout)('default'),
153
157
  data: xmlBody,
@@ -234,8 +238,11 @@ class AdtMessageClassMessage {
234
238
  messageLockHandles: { [no]: messageLockHandle },
235
239
  });
236
240
  const encoded = (0, internalUtils_1.encodeSapObjectName)(name.toLowerCase());
241
+ const corrNr = config.transportRequest?.trim()
242
+ ? `&corrNr=${encodeURIComponent(config.transportRequest)}`
243
+ : '';
237
244
  const deleteResult = await this.connection.makeAdtRequest({
238
- url: `${BASE}/${encoded}?lockHandle=${encodeURIComponent(classLockHandle)}`,
245
+ url: `${BASE}/${encoded}?lockHandle=${encodeURIComponent(classLockHandle)}${corrNr}`,
239
246
  method: 'PUT',
240
247
  timeout: (0, timeouts_1.getTimeout)('default'),
241
248
  data: xmlBody,
@@ -5,11 +5,9 @@ import type { IAbapConnection, IAdtResponse } from '@mcp-abap-adt/interfaces';
5
5
  import type { ICreateMessageClassParams } from './types';
6
6
  /**
7
7
  * Create a new message class (shell — no messages yet).
8
- * POST /sap/bc/adt/messageclass with Content-Type application/xml.
9
- *
10
- * corrNr (transport) is intentionally omitted here — the local/no-transport
11
- * path is the only one confirmed by probe. Task 6.2 will wire it for
12
- * transportable packages once a corrNr probe succeeds.
8
+ * POST /sap/bc/adt/messageclass[?corrNr={transport}] with Content-Type application/xml.
9
+ * For a transportable package pass `transport_request` (added as `?corrNr=`), like
10
+ * domain/class create; local packages send no corrNr.
13
11
  */
14
12
  export declare function createMessageClass(connection: IAbapConnection, params: ICreateMessageClassParams): Promise<IAdtResponse>;
15
13
  //# sourceMappingURL=create.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/create.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE9E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAKzD;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,eAAe,EAC3B,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,YAAY,CAAC,CAsBvB"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/create.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE9E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAKzD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,eAAe,EAC3B,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,YAAY,CAAC,CA0BvB"}
@@ -9,11 +9,9 @@ const xml_1 = require("./xml");
9
9
  const BASE = '/sap/bc/adt/messageclass';
10
10
  /**
11
11
  * Create a new message class (shell — no messages yet).
12
- * POST /sap/bc/adt/messageclass with Content-Type application/xml.
13
- *
14
- * corrNr (transport) is intentionally omitted here — the local/no-transport
15
- * path is the only one confirmed by probe. Task 6.2 will wire it for
16
- * transportable packages once a corrNr probe succeeds.
12
+ * POST /sap/bc/adt/messageclass[?corrNr={transport}] with Content-Type application/xml.
13
+ * For a transportable package pass `transport_request` (added as `?corrNr=`), like
14
+ * domain/class create; local packages send no corrNr.
17
15
  */
18
16
  async function createMessageClass(connection, params) {
19
17
  // Emit BOTH adtcore:language and adtcore:masterLanguage (like domain/class),
@@ -27,8 +25,11 @@ async function createMessageClass(connection, params) {
27
25
  masterLanguage: lang,
28
26
  messages: [],
29
27
  });
28
+ const corrNrParam = params.transport_request?.trim()
29
+ ? `?corrNr=${encodeURIComponent(params.transport_request)}`
30
+ : '';
30
31
  return connection.makeAdtRequest({
31
- url: BASE,
32
+ url: `${BASE}${corrNrParam}`,
32
33
  method: 'POST',
33
34
  timeout: (0, timeouts_1.getTimeout)('default'),
34
35
  data: xmlBody,
@@ -18,8 +18,8 @@ export declare function checkDeletion(connection: IAbapConnection, name: string)
18
18
  * Low-level: delete the message class via the deletion service.
19
19
  * POST /sap/bc/adt/deletion/delete (stateless — no lock handle).
20
20
  *
21
- * corrNr / transport_request is intentionally omitted local/no-transport path
22
- * only, wired for transportable packages in the corrNr task.
21
+ * For a transportable package pass `transportRequest` (emitted as
22
+ * `<del:transportNumber>`), like domain; local packages send an empty tag.
23
23
  */
24
- export declare function deleteMessageClass(connection: IAbapConnection, name: string): Promise<IAdtResponse>;
24
+ export declare function deleteMessageClass(connection: IAbapConnection, name: string, transportRequest?: string): Promise<IAdtResponse>;
25
25
  //# sourceMappingURL=delete.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/delete.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAe9E;;;GAGG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,YAAY,CAAC,CAkBvB;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,YAAY,CAAC,CAoBvB"}
1
+ {"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/delete.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAe9E;;;GAGG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,YAAY,CAAC,CAkBvB;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,EACZ,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,YAAY,CAAC,CAwBvB"}
@@ -43,16 +43,19 @@ async function checkDeletion(connection, name) {
43
43
  * Low-level: delete the message class via the deletion service.
44
44
  * POST /sap/bc/adt/deletion/delete (stateless — no lock handle).
45
45
  *
46
- * corrNr / transport_request is intentionally omitted local/no-transport path
47
- * only, wired for transportable packages in the corrNr task.
46
+ * For a transportable package pass `transportRequest` (emitted as
47
+ * `<del:transportNumber>`), like domain; local packages send an empty tag.
48
48
  */
49
- async function deleteMessageClass(connection, name) {
49
+ async function deleteMessageClass(connection, name, transportRequest) {
50
50
  if (!name)
51
51
  throw new Error('name is required');
52
+ const transportNumberTag = transportRequest?.trim()
53
+ ? `<del:transportNumber>${transportRequest}</del:transportNumber>`
54
+ : '<del:transportNumber/>';
52
55
  const xmlPayload = `<?xml version="1.0" encoding="UTF-8"?>
53
56
  <del:deletionRequest xmlns:del="http://www.sap.com/adt/deletion" xmlns:adtcore="http://www.sap.com/adt/core">
54
57
  <del:object adtcore:uri="${objectUri(name)}">
55
- <del:transportNumber/>
58
+ ${transportNumberTag}
56
59
  </del:object>
57
60
  </del:deletionRequest>`;
58
61
  return connection.makeAdtRequest({
@@ -21,7 +21,7 @@ export interface IMessageClassConfig {
21
21
  description?: string;
22
22
  /** Package name — required for create */
23
23
  packageName?: string;
24
- /** Transport request — parsed but not sent until Task 6.2 wires corrNr */
24
+ /** Transport request — sent as corrNr (create/update) or <del:transportNumber> (delete) for transportable packages */
25
25
  transportRequest?: string;
26
26
  /** Master language of the message class — defaults to 'EN' on create */
27
27
  masterLanguage?: string;
@@ -42,7 +42,7 @@ export interface IMessageClassMessageConfig {
42
42
  selfExplanatory?: boolean;
43
43
  /** Long description for the message (adtcore:description attribute) */
44
44
  description?: string;
45
- /** Transport request — parsed but not sent until Task 6.2 wires corrNr */
45
+ /** Transport request — sent as &corrNr= on the parent-class PUT for create/update/delete (transportable packages) */
46
46
  transportRequest?: string;
47
47
  }
48
48
  /** State returned from operations on a single message. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAGjE,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAGD,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,iDAAiD;IACjD,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC;AAID,8EAA8E;AAC9E,MAAM,WAAW,0BAA0B;IACzC,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,0DAA0D;AAC1D,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,6DAA6D;IAC7D,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAGjE,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAGD,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sHAAsH;IACtH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAGD,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IACzD,iDAAiD;IACjD,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC;AAID,8EAA8E;AAC9E,MAAM,WAAW,0BAA0B;IACzC,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAC;IAClB,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qHAAqH;IACrH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,0DAA0D;AAC1D,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,6DAA6D;IAC7D,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B"}
@@ -12,5 +12,5 @@ import type { IAbapConnection, IAdtResponse } from '@mcp-abap-adt/interfaces';
12
12
  *
13
13
  * NOTE: Caller must enable stateful session and hold a valid lockHandle.
14
14
  */
15
- export declare function updateMessageClass(connection: IAbapConnection, name: string, lockHandle: string, description: string | undefined): Promise<IAdtResponse>;
15
+ export declare function updateMessageClass(connection: IAbapConnection, name: string, lockHandle: string, description: string | undefined, transportRequest?: string): Promise<IAdtResponse>;
16
16
  //# sourceMappingURL=update.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/update.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAS9E;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,OAAO,CAAC,YAAY,CAAC,CAyBvB"}
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/core/messageClass/update.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAS9E;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC,YAAY,CAAC,CA4BvB"}
@@ -20,7 +20,7 @@ const BASE = '/sap/bc/adt/messageclass';
20
20
  *
21
21
  * NOTE: Caller must enable stateful session and hold a valid lockHandle.
22
22
  */
23
- async function updateMessageClass(connection, name, lockHandle, description) {
23
+ async function updateMessageClass(connection, name, lockHandle, description, transportRequest) {
24
24
  // 1. Read current state to preserve existing messages and all SAP-managed attrs
25
25
  const currentResponse = await (0, read_1.getMessageClassSource)(connection, name);
26
26
  const current = (0, xml_1.parseMessageClass)(String(currentResponse.data));
@@ -33,7 +33,10 @@ async function updateMessageClass(connection, name, lockHandle, description) {
33
33
  const xmlBody = (0, xml_1.buildMessageClassXml)(updated);
34
34
  // 4. PUT with lock handle
35
35
  const encoded = (0, internalUtils_1.encodeSapObjectName)(name.toLowerCase());
36
- const url = `${BASE}/${encoded}?lockHandle=${encodeURIComponent(lockHandle)}`;
36
+ const corrNrParam = transportRequest?.trim()
37
+ ? `&corrNr=${encodeURIComponent(transportRequest)}`
38
+ : '';
39
+ const url = `${BASE}/${encoded}?lockHandle=${encodeURIComponent(lockHandle)}${corrNrParam}`;
37
40
  return connection.makeAdtRequest({
38
41
  url,
39
42
  method: 'PUT',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcp-abap-adt/adt-clients",
3
- "version": "7.3.0",
3
+ "version": "7.3.1",
4
4
  "description": "ADT clients for SAP ABAP systems - AdtClient and AdtRuntimeClient",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",