8000 Updated all _construct_url() to just @property baseurl · irislips/server-client-python@4c7a467 · GitHub
[go: up one dir, main page]

Skip to content

Commit 4c7a467

Browse files
LGraberRussell Hay
authored and
Russell Hay
committed
Updated all _construct_url() to just @Property baseurl
1 parent b61f421 commit 4c7a467

17 files changed

+79
-75
lines changed

tableauserverclient/server/endpoint/auth_endpoint.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,13 @@ def __exit__(self, exc_type, exc_val, exc_tb):
1919

2020
def __init__(self, parent_srv):
2121
super(Endpoint, self).__init__()
22-
self.baseurl = "{0}/auth".format(parent_srv.baseurl)
2322
self.parent_srv = parent_srv
2423

24+
@property
25+
def baseurl(self):
26+
return "{0}/auth".format(self.parent_srv.baseurl)
27+
28+
2529
def sign_in(self, auth_req):
2630
url = "{0}/{1}".format(self.baseurl, 'signin')
2731
signin_req = RequestFactory.Auth.signin_req(auth_req)

tableauserverclient/server/endpoint/datasources_endpoint.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,16 @@
1818
class Datasources(Endpoint):
1919
def __init__(self, parent_srv):
2020
super(Endpoint, self).__init__()
21-
self.baseurl = "{0}/sites/{1}/datasources"
2221
self.parent_srv = parent_srv
2322

24-
def _construct_url(self):
25-
return self.baseurl.format(self.parent_srv.baseurl, self.parent_srv.site_id)
23+
@property
24+
def baseurl(self):
25+
return "{0}/sites/{1}/datasources".format(self.parent_srv.baseurl, self.parent_srv.site_id)
2626

2727
# Get all datasources
2828
def get(self, req_options=None):
2929
logger.info('Querying all datasources on site')
30-
url = self._construct_url()
30+
url = self.baseurl
3131
server_response = self.get_request(url, req_options)
3232
pagination_item = PaginationItem.from_response(server_response.content)
3333
all_datasource_items = DatasourceItem.from_response(server_response.content)
@@ -39,7 +39,7 @@ def get_by_id(self, datasource_id):
3939
error = "Datasource ID undefined."
4040
raise ValueError(error)
4141
logger.info('Querying single datasource (ID: {0})'.format(datasource_id))
42-
url = "{0}/{1}".format(self._construct_url(), datasource_id)
42+
url = "{0}/{1}".format(self.baseurl, datasource_id)
4343
server_response = self.get_request(url)
4444
return DatasourceItem.from_response(server_response.content)[0]
4545

@@ -48,7 +48,7 @@ def populate_connections(self, datasource_item):
4848
if not datasource_item.id:
4949
error = 'Datasource item missing ID. Datasource must be retrieved from server first.'
5050
raise MissingRequiredFieldError(error)
51-
url = '{0}/{1}/connections'.format(self._construct_url(), datasource_item.id)
51+
url = '{0}/{1}/connections'.format(self.baseurl, datasource_item.id)
5252
server_response = self.get_request(url)
5353
datasource_item._set_connections(ConnectionItem.from_response(server_response.content))
5454
logger.info('Populated connections for datasource (ID: {0})'.format(datasource_item.id))
@@ -58,7 +58,7 @@ def delete(self, datasource_id):
5858
if not datasource_id:
5959
error = "Datasource ID undefined."
6060
raise ValueError(error)
61-
url = "{0}/{1}".format(self._construct_url(), datasource_id)
61+
url = "{0}/{1}".format(self.baseurl, datasource_id)
6262
self.delete_request(url)
6363
logger.info('Deleted single datasource (ID: {0})'.format(datasource_id))
6464

