@@ -14,52 +14,65 @@ const { logger } = require('../index');
14
14
*
15
15
* @return {Promise } promise resolved to project details
16
16
*/
17
- const getProject = ( projectId ) => request
18
- . get ( `${ config . TC_API_V4_BASE_URL } /projects/${ projectId } ` )
19
- . set ( 'accept' , 'application/json' )
20
- . set ( 'authorization' , `Bearer ${ config . TC_ADMIN_TOKEN } ` )
21
- . then ( ( res ) => {
22
- if ( ! _ . get ( res , 'body.result.success' ) ) {
23
- throw new Error ( `Failed to get project details of project id: ${ projectId } ` ) ;
24
- }
25
-
26
- const project = _ . get ( res , 'body.result.content' ) ;
27
-
28
- return project ;
29
- } ) . catch ( ( err ) => {
30
- const errorDetails = _ . get ( err , 'response.body.result.content.message' ) ;
31
- throw new Error (
32
- `Failed to get project details of project id: ${ projectId } .` +
33
- ( errorDetails ? ' Server response: ' + errorDetails : '' )
34
- ) ;
35
- } ) ;
36
-
17
+ const getProject = ( projectId ) => {
18
+ return M2m . getMachineToken ( config . AUTH0_CLIENT_ID , config . AUTH0_CLIENT_SECRET )
19
+ . then ( ( token ) => {
20
+ return request
21
+ . get ( `${ config . TC_API_V4_BASE_URL } /projects/${ projectId } ` )
22
+ . set ( 'accept' , 'application/json' )
23
+ . set ( 'authorization' , `Bearer ${ token } ` )
24
+ . then ( ( res ) => {
25
+ if ( ! _ . get ( res , 'body.result.success' ) ) {
26
+ throw new Error ( `Failed to get project details of project id: ${ projectId } ` ) ;
27
+ }
28
+ const project = _ . get ( res , 'body.result.content' ) ;
29
+ return project ;
30
+ } ) . catch ( ( err ) => {
31
+ const errorDetails = _ . get ( err , 'response.body.result.content.message' ) ;
32
+ throw new Error (
33
+ `Failed to get project details of project id: ${ projectId } .` +
34
+ ( errorDetails ? ' Server response: ' + errorDetails : '' )
35
+ ) ;
36
+ } ) ;
37
+ } )
38
+ . catch ( ( err ) => {
39
+ err . message = 'Error generating m2m token: ' + err . message ;
40
+ throw err ;
41
+ } ) ;
42
+ } ;
37
43
/**
38
44
* Get role members
39
45
*
40
46
* @param {String } roleId role id
41
47
*
42
48
* @return {Promise } promise resolved to role members ids list
43
49
*/
44
- const getRoleMembers = ( roleId ) => request
45
- . get ( `${ config . TC_API_V3_BASE_URL } /roles/${ roleId } ?fields=subjects` )
46
- . set ( 'accept' , 'application/json' )
47
- . set ( 'authorization' , `Bearer ${ config . TC_ADMIN_TOKEN } ` )
48
- . then ( ( res ) => {
49
- if ( ! _ . get ( res , 'body.result.success' ) ) {
50
- throw new Error ( `Failed to get role members of role id: ${ roleId } ` ) ;
51
- }
52
-
53
- const members = _ . get ( res , 'body.result.content.subjects' ) ;
54
-
55
- return members ;
56
- } ) . catch ( ( err ) => {
57
- const errorDetails = _ . get ( err , 'response.body.result.content.message' ) ;
58
- throw new Error (
59
- `Failed to get role members of role id: ${ roleId } .` +
60
- ( errorDetails ? ' Server response: ' + errorDetails : '' )
61
- ) ;
62
- } ) ;
50
+ const getRoleMembers = ( roleId ) => {
51
+ return M2m . getMachineToken ( config . AUTH0_CLIENT_ID , config . AUTH0_CLIENT_SECRET )
52
+ . then ( ( token ) => {
53
+ return request
54
+ . get ( `${ config . TC_API_V3_BASE_URL } /roles/${ roleId } ?fields=subjects` )
55
+ . set ( 'accept' , 'application/json' )
56
+ . set ( 'authorization' , `Bearer ${ token } ` )
57
+ . then ( ( res ) => {
58
+ if ( ! _ . get ( res , 'body.result.success' ) ) {
59
+ throw new Error ( `Failed to get role membrs of role id: ${ roleId } ` ) ;
60
+ }
61
+ const members = _ . get ( res , 'body.result.content.subjects' ) ;
62
+ return members ;
63
+ } ) . catch ( ( err ) => {
64
+ const errorDetails = _ . get ( err , 'response.body.result.content.message' ) ;
65
+ throw new Error (
66
+ `Failed to get role membrs of role id: ${ roleId } .` +
67
+ ( errorDetails ? ' Server response: ' + errorDetails : '' )
68
+ ) ;
69
+ } ) ;
70
+ } )
71
+ . catch ( ( err ) => {
72
+ err . message = 'Error generating m2m token: ' + err . message ;
73
+ throw err ;
74
+ } ) ;
75
+ } ;
63
76
64
77
/**
65
78
* Get users details by ids
@@ -76,8 +89,6 @@ const getUsersById = (ids) => {
76
89
throw err ;
77
90
} )
78
91
. then ( ( token ) => {
79
- if ( ! token && config . TC_ADMIN_TOKEN ) token = config . TC_ADMIN_TOKEN ;
80
-
81
92
return request
82
93
. get ( `${ config . TC_API_V3_BASE_URL } /members/_search?fields=userId,email,handle,firstName,lastName&query=${ query } ` )
83
94
. set ( 'accept' , 'application/json' )
@@ -115,8 +126,6 @@ const getUsersByHandle = (handles) => {
115
126
throw err ;
116
127
} )
117
128
. then ( ( token ) => {
118
- if ( ! token && config . TC_ADMIN_TOKEN ) token = config . TC_ADMIN_TOKEN ;
119
-
120
129
return request
121
130
. get ( `${ config . TC_API_V3_BASE_URL } /members/_search?fields=userId,handle,firstName,lastName&query=${ query } ` )
122
131
. set ( 'accept' , 'application/json' )
@@ -146,26 +155,34 @@ const getUsersByHandle = (handles) => {
146
155
*
147
156
* @return {Promise } promise resolved to topic details
148
157
*/
149
- const getTopic = ( topicId ) => request
150
- . get ( `${ config . MESSAGE_API_BASE_URL } /topics/${ topicId } /read` )
151
- . set ( 'accept' , 'application/json' )
152
- . set ( 'authorization' , `Bearer ${ config . TC_ADMIN_TOKEN } ` )
153
- . then ( ( res ) => {
154
- if ( ! _ . get ( res , 'body.result.success' ) ) {
155
- throw new Error ( `Failed to get topic details of topic id: ${ topicId } ` ) ;
156
- }
157
-
158
- return _ . get ( res , 'body.result.content' ) ;
159
- } ) . catch ( ( err ) => {
160
- if ( logger ) {
161
- logger . error ( err , `Error while calling ${ config . MESSAGE_API_BASE_URL } /topics/${ topicId } /read` ) ;
162
- }
163
- const errorDetails = _ . get ( err , 'response.body.result.content.message' ) ;
164
- throw new Error (
165
- `Failed to get topic details of topic id: ${ topicId } .` +
166
- ( errorDetails ? ' Server response: ' + errorDetails : '' )
167
- ) ;
168
- } ) ;
158
+ const getTopic = ( topicId , logger ) => {
159
+ return M2m . getMachineToken ( config . AUTH0_CLIENT_ID , config . AUTH0_CLIENT_SECRET )
160
+ . then ( ( token ) => {
161
+ return request
162
+ . get ( `${ config . MESSAGE_API_BASE_URL } /topics/${ topicId } /read` )
163
+ . set ( 'accept' , 'application/json' )
164
+ . set ( 'authorization' , `Bearer ${ token } ` )
165
+ . then ( ( res ) => {
166
+ if ( ! _ . get ( res , 'body.result.success' ) ) {
167
+ throw new Error ( `Failed to get topic details of topic id: ${ topicId } ` ) ;
168
+ }
169
+ return _ . get ( res , 'body.result.content' ) ;
170
+ } ) . catch ( ( err ) => {
171
+ if ( logger ) {
172
+ logger . error ( err , `Error while calling ${ config . MESSAGE_API_BASE_URL } /topics/${ topicId } /read` ) ;
173
+ }
174
+ const errorDetails = _ . get ( err , 'response.body.result.content.message' ) ;
175
+ throw new Error (
176
+ `Failed to get topic details of topic id: ${ topicId } .` +
177
+ ( errorDetails ? ' Server response: ' + errorDetails : '' )
178
+ ) ;
179
+ } ) ;
180
+ } )
181
+ . catch ( ( err ) => {
182
+ err . message = 'Error generating m2m token: ' + err . message ;
183
+ throw err ;
184
+ } ) ;
185
+ } ;
169
186
170
187
module . exports = {
171
188
getProject,
0 commit comments