# coding: utf-8
"""
Amorphic Data Platform
Amorphic Data Platform - API Definition documentation
The version of the OpenAPI document: 0.3.0
Generated by OpenAPI Generator (https://openapi-generator.tech)
Do not edit the class manually.
""" # noqa: E501
from __future__ import annotations
import pprint
import re # noqa: F401
import json
from pydantic import BaseModel, ConfigDict, Field, StrictStr
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
[docs]
class GroupInfo(BaseModel):
"""
GroupInfo
""" # noqa: E501
group_name: StrictStr = Field(alias="GroupName")
group_type: StrictStr = Field(alias="GroupType")
group_admins: List[StrictStr] = Field(alias="GroupAdmins")
members: List[StrictStr] = Field(alias="Members")
last_modified_by: Optional[StrictStr] = Field(default=None, alias="LastModifiedBy")
update_status: Optional[StrictStr] = Field(default=None, alias="UpdateStatus")
is_active: Optional[StrictStr] = Field(default=None, alias="IsActive")
status_message: Optional[StrictStr] = Field(default=None, alias="StatusMessage")
creation_time: Optional[StrictStr] = Field(default=None, alias="CreationTime")
created_by: Optional[StrictStr] = Field(default=None, alias="CreatedBy")
group_id: Optional[StrictStr] = Field(default=None, alias="GroupId")
last_modified_time: Optional[StrictStr] = Field(default=None, alias="LastModifiedTime")
domain_name_list: Optional[List[Dict[str, Any]]] = Field(default=None, alias="DomainNameList")
dataset_list: Optional[List[StrictStr]] = Field(default=None, alias="DatasetList")
job_id_list: Optional[List[StrictStr]] = Field(default=None, alias="JobIdList")
dashboard_list: Optional[List[StrictStr]] = Field(default=None, alias="DashboardList")
notebook_id_list: Optional[List[StrictStr]] = Field(default=None, alias="NotebookIdList")
model_id_list: Optional[List[StrictStr]] = Field(default=None, alias="ModelIdList")
schedule_id_list: Optional[List[StrictStr]] = Field(default=None, alias="ScheduleIdList")
view_id_list: Optional[List[StrictStr]] = Field(default=None, alias="ViewIdList")
library_id_list: Optional[List[StrictStr]] = Field(default=None, alias="LibraryIdList")
data_pipeline_id_list: Optional[List[StrictStr]] = Field(default=None, alias="DataPipelineIdList")
stream_id_list: Optional[List[StrictStr]] = Field(default=None, alias="StreamIdList")
data_quality_check_id_list: Optional[List[StrictStr]] = Field(default=None, alias="DataQualityCheckIdList")
tenant_name_list: Optional[List[StrictStr]] = Field(default=None, alias="TenantNameList")
connection_id_list: Optional[List[StrictStr]] = Field(default=None, alias="ConnectionIdList")
conn_app_id_list: Optional[List[StrictStr]] = Field(default=None, alias="ConnAppIdList")
store_id_list: Optional[List[StrictStr]] = Field(default=None, alias="StoreIdList")
hcls_workflow_id_list: Optional[List[StrictStr]] = Field(default=None, alias="HclsWorkflowIdList")
vertical_id_list: Optional[List[StrictStr]] = Field(default=None, alias="VerticalIdList")
__properties: ClassVar[List[str]] = ["GroupName", "GroupType", "GroupAdmins", "Members", "LastModifiedBy", "UpdateStatus", "IsActive", "StatusMessage", "CreationTime", "CreatedBy", "GroupId", "LastModifiedTime", "DomainNameList", "DatasetList", "JobIdList", "DashboardList", "NotebookIdList", "ModelIdList", "ScheduleIdList", "ViewIdList", "LibraryIdList", "DataPipelineIdList", "StreamIdList", "DataQualityCheckIdList", "TenantNameList", "ConnectionIdList", "ConnAppIdList", "StoreIdList", "HclsWorkflowIdList", "VerticalIdList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
)
[docs]
def to_str(self) -> str:
"""Returns the string representation of the model using alias"""
return pprint.pformat(self.model_dump(by_alias=True))
[docs]
def to_json(self) -> str:
"""Returns the JSON representation of the model using alias"""
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
return json.dumps(self.to_dict())
[docs]
@classmethod
def from_json(cls, json_str: str) -> Optional[Self]:
"""Create an instance of GroupInfo from a JSON string"""
return cls.from_dict(json.loads(json_str))
[docs]
def to_dict(self) -> Dict[str, Any]:
"""Return the dictionary representation of the model using alias.
This has the following differences from calling pydantic's
`self.model_dump(by_alias=True)`:
* `None` is only added to the output dict for nullable fields that
were set at model initialization. Other fields with value `None`
are ignored.
"""
excluded_fields: Set[str] = set([
])
_dict = self.model_dump(
by_alias=True,
exclude=excluded_fields,
exclude_none=True,
)
return _dict
[docs]
@classmethod
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
"""Create an instance of GroupInfo from a dict"""
if obj is None:
return None
if not isinstance(obj, dict):
return cls.model_validate(obj)
_obj = cls.model_validate({
"GroupName": obj.get("GroupName"),
"GroupType": obj.get("GroupType"),
"GroupAdmins": obj.get("GroupAdmins"),
"Members": obj.get("Members"),
"LastModifiedBy": obj.get("LastModifiedBy"),
"UpdateStatus": obj.get("UpdateStatus"),
"IsActive": obj.get("IsActive"),
"StatusMessage": obj.get("StatusMessage"),
"CreationTime": obj.get("CreationTime"),
"CreatedBy": obj.get("CreatedBy"),
"GroupId": obj.get("GroupId"),
"LastModifiedTime": obj.get("LastModifiedTime"),
"DomainNameList": obj.get("DomainNameList"),
"DatasetList": obj.get("DatasetList"),
"JobIdList": obj.get("JobIdList"),
"DashboardList": obj.get("DashboardList"),
"NotebookIdList": obj.get("NotebookIdList"),
"ModelIdList": obj.get("ModelIdList"),
"ScheduleIdList": obj.get("ScheduleIdList"),
"ViewIdList": obj.get("ViewIdList"),
"LibraryIdList": obj.get("LibraryIdList"),
"DataPipelineIdList": obj.get("DataPipelineIdList"),
"StreamIdList": obj.get("StreamIdList"),
"DataQualityCheckIdList": obj.get("DataQualityCheckIdList"),
"TenantNameList": obj.get("TenantNameList"),
"ConnectionIdList": obj.get("ConnectionIdList"),
"ConnAppIdList": obj.get("ConnAppIdList"),
"StoreIdList": obj.get("StoreIdList"),
"HclsWorkflowIdList": obj.get("HclsWorkflowIdList"),
"VerticalIdList": obj.get("VerticalIdList")
})
return _obj