@@ -67,7 +67,7 @@ def download(self, datasource_id, filepath=None):
6767
if not datasource_id:
6868
error = "Datasource ID undefined."
6969
raise ValueError(error)
70-
url = "{0}/{1}/content".format(self._construct_url(), datasource_id)
70+
url = "{0}/{1}/content".format(self.baseurl, datasource_id)
7171
server_response = self.get_request(url)
7272
_, params = cgi.parse_header(server_response.headers['Content-Disposition'])
7373
filename = os.path.basename(params['filename'])
@@ -86,7 +86,7 @@ def update(self, datasource_item):
8686
if not datasource_item.id:
8787
error = 'Datasource item missing ID. Datasource must be retrieved from server first.'
8888
raise MissingRequiredFieldError(error)
89-
url = "{0}/{1}".format(self._construct_url(), datasource_item.id)
89+
url = "{0}/{1}".format(self.baseurl, datasource_item.id)
9090
update_req = RequestFactory.Datasource.update_req(datasource_item)
9191
server_response = self.put_request(url, update_req)
9292
logger.info('Updated datasource item (ID: {0})'.format(datasource_item.id))
@@ -113,7 +113,7 @@ def publish(self, datasource_item, file_path, mode):
113113
raise ValueError(error)
114114

115115
# Construct the url with the defined mode
116-
url = "{0}?datasourceType={1}".format(self._construct_url(), file_extension)
116+
url = "{0}?datasourceType={1}".format(self.baseurl, file_extension)
117117
if mode == self.parent_srv.PublishMode.Overwrite or mode == self.parent_srv.PublishMode.Append:
118118
url += '&{0}=true'.format(mode.lower())
119119

tableauserverclient/server/endpoint/fileuploads_endpoint.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@
1414
class Fileuploads(Endpoint):
1515
def __init__(self, parent_srv):
1616
super(Endpoint, self).__init__()
17-
self.base_url = "{0}/sites/{1}/fileUploads"
1817
self.parent_srv = parent_srv
1918
self.upload_id = ''
2019

21-
def _construct_url(self):
22-
return self.base_url.format(self.parent_srv.baseurl, self.parent_srv.site_id)
20+
@property
21+
def baseurl(self):
22+
return "{0}/sites/{1}/fileUploads".format(self.parent_srv.baseurl, self.parent_srv.site_id)
2323

2424
def initiate(self):
25-
url = self._construct_url()
25+
url = self.baseurl
2626
server_response = self.post_request(url, '')
2727
fileupload_item = FileuploadItem.from_response(server_response.content)
2828
self.upload_id = fileupload_item.upload_session_id
@@ -33,7 +33,7 @@ def append(self, xml_request, content_type):
3333
if not self.upload_id:
3434
error = "File upload session must be initiated first."
3535
raise MissingRequiredFieldError(error)
36-
url = "{0}/{1}".format(self._construct_url(), self.upload_id)
36+
url = "{0}/{1}".format(self.baseurl, self.upload_id)
3737
server_response = self.put_request(url, xml_request, content_type)
3838
logger.info('Uploading a chunk to session (ID: {0})'.format(self.upload_id))
3939
return FileuploadItem.from_response(server_response.content)

tableauserverclient/server/endpoint/groups_endpoint.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@
99
class Groups(Endpoint):
1010
def __init__(self, parent_srv):
1111
super(Endpoint, self).__init__()
12-
self.baseurl = "{0}/sites/{1}/groups"
1312
self.parent_srv = parent_srv
1413

15-
def _construct_url(self):
16-
return self.baseurl.format(self.parent_srv.baseurl, self.parent_srv.site_id)
14+
@property
15+
def baseurl(self):
16+
return "{0}/sites/{1}/groups".format(self.parent_srv.baseurl, self.parent_srv.site_id)
1717

