Skip to content

Commit 1b8f7c8

Browse files
authored
Merge branch 'main' into FT-897
2 parents e83a5c3 + f69f841 commit 1b8f7c8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+3309
-25
lines changed

docs/asset/customentity.rst

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
.. _customentity:
2+
3+
CustomEntity
4+
============
5+
6+
.. module:: pyatlan.model.assets
7+
:no-index:
8+
9+
.. autoclass:: CustomEntity
10+
:members:
+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
.. _powerbidataflowentitycolumn:
2+
3+
PowerBIDataflowEntityColumn
4+
===========================
5+
6+
.. module:: pyatlan.model.assets
7+
:no-index:
8+
9+
.. autoclass:: PowerBIDataflowEntityColumn
10+
:members:

docs/assets.rst

+3
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,8 @@ You can interact with all of the following different kinds of assets:
9595
asset/cubedimension
9696
asset/cubefield
9797
asset/cubehierarchy
98+
asset/custom
99+
asset/customentity
98100
asset/datacontract
99101
asset/datadomain
100102
asset/datamesh
@@ -204,6 +206,7 @@ You can interact with all of the following different kinds of assets:
204206
asset/powerbicolumn
205207
asset/powerbidashboard
206208
asset/powerbidataflow
209+
asset/powerbidataflowentitycolumn
207210
asset/powerbidataset
208211
asset/powerbidatasource
209212
asset/powerbimeasure
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
2+
@classmethod
3+
@init_guid
4+
def creator(cls, *, name: str, connection_qualified_name: str) -> CustomEntity:
5+
validate_required_fields(
6+
["name", "connection_qualified_name"], [name, connection_qualified_name]
7+
)
8+
attributes = CustomEntity.Attributes.creator(
9+
name=name, connection_qualified_name=connection_qualified_name
10+
)
11+
return cls(attributes=attributes)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
2+
@overload
3+
@classmethod
4+
def creator(
5+
cls,
6+
*,
7+
name: str,
8+
dataverse_entity_qualified_name: str,
9+
) -> DataverseAttribute: ...
10+
11+
@overload
12+
@classmethod
13+
def creator(
14+
cls,
15+
*,
16+
name: str,
17+
dataverse_entity_qualified_name: str,
18+
connection_qualified_name: str,
19+
) -> DataverseAttribute: ...
20+
21+
@classmethod
22+
@init_guid
23+
def creator(
24+
cls,
25+
*,
26+
name: str,
27+
dataverse_entity_qualified_name: str,
28+
connection_qualified_name: Optional[str] = None,
29+
) -> DataverseAttribute:
30+
validate_required_fields(
31+
["name", "dataverse_entity_qualified_name"], [name, dataverse_entity_qualified_name],
32+
)
33+
attributes = DataverseAttribute.Attributes.creator(
34+
name=name,
35+
dataverse_entity_qualified_name=dataverse_entity_qualified_name,
36+
connection_qualified_name=connection_qualified_name,
37+
)
38+
return cls(attributes=attributes)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
2+
@classmethod
3+
@init_guid
4+
def creator(cls, *, name: str, connection_qualified_name: str) -> DataverseEntity:
5+
validate_required_fields(
6+
["name", "connection_qualified_name"], [name, connection_qualified_name],
7+
)
8+
attributes = DataverseEntity.Attributes.creator(
9+
name=name,
10+
connection_qualified_name=connection_qualified_name,
11+
)
12+
return cls(attributes=attributes)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
2+
@classmethod
3+
@init_guid
4+
def creator(
5+
cls, *, name: str, connection_qualified_name: str
6+
) -> CustomEntity.Attributes:
7+
validate_required_fields(
8+
["name", "connection_qualified_name"], [name, connection_qualified_name]
9+
)
10+
return CustomEntity.Attributes(
11+
name=name,
12+
qualified_name=f"{connection_qualified_name}/{name}",
13+
connection_qualified_name=connection_qualified_name,
14+
connector_name=AtlanConnectorType.get_connector_name(
15+
connection_qualified_name
16+
),
17+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
2+
@classmethod
3+
@init_guid
4+
def creator(
5+
cls,
6+
*,
7+
name: str,
8+
dataverse_entity_qualified_name: str,
9+
connection_qualified_name: Optional[str] = None,
10+
) -> DataverseAttribute.Attributes:
11+
validate_required_fields(
12+
["name", "dataverse_entity_qualified_name"],
13+
[name, dataverse_entity_qualified_name],
14+
)
15+
if connection_qualified_name:
16+
connector_name = AtlanConnectorType.get_connector_name(
17+
connection_qualified_name
18+
)
19+
else:
20+
connection_qn, connector_name = AtlanConnectorType.get_connector_name(
21+
dataverse_entity_qualified_name,
22+
"dataverse_entity_qualified_name",
23+
4,
24+
)
25+
26+
return DataverseAttribute.Attributes(
27+
name=name,
28+
dataverse_entity_qualified_name=dataverse_entity_qualified_name,
29+
connection_qualified_name=connection_qualified_name or connection_qn,
30+
qualified_name=f"{dataverse_entity_qualified_name}/{name}",
31+
connector_name=connector_name,
32+
dataverse_entity=DataverseEntity.ref_by_qualified_name(
33+
dataverse_entity_qualified_name
34+
),
35+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
2+
@classmethod
3+
@init_guid
4+
def creator(
5+
cls, *, name: str, connection_qualified_name: str
6+
) -> DataverseEntity.Attributes:
7+
validate_required_fields(
8+
["name", "connection_qualified_name"], [name, connection_qualified_name],
9+
)
10+
return DataverseEntity.Attributes(
11+
name=name,
12+
qualified_name=f"{connection_qualified_name}/{name}",
13+
connection_qualified_name=connection_qualified_name,
14+
connector_name=AtlanConnectorType.get_connector_name(
15+
connection_qualified_name
16+
),
17+
)

pyatlan/model/assets/__init__.py

+3
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@
104104
"PowerBIDashboard",
105105
"PowerBIDataflow",
106106
"PowerBIPage",
107+
"PowerBIDataflowEntityColumn",
107108
"SnowflakeDynamicTable",
108109
"MongoDBCollection",
109110
"DynamoDBSecondaryIndex",
@@ -133,6 +134,7 @@
133134
"object_store": ["ObjectStore"],
134135
"saa_s": ["SaaS"],
135136
"multi_dimensional_dataset": ["MultiDimensionalDataset"],
137+
"custom": ["Custom"],
136138
"event_store": ["EventStore"],
137139
"insight": ["Insight"],
138140
"a_p_i": ["API"],
@@ -169,6 +171,7 @@
169171
"cube_hierarchy": ["CubeHierarchy"],
170172
"cube_field": ["CubeField"],
171173
"cube_dimension": ["CubeDimension"],
174+
"custom_entity": ["CustomEntity"],
172175
"bigquery_tag": ["BigqueryTag"],
173176
"kafka": ["Kafka"],
174177
"azure_service_bus": ["AzureServiceBus"],

pyatlan/model/assets/__init__.pyi

+6
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ __all__ = [
101101
"PowerBIDashboard",
102102
"PowerBIDataflow",
103103
"PowerBIPage",
104+
"PowerBIDataflowEntityColumn",
104105
"SnowflakeDynamicTable",
105106
"MongoDBCollection",
106107
"DynamoDBSecondaryIndex",
@@ -129,6 +130,7 @@ __all__ = [
129130
"ObjectStore",
130131
"SaaS",
131132
"MultiDimensionalDataset",
133+
"Custom",
132134
"EventStore",
133135
"NoSQL",
134136
"Insight",
@@ -166,6 +168,7 @@ __all__ = [
166168
"CubeHierarchy",
167169
"CubeField",
168170
"CubeDimension",
171+
"CustomEntity",
169172
"BigqueryTag",
170173
"Kafka",
171174
"AzureServiceBus",
@@ -438,6 +441,7 @@ from .core.power_b_i import PowerBI
438441
from .core.power_b_i_column import PowerBIColumn
439442
from .core.power_b_i_dashboard import PowerBIDashboard
440443
from .core.power_b_i_dataflow import PowerBIDataflow
444+
from .core.power_b_i_dataflow_entity_column import PowerBIDataflowEntityColumn
441445
from .core.power_b_i_dataset import PowerBIDataset
442446
from .core.power_b_i_datasource import PowerBIDatasource
443447
from .core.power_b_i_measure import PowerBIMeasure
@@ -474,6 +478,8 @@ from .cube import Cube
474478
from .cube_dimension import CubeDimension
475479
from .cube_field import CubeField
476480
from .cube_hierarchy import CubeHierarchy
481+
from .custom import Custom
482+
from .custom_entity import CustomEntity
477483
from .data_set import DataSet
478484
from .data_studio import DataStudio
479485
from .data_studio_asset import DataStudioAsset

pyatlan/model/assets/core/__init__.py

+2
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@
7777
from .power_b_i_column import PowerBIColumn
7878
from .power_b_i_dashboard import PowerBIDashboard
7979
from .power_b_i_dataflow import PowerBIDataflow
80+
from .power_b_i_dataflow_entity_column import PowerBIDataflowEntityColumn
8081
from .power_b_i_dataset import PowerBIDataset
8182
from .power_b_i_datasource import PowerBIDatasource
8283
from .power_b_i_measure import PowerBIMeasure
@@ -211,6 +212,7 @@
211212
PowerBIDashboard.Attributes.update_forward_refs(**localns)
212213
PowerBIDataflow.Attributes.update_forward_refs(**localns)
213214
PowerBIPage.Attributes.update_forward_refs(**localns)
215+
PowerBIDataflowEntityColumn.Attributes.update_forward_refs(**localns)
214216
SnowflakeDynamicTable.Attributes.update_forward_refs(**localns)
215217
MongoDBCollection.Attributes.update_forward_refs(**localns)
216218
DynamoDBSecondaryIndex.Attributes.update_forward_refs(**localns)

pyatlan/model/assets/core/power_b_i_dataflow.py

+57
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,20 @@ def __setattr__(self, name, value):
7272
"""
7373
TBC
7474
"""
75+
POWER_BI_DATAFLOW_ENTITY_COLUMNS: ClassVar[RelationField] = RelationField(
76+
"powerBIDataflowEntityColumns"
77+
)
78+
"""
79+
TBC
80+
"""
7581
TABLES: ClassVar[RelationField] = RelationField("tables")
7682
"""
7783
TBC
7884
"""
85+
POWER_BI_DATASOURCES: ClassVar[RelationField] = RelationField("powerBIDatasources")
86+
"""
87+
TBC
88+
"""
7989
POWER_BI_DATAFLOW_CHILDREN: ClassVar[RelationField] = RelationField(
8090
"powerBIDataflowChildren"
8191
)
@@ -98,7 +108,9 @@ def __setattr__(self, name, value):
98108
"workspace",
99109
"power_b_i_processes",
100110
"datasets",
111+
"power_b_i_dataflow_entity_columns",
101112
"tables",
113+
"power_b_i_datasources",
102114
"power_b_i_dataflow_children",
103115
"power_b_i_dataflow_parents",
104116
]
@@ -211,6 +223,27 @@ def datasets(self, datasets: Optional[List[PowerBIDataset]]):
211223
self.attributes = self.Attributes()
212224
self.attributes.datasets = datasets
213225

226+
@property
227+
def power_b_i_dataflow_entity_columns(
228+
self,
229+
) -> Optional[List[PowerBIDataflowEntityColumn]]:
230+
return (
231+
None
232+
if self.attributes is None
233+
else self.attributes.power_b_i_dataflow_entity_columns
234+
)
235+
236+
@power_b_i_dataflow_entity_columns.setter
237+
def power_b_i_dataflow_entity_columns(
238+
self,
239+
power_b_i_dataflow_entity_columns: Optional[List[PowerBIDataflowEntityColumn]],
240+
):
241+
if self.attributes is None:
242+
self.attributes = self.Attributes()
243+
self.attributes.power_b_i_dataflow_entity_columns = (
244+
power_b_i_dataflow_entity_columns
245+
)
246+
214247
@property
215248
def tables(self) -> Optional[List[PowerBITable]]:
216249
return None if self.attributes is None else self.attributes.tables
@@ -221,6 +254,20 @@ def tables(self, tables: Optional[List[PowerBITable]]):
221254
self.attributes = self.Attributes()
222255
self.attributes.tables = tables
223256

257+
@property
258+
def power_b_i_datasources(self) -> Optional[List[PowerBIDatasource]]:
259+
return (
260+
None if self.attributes is None else self.attributes.power_b_i_datasources
261+
)
262+
263+
@power_b_i_datasources.setter
264+
def power_b_i_datasources(
265+
self, power_b_i_datasources: Optional[List[PowerBIDatasource]]
266+
):
267+
if self.attributes is None:
268+
self.attributes = self.Attributes()
269+
self.attributes.power_b_i_datasources = power_b_i_datasources
270+
224271
@property
225272
def power_b_i_dataflow_children(self) -> Optional[List[PowerBIDataflow]]:
226273
return (
@@ -274,9 +321,17 @@ class Attributes(PowerBI.Attributes):
274321
datasets: Optional[List[PowerBIDataset]] = Field(
275322
default=None, description=""
276323
) # relationship
324+
power_b_i_dataflow_entity_columns: Optional[
325+
List[PowerBIDataflowEntityColumn]
326+
] = Field(
327+
default=None, description=""
328+
) # relationship
277329
tables: Optional[List[PowerBITable]] = Field(
278330
default=None, description=""
279331
) # relationship
332+
power_b_i_datasources: Optional[List[PowerBIDatasource]] = Field(
333+
default=None, description=""
334+
) # relationship
280335
power_b_i_dataflow_children: Optional[List[PowerBIDataflow]] = Field(
281336
default=None, description=""
282337
) # relationship
@@ -294,7 +349,9 @@ class Attributes(PowerBI.Attributes):
294349
)
295350

296351

352+
from .power_b_i_dataflow_entity_column import PowerBIDataflowEntityColumn # noqa
297353
from .power_b_i_dataset import PowerBIDataset # noqa
354+
from .power_b_i_datasource import PowerBIDatasource # noqa
298355
from .power_b_i_table import PowerBITable # noqa
299356
from .power_b_i_workspace import PowerBIWorkspace # noqa
300357
from .process import Process # noqa

0 commit comments

Comments
 (0)