@vtecx/vtecxnext 1.0.0 → 1.0.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.
@@ -74,9 +74,10 @@ export declare const log: (req: IncomingMessage, res: ServerResponse, message: s
74
74
  * @param req request (for authentication)
75
75
  * @param res response (for authentication)
76
76
  * @param uri key
77
+ * @param targetService target service name (for service linkage)
77
78
  * @return entry
78
79
  */
79
- export declare const getEntry: (req: IncomingMessage, res: ServerResponse, uri: string) => Promise<any>;
80
+ export declare const getEntry: (req: IncomingMessage, res: ServerResponse, uri: string, targetService?: string) => Promise<any>;
80
81
  /**
81
82
  * get entry
82
83
  * @param req request (for authentication)
@@ -84,7 +85,7 @@ export declare const getEntry: (req: IncomingMessage, res: ServerResponse, uri:
84
85
  * @param uri key and conditions
85
86
  * @return feed (entry array)
86
87
  */
87
- export declare const getFeed: (req: IncomingMessage, res: ServerResponse, uri: string) => Promise<any>;
88
+ export declare const getFeed: (req: IncomingMessage, res: ServerResponse, uri: string, targetService?: string) => Promise<any>;
88
89
  /**
89
90
  * get count
90
91
  * @param req request (for authentication)
@@ -92,7 +93,7 @@ export declare const getFeed: (req: IncomingMessage, res: ServerResponse, uri: s
92
93
  * @param uri key and conditions
93
94
  * @return count
94
95
  */
95
- export declare const count: (req: IncomingMessage, res: ServerResponse, uri: string) => Promise<number | null>;
96
+ export declare const count: (req: IncomingMessage, res: ServerResponse, uri: string, targetService?: string) => Promise<number | null>;
96
97
  /**
97
98
  * register entries
98
99
  * @param req request (for authentication)
@@ -101,7 +102,7 @@ export declare const count: (req: IncomingMessage, res: ServerResponse, uri: str
101
102
  * @param uri parent key if not specified in entry
102
103
  * @return registed entries
103
104
  */
104
- export declare const post: (req: IncomingMessage, res: ServerResponse, feed: any, uri?: string) => Promise<any>;
105
+ export declare const post: (req: IncomingMessage, res: ServerResponse, feed: any, uri?: string, targetService?: string) => Promise<any>;
105
106
  /**
106
107
  * update entries
107
108
  * @param req request (for authentication)
@@ -112,7 +113,7 @@ export declare const post: (req: IncomingMessage, res: ServerResponse, feed: any
112
113
  * @param async Execute asynchronous if this param is true. Valid only if 'isbulk' is true.
113
114
  * @return updated entries
114
115
  */
115
- export declare const put: (req: IncomingMessage, res: ServerResponse, feed: any, isbulk?: boolean, parallel?: boolean, async?: boolean) => Promise<any>;
116
+ export declare const put: (req: IncomingMessage, res: ServerResponse, feed: any, isbulk?: boolean, parallel?: boolean, async?: boolean, targetService?: string) => Promise<any>;
116
117
  /**
117
118
  * delete entry
118
119
  * @param req request (for authentication)
@@ -121,7 +122,7 @@ export declare const put: (req: IncomingMessage, res: ServerResponse, feed: any,
121
122
  * @param revision number of revision
122
123
  * @return true if successful
123
124
  */
124
- export declare const deleteEntry: (req: IncomingMessage, res: ServerResponse, uri: string, revision?: number) => Promise<boolean>;
125
+ export declare const deleteEntry: (req: IncomingMessage, res: ServerResponse, uri: string, revision?: number, targetService?: string) => Promise<boolean>;
125
126
  /**
126
127
  * delete folder
127
128
  * @param req request (for authentication)
@@ -130,7 +131,7 @@ export declare const deleteEntry: (req: IncomingMessage, res: ServerResponse, ur
130
131
  * @param async execute async
131
132
  * @return true if successful
132
133
  */
133
- export declare const deleteFolder: (req: IncomingMessage, res: ServerResponse, uri: string, async?: boolean) => Promise<boolean>;
134
+ export declare const deleteFolder: (req: IncomingMessage, res: ServerResponse, uri: string, async?: boolean, targetService?: string) => Promise<boolean>;
134
135
  /**
135
136
  * allocate numbers
136
137
  * @param req request (for authentication)
@@ -139,7 +140,7 @@ export declare const deleteFolder: (req: IncomingMessage, res: ServerResponse, u
139
140
  * @param num number to allocate
140
141
  * @return allocated numbers. comma separated if multiple.
141
142
  */
142
- export declare const allocids: (req: IncomingMessage, res: ServerResponse, uri: string, num: number) => Promise<string>;
143
+ export declare const allocids: (req: IncomingMessage, res: ServerResponse, uri: string, num: number, targetService?: string) => Promise<string>;
143
144
  /**
144
145
  * add a number
145
146
  * @param req request (for authentication)
@@ -148,7 +149,7 @@ export declare const allocids: (req: IncomingMessage, res: ServerResponse, uri:
148
149
  * @param num number to add
149
150
  * @return added number
150
151
  */
151
- export declare const addids: (req: IncomingMessage, res: ServerResponse, uri: string, num: number) => Promise<number | null>;
152
+ export declare const addids: (req: IncomingMessage, res: ServerResponse, uri: string, num: number, targetService?: string) => Promise<number | null>;
152
153
  /**
153
154
  * get a added number
154
155
  * @param req request (for authentication)
@@ -156,7 +157,7 @@ export declare const addids: (req: IncomingMessage, res: ServerResponse, uri: st
156
157
  * @param uri key
157
158
  * @return added number
158
159
  */
159
- export declare const getids: (req: IncomingMessage, res: ServerResponse, uri: string) => Promise<number | null>;
160
+ export declare const getids: (req: IncomingMessage, res: ServerResponse, uri: string, targetService?: string) => Promise<number | null>;
160
161
  /**
161
162
  * set a number
162
163
  * @param req request (for authentication)
@@ -165,7 +166,7 @@ export declare const getids: (req: IncomingMessage, res: ServerResponse, uri: st
165
166
  * @param num number to set
166
167
  * @return set number
167
168
  */
168
- export declare const setids: (req: IncomingMessage, res: ServerResponse, uri: string, num: number) => Promise<number | null>;
169
+ export declare const setids: (req: IncomingMessage, res: ServerResponse, uri: string, num: number, targetService?: string) => Promise<number | null>;
169
170
  /**
170
171
  * set a addition range
171
172
  * @param req request (for authentication)
@@ -300,7 +301,7 @@ export declare const getSessionLong: (req: IncomingMessage, res: ServerResponse,
300
301
  * @param pagerange page range
301
302
  * @return feed Maximum number of pages in the specified page range, and total count.
302
303
  */
303
- export declare const pagination: (req: IncomingMessage, res: ServerResponse, uri: string, pagerange: string) => Promise<any>;
304
+ export declare const pagination: (req: IncomingMessage, res: ServerResponse, uri: string, pagerange: string, targetService?: string) => Promise<any>;
304
305
  /**
305
306
  * get page
306
307
  * @param req request (for authentication)
@@ -309,7 +310,7 @@ export declare const pagination: (req: IncomingMessage, res: ServerResponse, uri
309
310
  * @param num page number
310
311
  * @return feed Maximum number of pages in the specified page range, and total count.
311
312
  */
312
- export declare const getPage: (req: IncomingMessage, res: ServerResponse, uri: string, num: number) => Promise<any>;
313
+ export declare const getPage: (req: IncomingMessage, res: ServerResponse, uri: string, num: number, targetService?: string) => Promise<any>;
313
314
  /**
314
315
  * post data to bigquery
315
316
  * @param req request (for authentication)
package/dist/vtecxnext.js CHANGED
@@ -191,16 +191,17 @@ exports.log = log;
191
191
  * @param req request (for authentication)
192
192
  * @param res response (for authentication)
193
193
  * @param uri key
194
+ * @param targetService target service name (for service linkage)
194
195
  * @return entry
195
196
  */
196
- const getEntry = async (req, res, uri) => {
197
+ const getEntry = async (req, res, uri, targetService) => {
197
198
  //console.log('[vtecxnext getEntry] start.')
198
199
  // キー入力値チェック
199
200
  checkUri(uri);
200
201
  // vte.cxへリクエスト
201
202
  const method = 'GET';
202
203
  const url = `/p${uri}?e`;
203
- const response = await requestVtecx(method, url, req);
204
+ const response = await requestVtecx(method, url, req, null, targetService);
204
205
  //console.log(`[vtecxnext getEntry] response=${response}`)
205
206
  // vte.cxからのset-cookieを転記
206
207
  setCookie(response, res);
@@ -217,14 +218,14 @@ exports.getEntry = getEntry;
217
218
  * @param uri key and conditions
218
219
  * @return feed (entry array)
219
220
  */
220
- const getFeed = async (req, res, uri) => {
221
+ const getFeed = async (req, res, uri, targetService) => {
221
222
  //console.log('[vtecxnext getFeed] start.')
222
223
  // キー入力値チェック
223
224
  checkUri(uri);
224
225
  // vte.cxへリクエスト
225
226
  const method = 'GET';
226
227
  const url = `/p${uri}${uri.includes('?') ? '&' : '?'}f`;
227
- const response = await requestVtecx(method, url, req);
228
+ const response = await requestVtecx(method, url, req, null, targetService);
228
229
  //console.log(`[vtecxnext getFeed] response=${response}`)
229
230
  // vte.cxからのset-cookieを転記
230
231
  setCookie(response, res);
@@ -241,14 +242,14 @@ exports.getFeed = getFeed;
241
242
  * @param uri key and conditions
242
243
  * @return count
243
244
  */
244
- const count = async (req, res, uri) => {
245
+ const count = async (req, res, uri, targetService) => {
245
246
  //console.log('[vtecxnext count] start.')
246
247
  // キー入力値チェック
247
248
  checkUri(uri);
248
249
  // vte.cxへリクエスト
249
250
  const method = 'GET';
250
251
  const url = `/p${uri}${uri.includes('?') ? '&' : '?'}c`;
251
- const response = await requestVtecx(method, url, req);
252
+ const response = await requestVtecx(method, url, req, null, targetService);
252
253
  //console.log(`[vtecxnext count] response=${response}`)
253
254
  // vte.cxからのset-cookieを転記
254
255
  setCookie(response, res);
@@ -267,7 +268,7 @@ exports.count = count;
267
268
  * @param uri parent key if not specified in entry
268
269
  * @return registed entries
269
270
  */
270
- const post = async (req, res, feed, uri) => {
271
+ const post = async (req, res, feed, uri, targetService) => {
271
272
  //console.log(`[vtecxnext post] start. feed=${feed}`)
272
273
  // 入力チェック
273
274
  checkNotNull(feed, 'Feed');
@@ -278,7 +279,7 @@ const post = async (req, res, feed, uri) => {
278
279
  // vte.cxへリクエスト
279
280
  const method = 'POST';
280
281
  const url = `/p${uri ? uri : '/'}?e`;
281
- const response = await requestVtecx(method, url, req, JSON.stringify(feed));
282
+ const response = await requestVtecx(method, url, req, JSON.stringify(feed), targetService);
282
283
  //console.log(`[vtecxnext post] response. status=${response.status}`)
283
284
  // vte.cxからのset-cookieを転記
284
285
  setCookie(response, res);
@@ -297,7 +298,7 @@ exports.post = post;
297
298
  * @param async Execute asynchronous if this param is true. Valid only if 'isbulk' is true.
298
299
  * @return updated entries
299
300
  */
300
- const put = async (req, res, feed, isbulk, parallel, async) => {
301
+ const put = async (req, res, feed, isbulk, parallel, async, targetService) => {
301
302
  //console.log(`[vtecxnext put] start. feed=${feed}`)
302
303
  // 入力チェック
303
304
  checkNotNull(feed, 'Feed');
@@ -309,7 +310,7 @@ const put = async (req, res, feed, isbulk, parallel, async) => {
309
310
  }
310
311
  const url = `/p/?e${additionalParam}`;
311
312
  //console.log(`[vtecxnext put] url=${url}`)
312
- const response = await requestVtecx(method, url, req, JSON.stringify(feed));
313
+ const response = await requestVtecx(method, url, req, JSON.stringify(feed), targetService);
313
314
  //console.log(`[vtecxnext put] response. status=${response.status}`)
314
315
  // vte.cxからのset-cookieを転記
315
316
  setCookie(response, res);
@@ -326,7 +327,7 @@ exports.put = put;
326
327
  * @param revision number of revision
327
328
  * @return true if successful
328
329
  */
329
- const deleteEntry = async (req, res, uri, revision) => {
330
+ const deleteEntry = async (req, res, uri, revision, targetService) => {
330
331
  //console.log(`[vtecxnext deleteEntry] start. uri=${uri} revision=${revision}`)
331
332
  // キー入力値チェック
332
333
  checkUri(uri);
@@ -334,7 +335,7 @@ const deleteEntry = async (req, res, uri, revision) => {
334
335
  const method = 'DELETE';
335
336
  const param = revision ? `&r=${revision}` : '';
336
337
  const url = `/p${uri}?e${param}`;
337
- const response = await requestVtecx(method, url, req);
338
+ const response = await requestVtecx(method, url, req, null, targetService);
338
339
  //console.log(`[vtecxnext deleteEntry] response. status=${response.status}`)
339
340
  // vte.cxからのset-cookieを転記
340
341
  setCookie(response, res);
@@ -351,14 +352,14 @@ exports.deleteEntry = deleteEntry;
351
352
  * @param async execute async
352
353
  * @return true if successful
353
354
  */
354
- const deleteFolder = async (req, res, uri, async) => {
355
+ const deleteFolder = async (req, res, uri, async, targetService) => {
355
356
  //console.log(`[vtecxnext deleteFolder] start. uri=${uri} async=${async}`)
356
357
  // キー入力値チェック
357
358
  checkUri(uri);
358
359
  // vte.cxへリクエスト
359
360
  const method = 'DELETE';
360
361
  const url = `/p${uri}?_rf${async ? '&_async' : ''}`;
361
- const response = await requestVtecx(method, url, req);
362
+ const response = await requestVtecx(method, url, req, null, targetService);
362
363
  //console.log(`[vtecxnext deleteFolder] response. status=${response.status}`)
363
364
  // vte.cxからのset-cookieを転記
364
365
  setCookie(response, res);
@@ -375,7 +376,7 @@ exports.deleteFolder = deleteFolder;
375
376
  * @param num number to allocate
376
377
  * @return allocated numbers. comma separated if multiple.
377
378
  */
378
- const allocids = async (req, res, uri, num) => {
379
+ const allocids = async (req, res, uri, num, targetService) => {
379
380
  //console.log('[vtecxnext allocids] start.')
380
381
  // キー入力値チェック
381
382
  checkUri(uri);
@@ -383,7 +384,7 @@ const allocids = async (req, res, uri, num) => {
383
384
  // vte.cxへリクエスト
384
385
  const method = 'GET';
385
386
  const url = `/p${uri}?_allocids=${num}`;
386
- const response = await requestVtecx(method, url, req);
387
+ const response = await requestVtecx(method, url, req, null, targetService);
387
388
  //console.log(`[vtecxnext allocids] response=${response}`)
388
389
  // vte.cxからのset-cookieを転記
389
390
  setCookie(response, res);
@@ -402,7 +403,7 @@ exports.allocids = allocids;
402
403
  * @param num number to add
403
404
  * @return added number
404
405
  */
405
- const addids = async (req, res, uri, num) => {
406
+ const addids = async (req, res, uri, num, targetService) => {
406
407
  //console.log('[vtecxnext addids] start.')
407
408
  // キー入力値チェック
408
409
  checkUri(uri);
@@ -410,7 +411,7 @@ const addids = async (req, res, uri, num) => {
410
411
  // vte.cxへリクエスト
411
412
  const method = 'PUT';
412
413
  const url = `/p${uri}?_addids=${num}`;
413
- const response = await requestVtecx(method, url, req);
414
+ const response = await requestVtecx(method, url, req, null, targetService);
414
415
  //console.log(`[vtecxnext addids] response=${response}`)
415
416
  // vte.cxからのset-cookieを転記
416
417
  setCookie(response, res);
@@ -428,14 +429,14 @@ exports.addids = addids;
428
429
  * @param uri key
429
430
  * @return added number
430
431
  */
431
- const getids = async (req, res, uri) => {
432
+ const getids = async (req, res, uri, targetService) => {
432
433
  //console.log('[vtecxnext getids] start.')
433
434
  // キー入力値チェック
434
435
  checkUri(uri);
435
436
  // vte.cxへリクエスト
436
437
  const method = 'GET';
437
438
  const url = `/p${uri}?_getids`;
438
- const response = await requestVtecx(method, url, req);
439
+ const response = await requestVtecx(method, url, req, null, targetService);
439
440
  //console.log(`[vtecxnext getids] response=${response}`)
440
441
  // vte.cxからのset-cookieを転記
441
442
  setCookie(response, res);
@@ -454,7 +455,7 @@ exports.getids = getids;
454
455
  * @param num number to set
455
456
  * @return set number
456
457
  */
457
- const setids = async (req, res, uri, num) => {
458
+ const setids = async (req, res, uri, num, targetService) => {
458
459
  //console.log('[vtecxnext setids] start.')
459
460
  // キー入力値チェック
460
461
  checkUri(uri);
@@ -462,7 +463,7 @@ const setids = async (req, res, uri, num) => {
462
463
  // vte.cxへリクエスト
463
464
  const method = 'PUT';
464
465
  const url = `/p${uri}?_setids=${num}`;
465
- const response = await requestVtecx(method, url, req);
466
+ const response = await requestVtecx(method, url, req, null, targetService);
466
467
  //console.log(`[vtecxnext setids] response=${response}`)
467
468
  // vte.cxからのset-cookieを転記
468
469
  setCookie(response, res);
@@ -864,14 +865,14 @@ exports.getSessionLong = getSessionLong;
864
865
  * @param pagerange page range
865
866
  * @return feed Maximum number of pages in the specified page range, and total count.
866
867
  */
867
- const pagination = async (req, res, uri, pagerange) => {
868
+ const pagination = async (req, res, uri, pagerange, targetService) => {
868
869
  //console.log('[vtecxnext pagination] start.')
869
870
  // キー入力値チェック
870
871
  checkUri(uri);
871
872
  // vte.cxへリクエスト
872
873
  const method = 'GET';
873
874
  const url = `/p${uri}${uri.includes('?') ? '&' : '?'}_pagination=${pagerange}`;
874
- const response = await requestVtecx(method, url, req);
875
+ const response = await requestVtecx(method, url, req, null, targetService);
875
876
  //console.log(`[vtecxnext pagination] response=${response}`)
876
877
  // vte.cxからのset-cookieを転記
877
878
  setCookie(response, res);
@@ -889,7 +890,7 @@ exports.pagination = pagination;
889
890
  * @param num page number
890
891
  * @return feed Maximum number of pages in the specified page range, and total count.
891
892
  */
892
- const getPage = async (req, res, uri, num) => {
893
+ const getPage = async (req, res, uri, num, targetService) => {
893
894
  //console.log('[vtecxnext getPage] start.')
894
895
  // 入力値チェック
895
896
  checkUri(uri);
@@ -897,7 +898,7 @@ const getPage = async (req, res, uri, num) => {
897
898
  // vte.cxへリクエスト
898
899
  const method = 'GET';
899
900
  const url = `/p${uri}${uri.includes('?') ? '&' : '?'}n=${num}`;
900
- const response = await requestVtecx(method, url, req);
901
+ const response = await requestVtecx(method, url, req, null, targetService);
901
902
  //console.log(`[vtecxnext getPage] response=${response}`)
902
903
  // vte.cxからのset-cookieを転記
903
904
  setCookie(response, res);
@@ -1433,12 +1434,21 @@ exports.VtecxNextError = VtecxNextError;
1433
1434
  * @param url サーブレットパス以降のURL
1434
1435
  * @param req リクエスト。認証情報設定に使用。
1435
1436
  * @param body リクエストデータ
1437
+ * @param targetService 連携サービス名
1436
1438
  * @returns promise
1437
1439
  */
1438
- const requestVtecx = async (method, url, req, body) => {
1440
+ const requestVtecx = async (method, url, req, body, targetService) => {
1439
1441
  // cookieの値をvte.cxへのリクエストヘッダに設定
1440
1442
  const cookie = req.headers['cookie'];
1441
1443
  const headers = { 'Cookie': cookie };
1444
+ if (targetService) {
1445
+ const servicekey = process.env[`SERVICEKEY_${targetService}`];
1446
+ console.log(`[requestVtecx] targetService=${targetService} servicekey=${servicekey}`);
1447
+ if (servicekey) {
1448
+ headers['X-SERVICELINKAGE'] = targetService;
1449
+ headers['X-SERVICEKEY'] = servicekey;
1450
+ }
1451
+ }
1442
1452
  return fetchVtecx(method, url, headers, body);
1443
1453
  };
1444
1454
  /**
@@ -1630,3 +1640,9 @@ const getLinks = (rel, hrefs) => {
1630
1640
  //console.log(`[vtecxnext getLinks] links=${JSON.stringify(links)}`)
1631
1641
  return links;
1632
1642
  };
1643
+ const getServiceKey = (targetService) => {
1644
+ if (!targetService) {
1645
+ return null;
1646
+ }
1647
+ // 環境変数
1648
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vtecx/vtecxnext",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "vte.cx Next.js api",
5
5
  "main": "dist/index.js",
6
6
  "files": [