1818
# Gets all groups
1919
def get(self, req_options=None):
2020
logger.info('Querying all groups on site')
21-
url = self._construct_url()
21+
url = self.baseurl
2222
server_response = self.get_request(url, req_options)
2323
pagination_item = PaginationItem.from_response(server_response.content)
2424
all_group_items = GroupItem.from_response(server_response.content)
@@ -29,7 +29,7 @@ def populate_users(self, group_item, req_options=None):
2929
if not group_item.id:
3030
error = "Group item missing ID. Group must be retrieved from server first."
3131
raise MissingRequiredFieldError(error)
32-
url = "{0}/{1}/users".format(self._construct_url(), group_item.id)
32+
url = "{0}/{1}/users".format(self.baseurl, group_item.id)
3333
server_response = self.get_request(url, req_options)
3434
group_item._set_users(UserItem.from_response(server_response.content))
3535
pagination_item = PaginationItem.from_response(server_response.content)
@@ -41,7 +41,7 @@ def delete(self, group_id):
4141
if not group_id:
4242
error = "Group ID undefined."
4343
raise ValueError(error)
44-
url = "{0}/{1}".format(self._construct_url(), group_id)
44+
url = "{0}/{1}".format(self.baseurl, group_id)
4545
self.delete_request(url)
4646
logger.info('Deleted single group (ID: {0})'.format(group_id))
4747

@@ -54,7 +54,7 @@ def remove_user(self, group_item, user_id):
5454
if not user_id:
5555
error = "User ID undefined."
5656
raise ValueError(error)
57-
url = "{0}/{1}/users/{2}".format(self._construct_url(), group_item.id, user_id)
57+
url = "{0}/{1}/users/{2}".format(self.baseurl, group_item.id, user_id)
5858
self.delete_request(url)
5959
for user in user_set:
6060
if user.id == user_id:
@@ -71,7 +71,7 @@ def add_user(self, group_item, user_id):
7171
if not user_id:
7272
error = "User ID undefined."
7373
raise ValueError(error)
74-
url = "{0}/{1}/users".format(self._construct_url(), group_item.id)
74+
url = "{0}/{1}/users".format(self.baseurl, group_item.id)
7575
add_req = RequestFactory.Group.add_user_req(user_id)
7676
server_response = self.post_request(url, add_req)
7777
new_user = UserItem.from_response(server_response.content).pop()

tableauserverclient/server/endpoint/projects_endpoint.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,15 @@
1010
class Projects(Endpoint):
1111
def __init__(self, parent_srv):
1212
super(Endpoint, self).__init__()
13-
self.baseurl = "{0}/sites/{1}/projects"
1413
self.parent_srv = parent_srv
1514

16-
def _construct_url(self):
17-
return self.baseurl.format(self.parent_srv.baseurl, self.parent_srv.site_id)
15+
@property
16+
def baseurl(self):
17+
return "{0}/sites/{1}/projects".format(self.parent_srv.baseurl, self.parent_srv.site_id)
1818

1919
def get(self, req_options=None):
2020
logger.info('Querying all projects on site')
21-
url = self._construct_url()
21+
url = self.baseurl
2222
server_response = self.get_request(url, req_options)
2323
pagination_item = PaginationItem.from_response(server_response.content)
2424
all_project_items = ProjectItem.from_response(server_response.content)
@@ -28,7 +28,7 @@ def delete(self, project_id):
2828
if not project_id:
2929
error = "Project ID undefined."
3030
raise ValueError(error)
31-
url = "{0}/{1}".format(self._construct_url(), project_id)
31+
url = "{0}/{1}".format(self.baseurl, project_id)
3232
self.delete_request(url)
3333
logger.info('Deleted single project (ID: {0})'.format 10000 (project_id))
3434

@@ -37,15 +37,15 @@ def update(self, project_item):
3737
error = "Project item missing ID."
3838
raise MissingRequiredFieldError(error)
3939

40-
url = "{0}/{1}".format(self._construct_url(), project_item.id)
40+
url = "{0}/{1}".format(self.baseurl, project_item.id)
4141
update_req = RequestFactory.Project.update_req(project_item)
4242
server_response = self.put_request(url, update_req)
4343
logger.info('Updated project item (ID: {0})'.format(project_item.id))
4444
updated_project = copy.copy(project_item)
4545
return updated_project._parse_common_tags(server_response.content)
4646

4747
def create(self, project_item):
48-
url = self._construct_url()
48+
url = self.baseurl
4949
create_req = RequestFactory.Project.create_req(project_item)
5050
server_response = self.post_request(url, create_req)
5151
new_project = ProjectItem.from_response(server_response.content)[0]

