omnata-plugin-runtime 0.10.15a269__py3-none-any.whl → 0.10.16a270__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.
@@ -218,18 +218,19 @@ class SnowflakeViewColumn(BaseModel):
218
218
 
219
219
  @classmethod
220
220
  def from_json_schema_property(cls,
221
- column_name:str,
222
- comment:str,
223
- variant_path:str,
224
- json_schema_property:JsonSchemaProperty,
225
- column_name_environment:Environment,
226
- column_name_expression:str) -> Self:
221
+ column_name:str,
222
+ comment:str,
223
+ variant_path:str,
224
+ json_schema_property:JsonSchemaProperty,
225
+ column_name_environment:Environment,
226
+ column_name_expression:str,
227
+ plugin_app_database: Optional[str] = None,) -> Self:
227
228
  """
228
229
  Takes a JSON schema property (which may be nested via variant_path), along with its final name and comment,
229
230
  and returns a SnowflakeViewColumn object which is ready to use in a select statement.
230
231
  It does this by applying overarching type conversion rules, and evaluating the final column name using Jinja.
231
232
  """
232
- jinja_vars = {"column_name": column_name}
233
+ jinja_vars = {"column_name": column_name,"plugin_app_database": plugin_app_database}
233
234
  final_column_name = column_name_environment.from_string(column_name_expression).render(**jinja_vars)
234
235
  expression = f"""RECORD_DATA:{variant_path}"""
235
236
  if json_schema_property.snowflakeColumnExpression:
@@ -529,7 +530,8 @@ class SnowflakeViewParts(BaseModel):
529
530
  stream_name: str,
530
531
  include_default_columns: bool = True,
531
532
  column_name_environment: Environment = Environment(),
532
- column_name_expression: str = "{{column_name}}"
533
+ column_name_expression: str = "{{column_name}}",
534
+ plugin_app_database: Optional[str] = None,
533
535
  ) -> Self:
534
536
  """
535
537
  Returns the building blocks required to create a normalized view from a stream.
@@ -796,7 +798,8 @@ class JsonSchemaTopLevel(BaseModel):
796
798
 
797
799
  def build_view_columns(self,
798
800
  column_name_environment: Environment,
799
- column_name_expression: str
801
+ column_name_expression: str,
802
+ plugin_app_database: Optional[str] = None,
800
803
  ) -> List[SnowflakeViewColumn]:
801
804
  """
802
805
  Returns a list of column definitions from a json schema
@@ -809,6 +812,7 @@ class JsonSchemaTopLevel(BaseModel):
809
812
  property_value=property_value,
810
813
  column_name_environment=column_name_environment,
811
814
  column_name_expression=column_name_expression,
815
+ plugin_app_database=plugin_app_database,
812
816
  )
813
817
  for property_name, property_value in self.properties.items()
814
818
  ]
@@ -822,7 +826,8 @@ class JsonSchemaTopLevel(BaseModel):
822
826
  column_name_environment: Environment,
823
827
  column_name_expression: str,
824
828
  current_field_name_path: List[str] = [],
825
- current_comment_path: List[str] = []
829
+ current_comment_path: List[str] = [],
830
+ plugin_app_database: Optional[str] = None,
826
831
  ) -> List[SnowflakeViewColumn]:
827
832
  """
828
833
  Recursive function which returns a list of column definitions.
@@ -845,6 +850,7 @@ class JsonSchemaTopLevel(BaseModel):
845
850
  column_name_expression=column_name_expression,
846
851
  current_field_name_path=current_field_name_path + [property_name],
847
852
  current_comment_path=current_comment_path + [json_property.description or ""],
853
+ plugin_app_database=plugin_app_database,
848
854
  )
849
855
  for child_property_name, child_property_value in json_property.properties.items()
850
856
  ]
@@ -862,7 +868,8 @@ class JsonSchemaTopLevel(BaseModel):
862
868
  variant_path=":".join([f'"{p}"' for p in current_field_name_path if p]),
863
869
  json_schema_property=json_property,
864
870
  column_name_environment=column_name_environment,
865
- column_name_expression=column_name_expression
871
+ column_name_expression=column_name_expression,
872
+ plugin_app_database=plugin_app_database,
866
873
  )]
867
874
  columns.extend(children)
868
875
  return columns
@@ -875,6 +882,7 @@ def normalized_view_part(
875
882
  column_name_environment: Environment,
876
883
  column_name_expression: str,
877
884
  stream_schema: Optional[Dict] = None,
885
+ plugin_app_database: Optional[str] = None,
878
886
  ) -> SnowflakeViewPart:
879
887
  """
