lightning-sdk 0.2.3__py3-none-any.whl → 0.2.5__py3-none-any.whl

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.
Files changed (110) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/ai_hub.py +10 -17
  3. lightning_sdk/api/ai_hub_api.py +20 -3
  4. lightning_sdk/api/studio_api.py +0 -8
  5. lightning_sdk/cli/serve.py +139 -22
  6. lightning_sdk/deployment/deployment.py +32 -4
  7. lightning_sdk/lightning_cloud/openapi/__init__.py +49 -1
  8. lightning_sdk/lightning_cloud/openapi/api/__init__.py +4 -0
  9. lightning_sdk/lightning_cloud/openapi/api/cloud_space_environment_template_service_api.py +537 -0
  10. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +10 -6
  11. lightning_sdk/lightning_cloud/openapi/api/lit_dataset_service_api.py +1973 -0
  12. lightning_sdk/lightning_cloud/openapi/api/lit_registry_service_api.py +5 -1
  13. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +20 -20
  14. lightning_sdk/lightning_cloud/openapi/api/pipeline_templates_service_api.py +339 -0
  15. lightning_sdk/lightning_cloud/openapi/api/pipelines_service_api.py +5 -1
  16. lightning_sdk/lightning_cloud/openapi/api/schedules_service_api.py +573 -0
  17. lightning_sdk/lightning_cloud/openapi/api/slurm_jobs_user_service_api.py +202 -0
  18. lightning_sdk/lightning_cloud/openapi/models/__init__.py +45 -1
  19. lightning_sdk/lightning_cloud/openapi/models/cluster_id_capacityblock_body.py +15 -15
  20. lightning_sdk/lightning_cloud/openapi/models/cluster_id_slurmusers_body.py +201 -0
  21. lightning_sdk/lightning_cloud/openapi/models/dataset_id_versions_body.py +149 -0
  22. lightning_sdk/lightning_cloud/openapi/models/dataset_id_visibility_body.py +149 -0
  23. lightning_sdk/lightning_cloud/openapi/models/environmenttemplates_id_body.py +227 -0
  24. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +69 -69
  25. lightning_sdk/lightning_cloud/openapi/models/litdatasets_dataset_id_body.py +149 -0
  26. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +27 -1
  27. lightning_sdk/lightning_cloud/openapi/models/pipelines_id_body.py +69 -17
  28. lightning_sdk/lightning_cloud/openapi/models/pipelinetemplates_id_body.py +331 -0
  29. lightning_sdk/lightning_cloud/openapi/models/project_id_litdatasets_body.py +227 -0
  30. lightning_sdk/lightning_cloud/openapi/models/project_id_pipelines_body.py +17 -17
  31. lightning_sdk/lightning_cloud/openapi/models/project_id_schedules_body.py +201 -0
  32. lightning_sdk/lightning_cloud/openapi/models/schedules_id_body.py +383 -0
  33. lightning_sdk/lightning_cloud/openapi/models/slurm_jobs_body.py +15 -15
  34. lightning_sdk/lightning_cloud/openapi/models/upload_id_complete_body1.py +149 -0
  35. lightning_sdk/lightning_cloud/openapi/models/upload_id_parts_body1.py +149 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_agent_job.py +124 -20
  37. lightning_sdk/lightning_cloud/openapi/models/v1_assistant_model_status.py +2 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_provider.py +1 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space.py +27 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template.py +253 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  42. lightning_sdk/lightning_cloud/openapi/models/v1_complete_lit_dataset_multi_part_upload_response.py +97 -0
  43. lightning_sdk/lightning_cloud/openapi/models/v1_complete_lit_dataset_upload_response.py +97 -0
  44. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +149 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_create_lit_dataset_multi_part_upload_response.py +123 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_create_organization_request.py +27 -1
  47. lightning_sdk/lightning_cloud/openapi/models/v1_create_pipeline_template_request.py +383 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +27 -1
  49. lightning_sdk/lightning_cloud/openapi/models/{v1_pipeline_schedule.py → v1_delete_cloud_space_environment_template_response.py} +32 -32
  50. lightning_sdk/lightning_cloud/openapi/models/v1_delete_lit_dataset_response.py +97 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_delete_lit_dataset_version_response.py +97 -0
  52. lightning_sdk/lightning_cloud/openapi/models/v1_delete_schedule_response.py +175 -0
  53. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_size_response.py +79 -1
  54. lightning_sdk/lightning_cloud/openapi/models/v1_get_lit_dataset_file_upload_urls_response.py +123 -0
  55. lightning_sdk/lightning_cloud/openapi/models/v1_get_lit_dataset_files_url_response.py +149 -0
  56. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +27 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_instance_overprovisioning_spec.py +79 -27
  58. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +27 -1
  59. lightning_sdk/lightning_cloud/openapi/models/v1_list_cloud_space_environment_templates_response.py +123 -0
  60. lightning_sdk/lightning_cloud/openapi/models/v1_list_lit_dataset_versions_response.py +123 -0
  61. lightning_sdk/lightning_cloud/openapi/models/v1_list_lit_datasets_response.py +123 -0
  62. lightning_sdk/lightning_cloud/openapi/models/v1_list_schedules_response.py +123 -0
  63. lightning_sdk/lightning_cloud/openapi/models/v1_list_slurm_cluster_users_response.py +123 -0
  64. lightning_sdk/lightning_cloud/openapi/models/v1_lit_dataset.py +539 -0
  65. lightning_sdk/lightning_cloud/openapi/models/v1_lit_dataset_file.py +175 -0
  66. lightning_sdk/lightning_cloud/openapi/models/v1_lit_dataset_version_archive.py +435 -0
  67. lightning_sdk/lightning_cloud/openapi/models/v1_lit_registry_project.py +27 -1
  68. lightning_sdk/lightning_cloud/openapi/models/v1_lit_repository.py +27 -1
  69. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +27 -1
  70. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +107 -3
  71. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +53 -1
  72. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline.py +69 -17
  73. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_parameter.py +435 -0
  74. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_parameter_placement.py +149 -0
  75. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_parameter_placement_type.py +106 -0
  76. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_parameter_type.py +106 -0
  77. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_template.py +513 -0
  78. lightning_sdk/lightning_cloud/openapi/models/v1_pipeline_template_visibility_type.py +105 -0
  79. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +27 -1
  80. lightning_sdk/lightning_cloud/openapi/models/v1_schedule.py +435 -0
  81. lightning_sdk/lightning_cloud/openapi/models/v1_schedule_resource_type.py +103 -0
  82. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_cluster_user.py +227 -0
  83. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_job.py +58 -6
  84. lightning_sdk/lightning_cloud/openapi/models/v1_slurm_node.py +31 -291
  85. lightning_sdk/lightning_cloud/openapi/models/v1_update_lit_dataset_visibility_response.py +123 -0
  86. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +27 -1
  87. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +157 -105
  88. lightning_sdk/lightning_cloud/openapi/models/v1_validate_managed_endpoint_response.py +27 -1
  89. lightning_sdk/lightning_cloud/openapi/models/v1_voltage_park_direct_v1.py +203 -0
  90. lightning_sdk/lightning_cloud/openapi/models/version_default_body.py +29 -29
  91. lightning_sdk/lightning_cloud/openapi/models/version_default_body1.py +149 -0
  92. lightning_sdk/lightning_cloud/openapi/models/version_uploads_body1.py +123 -0
  93. lightning_sdk/lightning_cloud/openapi/models/versions_version_body1.py +123 -0
  94. lightning_sdk/lightning_cloud/rest_client.py +2 -0
  95. lightning_sdk/lit_container.py +8 -1
  96. lightning_sdk/mmt/mmt.py +1 -18
  97. lightning_sdk/mmt/v1.py +1 -28
  98. lightning_sdk/models.py +15 -6
  99. lightning_sdk/pipeline/pipeline.py +2 -2
  100. lightning_sdk/pipeline/types.py +28 -2
  101. lightning_sdk/pipeline/utils.py +1 -1
  102. lightning_sdk/plugin.py +0 -6
  103. lightning_sdk/serve.py +55 -22
  104. lightning_sdk/utils/resolve.py +1 -0
  105. {lightning_sdk-0.2.3.dist-info → lightning_sdk-0.2.5.dist-info}/METADATA +1 -1
  106. {lightning_sdk-0.2.3.dist-info → lightning_sdk-0.2.5.dist-info}/RECORD +110 -62
  107. {lightning_sdk-0.2.3.dist-info → lightning_sdk-0.2.5.dist-info}/WHEEL +1 -1
  108. {lightning_sdk-0.2.3.dist-info → lightning_sdk-0.2.5.dist-info}/LICENSE +0 -0
  109. {lightning_sdk-0.2.3.dist-info → lightning_sdk-0.2.5.dist-info}/entry_points.txt +0 -0
  110. {lightning_sdk-0.2.3.dist-info → lightning_sdk-0.2.5.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,201 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class ClusterIdSlurmusersBody(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'home_directory': 'str',
45
+ 'organization_id': 'str',
46
+ 'user_id': 'str',
47
+ 'username': 'str'
48
+ }
49
+
50
+ attribute_map = {
51
+ 'home_directory': 'homeDirectory',
52
+ 'organization_id': 'organizationId',
53
+ 'user_id': 'userId',
54
+ 'username': 'username'
55
+ }
56
+
57
+ def __init__(self, home_directory: 'str' =None, organization_id: 'str' =None, user_id: 'str' =None, username: 'str' =None): # noqa: E501
58
+ """ClusterIdSlurmusersBody - a model defined in Swagger""" # noqa: E501
59
+ self._home_directory = None
60
+ self._organization_id = None
61
+ self._user_id = None
62
+ self._username = None
63
+ self.discriminator = None
64
+ if home_directory is not None:
65
+ self.home_directory = home_directory
66
+ if organization_id is not None:
67
+ self.organization_id = organization_id
68
+ if user_id is not None:
69
+ self.user_id = user_id
70
+ if username is not None:
71
+ self.username = username
72
+
73
+ @property
74
+ def home_directory(self) -> 'str':
75
+ """Gets the home_directory of this ClusterIdSlurmusersBody. # noqa: E501
76
+
77
+
78
+ :return: The home_directory of this ClusterIdSlurmusersBody. # noqa: E501
79
+ :rtype: str
80
+ """
81
+ return self._home_directory
82
+
83
+ @home_directory.setter
84
+ def home_directory(self, home_directory: 'str'):
85
+ """Sets the home_directory of this ClusterIdSlurmusersBody.
86
+
87
+
88
+ :param home_directory: The home_directory of this ClusterIdSlurmusersBody. # noqa: E501
89
+ :type: str
90
+ """
91
+
92
+ self._home_directory = home_directory
93
+
94
+ @property
95
+ def organization_id(self) -> 'str':
96
+ """Gets the organization_id of this ClusterIdSlurmusersBody. # noqa: E501
97
+
98
+
99
+ :return: The organization_id of this ClusterIdSlurmusersBody. # noqa: E501
100
+ :rtype: str
101
+ """
102
+ return self._organization_id
103
+
104
+ @organization_id.setter
105
+ def organization_id(self, organization_id: 'str'):
106
+ """Sets the organization_id of this ClusterIdSlurmusersBody.
107
+
108
+
109
+ :param organization_id: The organization_id of this ClusterIdSlurmusersBody. # noqa: E501
110
+ :type: str
111
+ """
112
+
113
+ self._organization_id = organization_id
114
+
115
+ @property
116
+ def user_id(self) -> 'str':
117
+ """Gets the user_id of this ClusterIdSlurmusersBody. # noqa: E501
118
+
119
+
120
+ :return: The user_id of this ClusterIdSlurmusersBody. # noqa: E501
121
+ :rtype: str
122
+ """
123
+ return self._user_id
124
+
125
+ @user_id.setter
126
+ def user_id(self, user_id: 'str'):
127
+ """Sets the user_id of this ClusterIdSlurmusersBody.
128
+
129
+
130
+ :param user_id: The user_id of this ClusterIdSlurmusersBody. # noqa: E501
131
+ :type: str
132
+ """
133
+
134
+ self._user_id = user_id
135
+
136
+ @property
137
+ def username(self) -> 'str':
138
+ """Gets the username of this ClusterIdSlurmusersBody. # noqa: E501
139
+
140
+
141
+ :return: The username of this ClusterIdSlurmusersBody. # noqa: E501
142
+ :rtype: str
143
+ """
144
+ return self._username
145
+
146
+ @username.setter
147
+ def username(self, username: 'str'):
148
+ """Sets the username of this ClusterIdSlurmusersBody.
149
+
150
+
151
+ :param username: The username of this ClusterIdSlurmusersBody. # noqa: E501
152
+ :type: str
153
+ """
154
+
155
+ self._username = username
156
+
157
+ def to_dict(self) -> dict:
158
+ """Returns the model properties as a dict"""
159
+ result = {}
160
+
161
+ for attr, _ in six.iteritems(self.swagger_types):
162
+ value = getattr(self, attr)
163
+ if isinstance(value, list):
164
+ result[attr] = list(map(
165
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
166
+ value
167
+ ))
168
+ elif hasattr(value, "to_dict"):
169
+ result[attr] = value.to_dict()
170
+ elif isinstance(value, dict):
171
+ result[attr] = dict(map(
172
+ lambda item: (item[0], item[1].to_dict())
173
+ if hasattr(item[1], "to_dict") else item,
174
+ value.items()
175
+ ))
176
+ else:
177
+ result[attr] = value
178
+ if issubclass(ClusterIdSlurmusersBody, dict):
179
+ for key, value in self.items():
180
+ result[key] = value
181
+
182
+ return result
183
+
184
+ def to_str(self) -> str:
185
+ """Returns the string representation of the model"""
186
+ return pprint.pformat(self.to_dict())
187
+
188
+ def __repr__(self) -> str:
189
+ """For `print` and `pprint`"""
190
+ return self.to_str()
191
+
192
+ def __eq__(self, other: 'ClusterIdSlurmusersBody') -> bool:
193
+ """Returns true if both objects are equal"""
194
+ if not isinstance(other, ClusterIdSlurmusersBody):
195
+ return False
196
+
197
+ return self.__dict__ == other.__dict__
198
+
199
+ def __ne__(self, other: 'ClusterIdSlurmusersBody') -> bool:
200
+ """Returns true if both objects are not equal"""
201
+ return not self == other
@@ -0,0 +1,149 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class DatasetIdVersionsBody(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'cluster_id': 'str',
45
+ 'version': 'str'
46
+ }
47
+
48
+ attribute_map = {
49
+ 'cluster_id': 'clusterId',
50
+ 'version': 'version'
51
+ }
52
+
53
+ def __init__(self, cluster_id: 'str' =None, version: 'str' =None): # noqa: E501
54
+ """DatasetIdVersionsBody - a model defined in Swagger""" # noqa: E501
55
+ self._cluster_id = None
56
+ self._version = None
57
+ self.discriminator = None
58
+ if cluster_id is not None:
59
+ self.cluster_id = cluster_id
60
+ if version is not None:
61
+ self.version = version
62
+
63
+ @property
64
+ def cluster_id(self) -> 'str':
65
+ """Gets the cluster_id of this DatasetIdVersionsBody. # noqa: E501
66
+
67
+
68
+ :return: The cluster_id of this DatasetIdVersionsBody. # noqa: E501
69
+ :rtype: str
70
+ """
71
+ return self._cluster_id
72
+
73
+ @cluster_id.setter
74
+ def cluster_id(self, cluster_id: 'str'):
75
+ """Sets the cluster_id of this DatasetIdVersionsBody.
76
+
77
+
78
+ :param cluster_id: The cluster_id of this DatasetIdVersionsBody. # noqa: E501
79
+ :type: str
80
+ """
81
+
82
+ self._cluster_id = cluster_id
83
+
84
+ @property
85
+ def version(self) -> 'str':
86
+ """Gets the version of this DatasetIdVersionsBody. # noqa: E501
87
+
88
+
89
+ :return: The version of this DatasetIdVersionsBody. # noqa: E501
90
+ :rtype: str
91
+ """
92
+ return self._version
93
+
94
+ @version.setter
95
+ def version(self, version: 'str'):
96
+ """Sets the version of this DatasetIdVersionsBody.
97
+
98
+
99
+ :param version: The version of this DatasetIdVersionsBody. # noqa: E501
100
+ :type: str
101
+ """
102
+
103
+ self._version = version
104
+
105
+ def to_dict(self) -> dict:
106
+ """Returns the model properties as a dict"""
107
+ result = {}
108
+
109
+ for attr, _ in six.iteritems(self.swagger_types):
110
+ value = getattr(self, attr)
111
+ if isinstance(value, list):
112
+ result[attr] = list(map(
113
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
114
+ value
115
+ ))
116
+ elif hasattr(value, "to_dict"):
117
+ result[attr] = value.to_dict()
118
+ elif isinstance(value, dict):
119
+ result[attr] = dict(map(
120
+ lambda item: (item[0], item[1].to_dict())
121
+ if hasattr(item[1], "to_dict") else item,
122
+ value.items()
123
+ ))
124
+ else:
125
+ result[attr] = value
126
+ if issubclass(DatasetIdVersionsBody, dict):
127
+ for key, value in self.items():
128
+ result[key] = value
129
+
130
+ return result
131
+
132
+ def to_str(self) -> str:
133
+ """Returns the string representation of the model"""
134
+ return pprint.pformat(self.to_dict())
135
+
136
+ def __repr__(self) -> str:
137
+ """For `print` and `pprint`"""
138
+ return self.to_str()
139
+
140
+ def __eq__(self, other: 'DatasetIdVersionsBody') -> bool:
141
+ """Returns true if both objects are equal"""
142
+ if not isinstance(other, DatasetIdVersionsBody):
143
+ return False
144
+
145
+ return self.__dict__ == other.__dict__
146
+
147
+ def __ne__(self, other: 'DatasetIdVersionsBody') -> bool:
148
+ """Returns true if both objects are not equal"""
149
+ return not self == other
@@ -0,0 +1,149 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class DatasetIdVisibilityBody(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'emails': 'list[str]',
45
+ 'visibility': 'V1ResourceVisibility'
46
+ }
47
+
48
+ attribute_map = {
49
+ 'emails': 'emails',
50
+ 'visibility': 'visibility'
51
+ }
52
+
53
+ def __init__(self, emails: 'list[str]' =None, visibility: 'V1ResourceVisibility' =None): # noqa: E501
54
+ """DatasetIdVisibilityBody - a model defined in Swagger""" # noqa: E501
55
+ self._emails = None
56
+ self._visibility = None
57
+ self.discriminator = None
58
+ if emails is not None:
59
+ self.emails = emails
60
+ if visibility is not None:
61
+ self.visibility = visibility
62
+
63
+ @property
64
+ def emails(self) -> 'list[str]':
65
+ """Gets the emails of this DatasetIdVisibilityBody. # noqa: E501
66
+
67
+
68
+ :return: The emails of this DatasetIdVisibilityBody. # noqa: E501
69
+ :rtype: list[str]
70
+ """
71
+ return self._emails
72
+
73
+ @emails.setter
74
+ def emails(self, emails: 'list[str]'):
75
+ """Sets the emails of this DatasetIdVisibilityBody.
76
+
77
+
78
+ :param emails: The emails of this DatasetIdVisibilityBody. # noqa: E501
79
+ :type: list[str]
80
+ """
81
+
82
+ self._emails = emails
83
+
84
+ @property
85
+ def visibility(self) -> 'V1ResourceVisibility':
86
+ """Gets the visibility of this DatasetIdVisibilityBody. # noqa: E501
87
+
88
+
89
+ :return: The visibility of this DatasetIdVisibilityBody. # noqa: E501
90
+ :rtype: V1ResourceVisibility
91
+ """
92
+ return self._visibility
93
+
94
+ @visibility.setter
95
+ def visibility(self, visibility: 'V1ResourceVisibility'):
96
+ """Sets the visibility of this DatasetIdVisibilityBody.
97
+
98
+
99
+ :param visibility: The visibility of this DatasetIdVisibilityBody. # noqa: E501
100
+ :type: V1ResourceVisibility
101
+ """
102
+
103
+ self._visibility = visibility
104
+
105
+ def to_dict(self) -> dict:
106
+ """Returns the model properties as a dict"""
107
+ result = {}
108
+
109
+ for attr, _ in six.iteritems(self.swagger_types):
110
+ value = getattr(self, attr)
111
+ if isinstance(value, list):
112
+ result[attr] = list(map(
113
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
114
+ value
115
+ ))
116
+ elif hasattr(value, "to_dict"):
117
+ result[attr] = value.to_dict()
118
+ elif isinstance(value, dict):
119
+ result[attr] = dict(map(
120
+ lambda item: (item[0], item[1].to_dict())
121
+ if hasattr(item[1], "to_dict") else item,
122
+ value.items()
123
+ ))
124
+ else:
125
+ result[attr] = value
126
+ if issubclass(DatasetIdVisibilityBody, dict):
127
+ for key, value in self.items():
128
+ result[key] = value
129
+
130
+ return result
131
+
132
+ def to_str(self) -> str:
133
+ """Returns the string representation of the model"""
134
+ return pprint.pformat(self.to_dict())
135
+
136
+ def __repr__(self) -> str:
137
+ """For `print` and `pprint`"""
138
+ return self.to_str()
139
+
140
+ def __eq__(self, other: 'DatasetIdVisibilityBody') -> bool:
141
+ """Returns true if both objects are equal"""
142
+ if not isinstance(other, DatasetIdVisibilityBody):
143
+ return False
144
+
145
+ return self.__dict__ == other.__dict__
146
+
147
+ def __ne__(self, other: 'DatasetIdVisibilityBody') -> bool:
148
+ """Returns true if both objects are not equal"""
149
+ return not self == other