tableauserverclient/server/endpoint/sites_endpoint.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@
1010
class Sites(Endpoint):
1111
def __init__(self, parent_srv):
1212
super(Endpoint, self).__init__()
13-
self.baseurl = "{0}/sites"
1413
self.parent_srv = parent_srv
1514

16-
def _construct_url(self):
17-
return self.baseurl.format(self.parent_srv.baseurl)
15+
@property
16+
def baseurl(self):
17+
return "{0}/sites".format(self.parent_srv.baseurl)
1818

1919
# Gets all sites
2020
def get(self, req_options=None):
2121
logger.info('Querying all sites on site')
22-
url = self._construct_url()
22+
url = self.baseurl
2323
server_response = self.get_request(url, req_options)
2424
pagination_item = PaginationItem.from_response(server_response.content)
2525
all_site_items = SiteItem.from_response(server_response.content)
< 10000 button class="Button Button--iconOnly Button--invisible ExpandableHunkHeaderDiffLine-module__expand-button-line--rnQN5 ExpandableHunkHeaderDiffLine-module__expand-button-unified--j86KQ" aria-label="Expand file from line 25 to line 31" data-direction="all" aria-hidden="true" tabindex="-1">
@@ -31,7 +31,7 @@ def get_by_id(self, site_id):
3131
error = "Site ID undefined."
3232
raise ValueError(error)
3333
logger.info('Querying single site (ID: {0})'.format(site_id))
34-
url = "{0}/{1}".format(self._construct_url(), site_id)
34+
url = "{0}/{1}".format(self.baseurl, site_id)
3535
server_response = self.get_request(url)
3636
return SiteItem.from_response(server_response.content)[0]
3737

@@ -45,7 +45,7 @@ def update(self, site_item):
4545
error = 'You cannot set admin_mode to ContentOnly and also set a user quota'
4646
raise ValueError(error)
4747

48-
url = "{0}/{1}".format(self._construct_url(), site_item.id)
48+
url = "{0}/{1}".format(self.baseurl, site_item.id)
4949
update_req = RequestFactory.Site.update_req(site_item)
5050
server_response = self.put_request(url, update_req)
5151
logger.info('Updated site item (ID: {0})'.format(site_item.id))
@@ -57,7 +57,7 @@ def delete(self, site_id):
5757
if not site_id:
5858
error = "Site ID undefined."
5959
raise ValueError(error)
60-
url = "{0}/{1}".format(self._construct_url(), site_id)
60+
url = "{0}/{1}".format(self.baseurl, site_id)
6161
self.delete_request(url)
6262
logger.info('Deleted single site (ID: {0})'.format(site_id))
6363

@@ -68,7 +68,7 @@ def create(self, site_item):
6868
error = 'You cannot set admin_mode to ContentOnly and also set a user quota'
6969
raise ValueError(error)
7070

71-
url = self._construct_url()
71+
url = self.baseurl
7272
create_req = RequestFactory.Site.create_req(site_item)
7373
server_response = self.post_request(url, create_req)
7474
new_site = SiteItem.from_response(server_response.content)[0]

tableauserverclient/server/endpoint/users_endpoint.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@
1010
class Users(Endpoint):
1111
def __init__(self, parent_srv):
1212
super(Endpoint, self).__init__()
13-
self.baseurl = "{0}/sites/{1}/users"
1413
self.parent_srv = parent_srv
1514

16-
def _construct_url(self):
17-
return self.baseurl.format(self.parent_srv.baseurl, self.parent_srv.site_id)
15+
@property
16+
def baseurl(self):
17+
return "{0}/sites/{1}/users".format(self.parent_srv.baseurl, self.parent_srv.site_id)
1818

