Skip to content
This repository was archived by the owner on Mar 31, 2020. It is now read-only.

Commit d61228c

Browse files
committed
Enhancement to manageags files to support portal security handler
1 parent fed4ec6 commit d61228c

File tree

10 files changed

+654
-183
lines changed

10 files changed

+654
-183
lines changed

src/arcrest/manageags/_clusters.py

Lines changed: 70 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
from .._abstract.abstract import BaseAGSServer
22
import json
33
from parameters import ClusterProtocol
4+
from ..security.security import ArcGISTokenSecurityHandler,AGOLTokenSecurityHandler, PortalTokenSecurityHandler, OAuthSecurityHandler, PortalServerSecurityHandler
5+
46
########################################################################
57
class Clusters(BaseAGSServer):
68
"""
@@ -39,9 +41,13 @@ def __init__(self, url,
3941
def __init(self):
4042
""" populates server admin information """
4143
params = {
42-
"f" : "json",
43-
"token" : self._securityHandler.token
44+
"f" : "json"
4445
}
46+
if self._securityHandler is not None:
47+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
48+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
49+
else:
50+
params['token'] = self._securityHandler.token
4551
json_dict = self._do_get(url=self._url,
4652
param_dict=params,
4753
proxy_url=self._proxy_url,
@@ -85,12 +91,16 @@ def createCluster(self, clusterName, machineNames="", tcpClusterPort=None):
8591
"""
8692
url = self._url + "/create"
8793
params = {
88-
"token" : self._securityHandler.token,
8994
"f" : "json",
9095
"clusterName" : clusterName,
9196
"machineNames" : machineNames,
9297
"tcpClusterPort" : tcpClusterPort
9398
}
99+
if self._securityHandler is not None:
100+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
101+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
102+
else:
103+
params['token'] = self._securityHandler.token
94104
return self._do_post(url=url,
95105
param_dict=params,
96106
proxy_url=self._proxy_url,
@@ -105,9 +115,13 @@ def getAvailableMachines(self):
105115
"""
106116
url = self._url + "/getAvailableMachines"
107117
params = {
108-
"f" : "json",
109-
"token" : self._securityHandler.token
118+
"f" : "json"
110119
}
120+
if self._securityHandler is not None:
121+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
122+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
123+
else:
124+
params['token'] = self._securityHandler.token
111125
return self._do_get(url=url,
112126
param_dict=params,
113127
proxy_url=self._proxy_url,
@@ -152,9 +166,13 @@ def __init__(self, url, securityHandler, proxy_url=None, proxy_port=None,
152166
def __init(self):
153167
""" populates server admin information """
154168
params = {
155-
"f" : "json",
156-
"token" : self._securityHandler.token
169+
"f" : "json"
157170
}
171+
if self._securityHandler is not None:
172+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
173+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
174+
else:
175+
params['token'] = self._securityHandler.token
158176
json_dict = self._do_get(url=self._url,
159177
param_dict=params,
160178
proxy_url=self._proxy_url,
@@ -234,9 +252,13 @@ def start(self):
234252
operation reports an error.
235253
"""
236254
params = {
237-
"f" : "json",
238-
"token" : self._securityHandler.token
255+
"f" : "json"
239256
}
257+
if self._securityHandler is not None:
258+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
259+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
260+
else:
261+
params['token'] = self._securityHandler.token
240262
url = self._url + "/start"
241263
return self._do_post(url=url,
242264
param_dict=params,
@@ -251,9 +273,13 @@ def stop(self):
251273
be reached, then this operation reports an error.
252274
"""
253275
params = {
254-
"f" : "json",
255-
"token" : self._securityHandler.token
276+
"f" : "json"
256277
}
278+
if self._securityHandler is not None:
279+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
280+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
281+
else:
282+
params['token'] = self._securityHandler.token
257283
url = self._url + "/stop"
258284
return self._do_post(url=url,
259285
param_dict=params,
@@ -268,9 +294,13 @@ def delete(self):
268294
also stopped. Deleting a cluster does not delete your GIS services.
269295
"""
270296
params = {
271-
"f" : "json",
272-
"token" : self._securityHandler.token
297+
"f" : "json"
273298
}
299+
if self._securityHandler is not None:
300+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
301+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
302+
else:
303+
params['token'] = self._securityHandler.token
274304
url = self._url + "/delete"
275305
return self._do_post(url=url,
276306
param_dict=params,
@@ -286,9 +316,13 @@ def servicesInCluster(self):
286316
This resource was added at ArcGIS 10.1 Service Pack 1.
287317
"""
288318
params = {
289-
"f" : "json",
290-
"token" : self._securityHandler.token
319+
"f" : "json"
291320
}
321+
if self._securityHandler is not None:
322+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
323+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
324+
else:
325+
params['token'] = self._securityHandler.token
292326
url = self._url + "/services"
293327
return self._do_post(url=url,
294328
param_dict=params,
@@ -306,9 +340,13 @@ def machinesInCluster(self):
306340
"""
307341
url = self._url + "/machines"
308342
params = {
309-
"f" : "json",
310-
"token" : self._securityHandler.token
343+
"f" : "json"
311344
}
345+
if self._securityHandler is not None:
346+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
347+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
348+
else:
349+
params['token'] = self._securityHandler.token
312350
return self._do_get(url=url,
313351
param_dict=params,
314352
proxy_url=self._proxy_url,
@@ -328,9 +366,13 @@ def addMachinesToCluster(self, machineNames):
328366
url = self._url + "/machines/add"
329367
params = {
330368
"f" : "json",
331-
"token" : self._securityHandler.token,
332369
"machineNames" : machineNames
333370
}
371+
if self._securityHandler is not None:
372+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
373+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
374+
else:
375+
params['token'] = self._securityHandler.token
334376
return self._do_post(url=url,
335377
param_dict=params,
336378
proxy_url=self._proxy_url,
@@ -349,9 +391,13 @@ def removeMachinesFromCluster(self,
349391
url = self._url + "/machines/remove"
350392
params = {
351393
"f" : "json",
352-
"token" : self._securityHandler.token,
353394
"machineNames" : machineNames
354395
}
396+
if self._securityHandler is not None:
397+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
398+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
399+
else:
400+
params['token'] = self._securityHandler.token
355401
return self._do_post(url=url,
356402
param_dict=params,
357403
proxy_url=self._proxy_url,
@@ -368,9 +414,13 @@ def editProtocol(self, clusterProtocolObj):
368414
url = self._url + "/editProtocol"
369415
params = {
370416
"f" : "json",
371-
"token" : self._securityHandler.token,
372417
"clusterProtocol" : str(clusterProtocolObj)
373418
}
419+
if self._securityHandler is not None:
420+
if isinstance(self._securityHandler , PortalTokenSecurityHandler):
421+
params['token'] = self._securityHandler.servertoken(serverURL=self._url,referer=self._url)
422+
else:
423+
params['token'] = self._securityHandler.token
374424
return self._do_post(url=url,
375425
param_dict=params,
376426
proxy_url=self._proxy_url,

0 commit comments

Comments
 (0)