880
888
  Returns an object containing:
@@ -937,7 +945,8 @@ def normalized_view_part(
937
945
  json_schema = JsonSchemaTopLevel.model_validate(stream_schema)
938
946
  view_columns += json_schema.build_view_columns(
939
947
  column_name_environment=column_name_environment,
940
- column_name_expression=column_name_expression
948
+ column_name_expression=column_name_expression,
949
+ plugin_app_database=plugin_app_database,
941
950
  )
942
951
  if json_schema.joins:
943
952
  joins = json_schema.joins
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: omnata-plugin-runtime
3
- Version: 0.10.15a269
3
+ Version: 0.10.16a270
4
4
  Summary: Classes and common runtime components for building and running Omnata Plugins
5
5
  Author: James Weakley
6
6
  Author-email: james.weakley@omnata.com
@@ -2,12 +2,12 @@ omnata_plugin_runtime/__init__.py,sha256=MS9d1whnfT_B3-ThqZ7l63QeC_8OEKTuaYV5wTw
2
2
  omnata_plugin_runtime/api.py,sha256=baGraSMiD4Yvi3ZWrEv_TKh8Ktd1U8riBdOpe9j0Puw,8202
3
3
  omnata_plugin_runtime/configuration.py,sha256=0rfIGv8rCu8OwL7m-VOXIBjd05iyaBWRdt2h9o6scwo,46754
4
4
  omnata_plugin_runtime/forms.py,sha256=9YHJ_T17lT-rwyDaUg_0yj_YMPda4DRCw_wrvf8hE0E,19964
5
- omnata_plugin_runtime/json_schema.py,sha256=cqedHKWoeO8DgIfo7RfUi_99jgJNgon8ev8BzyRcJw4,45201
5
+ omnata_plugin_runtime/json_schema.py,sha256=omVHk3pI2fVs--kWGnsJBByyQ9wMHY5Yz7sZJiYcGOQ,45749
6
6
  omnata_plugin_runtime/logging.py,sha256=WBuZt8lF9E5oFWM4KYQbE8dDJ_HctJ1pN3BHwU6rcd0,4461
7
7
  omnata_plugin_runtime/omnata_plugin.py,sha256=M0b6f9lKKEoEI0zf-ZwZcIPKPQTmHTIMhvcrBc94Mhg,133278
8
8
  omnata_plugin_runtime/plugin_entrypoints.py,sha256=iqGl8_nEEnPGKg3Aem4YLSQ6d5xS3ju5gq8MJbx6sCA,31968
9
9
  omnata_plugin_runtime/rate_limiting.py,sha256=qpr5esU4Ks8hMzuMpSR3gLFdor2ZUXYWCjmsQH_K6lQ,25882
10
- omnata_plugin_runtime-0.10.15a269.dist-info/LICENSE,sha256=rGaMQG3R3F5-JGDp_-rlMKpDIkg5n0SI4kctTk8eZSI,56
11
- omnata_plugin_runtime-0.10.15a269.dist-info/METADATA,sha256=7zPdInSqwsps2pnztejM3KMezjmeFjfENKGKJiSYJ6E,2212
12
- omnata_plugin_runtime-0.10.15a269.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
13
- omnata_plugin_runtime-0.10.15a269.dist-info/RECORD,,
10
+ omnata_plugin_runtime-0.10.16a270.dist-info/LICENSE,sha256=rGaMQG3R3F5-JGDp_-rlMKpDIkg5n0SI4kctTk8eZSI,56
11
+ omnata_plugin_runtime-0.10.16a270.dist-info/METADATA,sha256=H4QBIUn6MDXAR7_p5Kkp1LwR2Dmma9980uUZIhOYz_w,2212
12
+ omnata_plugin_runtime-0.10.16a270.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
13
+ omnata_plugin_runtime-0.10.16a270.dist-info/RECORD,,