1919
# Gets all users
2020
def get(self, req_options=None):
2121
logger.info('Querying all users on site')
22-
url = self._construct_url()
22+
url = self.baseurl
2323
server_response = self.get_request(url, req_options)
2424
pagination_item = PaginationItem.from_response(server_response.content)
2525
all_user_items = UserItem.from_response(server_response.content)
@@ -31,7 +31,7 @@ def get_by_id(self, user_id):
3131
error = "User ID undefined."
3232
raise ValueError(error)
3333
logger.info('Querying single user (ID: {0})'.format(user_id))
34-
url = "{0}/{1}".format(self._construct_url(), user_id)
34+
url = "{0}/{1}".format(self.baseurl, user_id)
3535
server_response = self.get_request(url)
3636
return UserItem.from_response(server_response.content).pop()
3737

@@ -41,7 +41,7 @@ def update(self, user_item):
4141
error = "User item missing ID."
4242
raise MissingRequiredFieldError(error)
4343

44-
url = "{0}/{1}".format(self._construct_url(), user_item.id)
44+
url = "{0}/{1}".format(self.baseurl, user_item.id)
4545
update_req = RequestFactory.User.update_req(user_item)
4646
server_response = self.put_request(url, update_req)
4747
logger.info('Updated user item (ID: {0})'.format(user_item.id))
@@ -53,13 +53,13 @@ def remove(self, user_id):
5353
if not user_id:
5454
error = "User ID undefined."
5555
raise ValueError(error)
56-
url = "{0}/{1}".format(self._construct_url(), user_id)
56+
url = "{0}/{1}".format(self.baseurl, user_id)
5757
self.delete_request(url)
5858
logger.info('Removed single user (ID: {0})'.format(user_id))
5959

6060
# Add new user to site
6161
def add(self, user_item):
62-
url = self._construct_url()
62+
url = self.baseurl
6363
add_req = RequestFactory.User.add_req(user_item)
6464
server_response = self.post_request(url, add_req)
6565
new_user = UserItem.from_response(server_response.content).pop()
@@ -71,7 +71,7 @@ def populate_workbooks(self, user_item, req_options=None):
7171
if not user_item.id:
7272
error = "User item missing ID."
7373
raise MissingRequiredFieldError(error)
74-
url = "{0}/{1}/workbooks".format(self._construct_url(), user_item.id)
74+
url = "{0}/{1}/workbooks".format(self.baseurl, user_item.id)
7575
server_response = self.get_request(url, req_options)
7676
logger.info('Populated workbooks for user (ID: {0})'.format(user_item.id))
7777
user_item._set_workbooks(WorkbookItem.from_response(server_response.content))

tableauserverclient/server/endpoint/views_endpoint.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@
99
class Views(Endpoint):
1010
def __init__(self, parent_srv):
1111
super(Endpoint, self).__init__()
12-
self.baseurl = "{0}/sites/{1}"
1312
self.parent_srv = parent_srv
1413

15-
def _construct_url(self):
16-
return self.baseurl.format(self.parent_srv.baseurl, self.parent_srv.site_id)
14+
@property
15+
def baseurl(self):
16+
return "{0}/sites/{1}".format(self.parent_srv.baseurl, self.parent_srv.site_id)
1717

1818
def get(self, req_options=None):
1919
logger.info('Querying all views on site')
20-
url = "{0}/views".format(self._construct_url())
20+
url = "{0}/views".format(self.baseurl)
2121
server_response = self.get_request(url, req_options)
2222
pagination_item = PaginationItem.from_response(server_response.content)
2323
all_view_items = ViewItem.from_response(server_response.content)
@@ -27,7 +27,7 @@ def populate_preview_image(self, view_item):
2727
if not view_item.id or not view_item.workbook_id:
2828
error = "View item missing ID or workbook ID."
2929
raise MissingRequiredFieldError(error)
30-
url = "{0}/workbooks/{1}/views/{2}/previewImage".format(self._construct_url(),
30+
url = "{0}/workbooks/{1}/views/{2}/previewImage".format(self.baseurl,
3131
view_item.workbook_id,
3232
view_item.id)
3333
server_response = self.get_request(url)

0 commit comments

Comments
 (0)
0