Skip to content

Commit 4f1f3d3

Browse files
committed
Add quick accessors to zone of dataset/managed_folder/saved_model
1 parent 1d62772 commit 4f1f3d3

4 files changed

Lines changed: 31 additions & 13 deletions

File tree

dataikuapi/dss/dataset.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -515,9 +515,17 @@ def get_metric_history(self, metric, partition=''):
515515
params={'metricLookup' : metric if isinstance(metric, str) or isinstance(metric, unicode) else json.dumps(metric)})
516516

517517
########################################################
518-
# Usages
518+
# Misc
519519
########################################################
520520

521+
def get_zone(self):
522+
"""
523+
Gets the flow zone of this dataset
524+
525+
:rtype: :class:`dataikuapi.dss.flow.DSSFlowZone`
526+
"""
527+
return self.project.get_flow().get_zone_of_object(self)
528+
521529
def get_usages(self):
522530
"""
523531
Get the recipes or analyses referencing this dataset
@@ -527,9 +535,6 @@ def get_usages(self):
527535
"""
528536
return self.client._perform_json("GET", "/projects/%s/datasets/%s/usages" % (self.project_key, self.dataset_name))
529537

530-
########################################################
531-
# Discussions
532-
########################################################
533538
def get_object_discussions(self):
534539
"""
535540
Get a handle to manage discussions on the dataset

dataikuapi/dss/flow.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,7 @@ def get_graph(self):
260260
data = self.client._perform_json("GET", "/projects/%s/flow/zones/%s/graph" % (self.flow.project.project_key, self.id))
261261
return DSSProjectFlowGraph(self.flow, data)
262262

263+
263264
class DSSFlowZoneSettings(object):
264265
"""The settings of a flow zone. Do not create this directly, use :meth:`DSSFlowZone.get_settings`"""
265266
def __init__(self, zone):

dataikuapi/dss/managedfolder.py

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ class DSSManagedFolder(object):
1212
"""
1313
def __init__(self, client, project_key, odb_id):
1414
self.client = client
15+
self.project = client.get_project(project_key)
1516
self.project_key = project_key
1617
self.odb_id = odb_id
1718

@@ -155,9 +156,18 @@ def get_metric_history(self, metric):
155156

156157

157158
########################################################
158-
# Usages
159+
# Misc
159160
########################################################
160161

162+
def get_zone(self):
163+
"""
164+
Gets the flow zone of this managed folder
165+
166+
:rtype: :class:`dataikuapi.dss.flow.DSSFlowZone`
167+
"""
168+
return self.project.get_flow().get_zone_of_object(self)
169+
170+
161171
def get_usages(self):
162172
"""
163173
Get the recipes referencing this folder
@@ -167,9 +177,6 @@ def get_usages(self):
167177
"""
168178
return self.client._perform_json("GET", "/projects/%s/managedfolders/%s/usages" % (self.project_key, self.odb_id))
169179

170-
########################################################
171-
# Discussions
172-
########################################################
173180
def get_object_discussions(self):
174181
"""
175182
Get a handle to manage discussions on the managed folder

dataikuapi/dss/savedmodel.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ class DSSSavedModel(object):
1212
"""
1313
def __init__(self, client, project_key, sm_id):
1414
self.client = client
15+
self.project = client.get_project(project_key)
1516
self.project_key = project_key
1617
self.sm_id = sm_id
1718

@@ -105,9 +106,17 @@ def get_metric_values(self, version_id):
105106

106107

107108
########################################################
108-
# Usages
109+
# Misc
109110
########################################################
110111

112+
def get_zone(self):
113+
"""
114+
Gets the flow zone of this saved model
115+
116+
:rtype: :class:`dataikuapi.dss.flow.DSSFlowZone`
117+
"""
118+
return self.project.get_flow().get_zone_of_object(self)
119+
111120
def get_usages(self):
112121
"""
113122
Get the recipes referencing this model
@@ -117,10 +126,6 @@ def get_usages(self):
117126
"""
118127
return self.client._perform_json("GET", "/projects/%s/savedmodels/%s/usages" % (self.project_key, self.sm_id))
119128

120-
121-
########################################################
122-
# Discussions
123-
########################################################
124129
def get_object_discussions(self):
125130
"""
126131
Get a handle to manage discussions on the saved model

0 commit comments

Comments
 (0)