pulumi-snowflake 0.50.2a1709892015__py3-none-any.whl → 1.2.0a1736835738__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.

Potentially problematic release.


This version of pulumi-snowflake might be problematic. Click here for more details.

Files changed (182) hide show
  1. pulumi_snowflake/__init__.py +224 -172
  2. pulumi_snowflake/_inputs.py +52854 -1662
  3. pulumi_snowflake/_utilities.py +41 -5
  4. pulumi_snowflake/account.py +188 -214
  5. pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
  6. pulumi_snowflake/account_parameter.py +21 -44
  7. pulumi_snowflake/account_password_policy_attachment.py +7 -28
  8. pulumi_snowflake/account_role.py +250 -0
  9. pulumi_snowflake/alert.py +38 -43
  10. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +704 -0
  11. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +657 -0
  12. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +692 -0
  13. pulumi_snowflake/api_integration.py +35 -50
  14. pulumi_snowflake/authentication_policy.py +622 -0
  15. pulumi_snowflake/config/__init__.pyi +76 -99
  16. pulumi_snowflake/config/outputs.py +5 -0
  17. pulumi_snowflake/config/vars.py +93 -124
  18. pulumi_snowflake/cortex_search_service.py +596 -0
  19. pulumi_snowflake/database.py +819 -209
  20. pulumi_snowflake/database_role.py +81 -40
  21. pulumi_snowflake/dynamic_table.py +44 -47
  22. pulumi_snowflake/email_notification_integration.py +35 -26
  23. pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -139
  24. pulumi_snowflake/external_function.py +54 -71
  25. pulumi_snowflake/external_oauth_integration.py +593 -538
  26. pulumi_snowflake/external_table.py +67 -86
  27. pulumi_snowflake/external_volume.py +382 -0
  28. pulumi_snowflake/failover_group.py +59 -96
  29. pulumi_snowflake/file_format.py +33 -24
  30. pulumi_snowflake/function_java.py +1211 -0
  31. pulumi_snowflake/function_javascript.py +882 -0
  32. pulumi_snowflake/function_python.py +1212 -0
  33. pulumi_snowflake/function_scala.py +1212 -0
  34. pulumi_snowflake/function_sql.py +835 -0
  35. pulumi_snowflake/get_account_roles.py +129 -0
  36. pulumi_snowflake/get_accounts.py +53 -22
  37. pulumi_snowflake/get_alerts.py +22 -5
  38. pulumi_snowflake/get_connections.py +109 -0
  39. pulumi_snowflake/get_cortex_search_services.py +216 -0
  40. pulumi_snowflake/get_current_account.py +24 -9
  41. pulumi_snowflake/get_current_role.py +14 -7
  42. pulumi_snowflake/get_database.py +25 -5
  43. pulumi_snowflake/get_database_role.py +162 -0
  44. pulumi_snowflake/get_database_roles.py +79 -43
  45. pulumi_snowflake/get_databases.py +91 -69
  46. pulumi_snowflake/get_dynamic_tables.py +36 -19
  47. pulumi_snowflake/get_external_functions.py +28 -5
  48. pulumi_snowflake/get_external_tables.py +28 -5
  49. pulumi_snowflake/get_failover_groups.py +18 -7
  50. pulumi_snowflake/get_file_formats.py +28 -5
  51. pulumi_snowflake/get_functions.py +28 -5
  52. pulumi_snowflake/get_grants.py +207 -80
  53. pulumi_snowflake/get_masking_policies.py +91 -47
  54. pulumi_snowflake/get_materialized_views.py +28 -5
  55. pulumi_snowflake/get_network_policies.py +129 -0
  56. pulumi_snowflake/get_parameters.py +38 -11
  57. pulumi_snowflake/get_pipes.py +28 -5
  58. pulumi_snowflake/get_procedures.py +28 -5
  59. pulumi_snowflake/get_resource_monitors.py +37 -20
  60. pulumi_snowflake/get_row_access_policies.py +91 -47
  61. pulumi_snowflake/get_schemas.py +145 -37
  62. pulumi_snowflake/get_secrets.py +200 -0
  63. pulumi_snowflake/get_security_integrations.py +129 -0
  64. pulumi_snowflake/get_sequences.py +28 -5
  65. pulumi_snowflake/get_shares.py +18 -5
  66. pulumi_snowflake/get_stages.py +28 -5
  67. pulumi_snowflake/get_storage_integrations.py +16 -5
  68. pulumi_snowflake/get_streamlits.py +170 -0
  69. pulumi_snowflake/get_streams.py +114 -50
  70. pulumi_snowflake/get_system_generate_scim_access_token.py +18 -5
  71. pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
  72. pulumi_snowflake/get_system_get_private_link_config.py +121 -6
  73. pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
  74. pulumi_snowflake/get_tables.py +28 -5
  75. pulumi_snowflake/get_tags.py +130 -0
  76. pulumi_snowflake/get_tasks.py +134 -50
  77. pulumi_snowflake/get_users.py +116 -40
  78. pulumi_snowflake/get_views.py +114 -50
  79. pulumi_snowflake/get_warehouses.py +79 -22
  80. pulumi_snowflake/grant_account_role.py +28 -61
  81. pulumi_snowflake/grant_application_role.py +257 -0
  82. pulumi_snowflake/grant_database_role.py +35 -108
  83. pulumi_snowflake/grant_ownership.py +382 -0
  84. pulumi_snowflake/grant_privileges_to_account_role.py +42 -78
  85. pulumi_snowflake/grant_privileges_to_database_role.py +37 -223
  86. pulumi_snowflake/grant_privileges_to_share.py +96 -44
  87. pulumi_snowflake/legacy_service_user.py +3670 -0
  88. pulumi_snowflake/managed_account.py +42 -9
  89. pulumi_snowflake/masking_policy.py +213 -306
  90. pulumi_snowflake/materialized_view.py +62 -67
  91. pulumi_snowflake/network_policy.py +217 -57
  92. pulumi_snowflake/network_policy_attachment.py +7 -32
  93. pulumi_snowflake/network_rule.py +473 -0
  94. pulumi_snowflake/notification_integration.py +51 -82
  95. pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
  96. pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -188
  97. pulumi_snowflake/object_parameter.py +12 -99
  98. pulumi_snowflake/outputs.py +49200 -2928
  99. pulumi_snowflake/password_policy.py +41 -28
  100. pulumi_snowflake/pipe.py +33 -0
  101. pulumi_snowflake/primary_connection.py +330 -0
  102. pulumi_snowflake/procedure_java.py +1273 -0
  103. pulumi_snowflake/procedure_javascript.py +895 -0
  104. pulumi_snowflake/procedure_python.py +1226 -0
  105. pulumi_snowflake/procedure_scala.py +1273 -0
  106. pulumi_snowflake/procedure_sql.py +895 -0
  107. pulumi_snowflake/provider.py +378 -613
  108. pulumi_snowflake/pulumi-plugin.json +2 -1
  109. pulumi_snowflake/resource_monitor.py +118 -323
  110. pulumi_snowflake/row_access_policy.py +200 -145
  111. pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -295
  112. pulumi_snowflake/schema.py +949 -174
  113. pulumi_snowflake/scim_integration.py +286 -105
  114. pulumi_snowflake/secondary_connection.py +339 -0
  115. pulumi_snowflake/secondary_database.py +1080 -0
  116. pulumi_snowflake/secret_with_authorization_code_grant.py +548 -0
  117. pulumi_snowflake/secret_with_basic_authentication.py +500 -0
  118. pulumi_snowflake/secret_with_client_credentials.py +511 -0
  119. pulumi_snowflake/secret_with_generic_string.py +452 -0
  120. pulumi_snowflake/sequence.py +9 -30
  121. pulumi_snowflake/service_user.py +3585 -0
  122. pulumi_snowflake/share.py +35 -26
  123. pulumi_snowflake/shared_database.py +939 -0
  124. pulumi_snowflake/stage.py +95 -80
  125. pulumi_snowflake/storage_integration.py +48 -2
  126. pulumi_snowflake/stream_on_directory_table.py +517 -0
  127. pulumi_snowflake/stream_on_external_table.py +632 -0
  128. pulumi_snowflake/stream_on_table.py +666 -0
  129. pulumi_snowflake/stream_on_view.py +666 -0
  130. pulumi_snowflake/streamlit.py +671 -0
  131. pulumi_snowflake/table.py +86 -93
  132. pulumi_snowflake/table_column_masking_policy_application.py +7 -14
  133. pulumi_snowflake/table_constraint.py +29 -168
  134. pulumi_snowflake/tag.py +142 -70
  135. pulumi_snowflake/tag_association.py +40 -211
  136. pulumi_snowflake/task.py +3048 -414
  137. pulumi_snowflake/user.py +3351 -380
  138. pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
  139. pulumi_snowflake/user_password_policy_attachment.py +7 -6
  140. pulumi_snowflake/user_public_keys.py +5 -0
  141. pulumi_snowflake/view.py +466 -211
  142. pulumi_snowflake/warehouse.py +184 -164
  143. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/METADATA +7 -6
  144. pulumi_snowflake-1.2.0a1736835738.dist-info/RECORD +148 -0
  145. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
  146. pulumi_snowflake/account_grant.py +0 -339
  147. pulumi_snowflake/database_grant.py +0 -491
  148. pulumi_snowflake/external_table_grant.py +0 -686
  149. pulumi_snowflake/failover_group_grant.py +0 -388
  150. pulumi_snowflake/file_format_grant.py +0 -631
  151. pulumi_snowflake/function.py +0 -868
  152. pulumi_snowflake/function_grant.py +0 -741
  153. pulumi_snowflake/get_role.py +0 -117
  154. pulumi_snowflake/get_roles.py +0 -116
  155. pulumi_snowflake/grant_privileges_to_role.py +0 -667
  156. pulumi_snowflake/integration_grant.py +0 -436
  157. pulumi_snowflake/masking_policy_grant.py +0 -538
  158. pulumi_snowflake/materialized_view_grant.py +0 -685
  159. pulumi_snowflake/pipe_grant.py +0 -583
  160. pulumi_snowflake/procedure.py +0 -883
  161. pulumi_snowflake/procedure_grant.py +0 -741
  162. pulumi_snowflake/resource_monitor_grant.py +0 -383
  163. pulumi_snowflake/role.py +0 -269
  164. pulumi_snowflake/role_grants.py +0 -348
  165. pulumi_snowflake/role_ownership_grant.py +0 -334
  166. pulumi_snowflake/row_access_policy_grant.py +0 -536
  167. pulumi_snowflake/schema_grant.py +0 -643
  168. pulumi_snowflake/sequence_grant.py +0 -631
  169. pulumi_snowflake/session_parameter.py +0 -328
  170. pulumi_snowflake/stage_grant.py +0 -631
  171. pulumi_snowflake/stream.py +0 -610
  172. pulumi_snowflake/stream_grant.py +0 -631
  173. pulumi_snowflake/table_grant.py +0 -673
  174. pulumi_snowflake/tag_grant.py +0 -528
  175. pulumi_snowflake/tag_masking_policy_association.py +0 -210
  176. pulumi_snowflake/task_grant.py +0 -631
  177. pulumi_snowflake/user_grant.py +0 -390
  178. pulumi_snowflake/user_ownership_grant.py +0 -286
  179. pulumi_snowflake/view_grant.py +0 -701
  180. pulumi_snowflake/warehouse_grant.py +0 -436
  181. pulumi_snowflake-0.50.2a1709892015.dist-info/RECORD +0 -136
  182. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1211 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['FunctionJavaArgs', 'FunctionJava']
20
+
21
+ @pulumi.input_type
22
+ class FunctionJavaArgs:
23
+ def __init__(__self__, *,
24
+ database: pulumi.Input[str],
25
+ handler: pulumi.Input[str],
26
+ return_type: pulumi.Input[str],
27
+ schema: pulumi.Input[str],
28
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]] = None,
29
+ comment: Optional[pulumi.Input[str]] = None,
30
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
31
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
32
+ function_definition: Optional[pulumi.Input[str]] = None,
33
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]] = None,
34
+ is_secure: Optional[pulumi.Input[str]] = None,
35
+ log_level: Optional[pulumi.Input[str]] = None,
36
+ metric_level: Optional[pulumi.Input[str]] = None,
37
+ name: Optional[pulumi.Input[str]] = None,
38
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
39
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
40
+ return_results_behavior: Optional[pulumi.Input[str]] = None,
41
+ runtime_version: Optional[pulumi.Input[str]] = None,
42
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]] = None,
43
+ target_path: Optional[pulumi.Input['FunctionJavaTargetPathArgs']] = None,
44
+ trace_level: Optional[pulumi.Input[str]] = None):
45
+ """
46
+ The set of arguments for constructing a FunctionJava resource.
47
+ :param pulumi.Input[str] database: The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
48
+ :param pulumi.Input[str] handler: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
49
+ :param pulumi.Input[str] return_type: Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
50
+ :param pulumi.Input[str] schema: The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
51
+ :param pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]] arguments: List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
52
+ :param pulumi.Input[str] comment: Specifies a comment for the function.
53
+ :param pulumi.Input[bool] enable_console_output: Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
54
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] external_access_integrations: The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
55
+ :param pulumi.Input[str] function_definition: Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
56
+ :param pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]] imports: The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
57
+ :param pulumi.Input[str] log_level: LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
58
+ :param pulumi.Input[str] metric_level: METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
59
+ :param pulumi.Input[str] name: The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
60
+ :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
61
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] packages: The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
62
+ :param pulumi.Input[str] return_results_behavior: Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
63
+ :param pulumi.Input[str] runtime_version: Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
64
+ :param pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]] secrets: Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
65
+ :param pulumi.Input['FunctionJavaTargetPathArgs'] target_path: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
66
+ :param pulumi.Input[str] trace_level: Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
67
+ """
68
+ pulumi.set(__self__, "database", database)
69
+ pulumi.set(__self__, "handler", handler)
70
+ pulumi.set(__self__, "return_type", return_type)
71
+ pulumi.set(__self__, "schema", schema)
72
+ if arguments is not None:
73
+ pulumi.set(__self__, "arguments", arguments)
74
+ if comment is not None:
75
+ pulumi.set(__self__, "comment", comment)
76
+ if enable_console_output is not None:
77
+ pulumi.set(__self__, "enable_console_output", enable_console_output)
78
+ if external_access_integrations is not None:
79
+ pulumi.set(__self__, "external_access_integrations", external_access_integrations)
80
+ if function_definition is not None:
81
+ pulumi.set(__self__, "function_definition", function_definition)
82
+ if imports is not None:
83
+ pulumi.set(__self__, "imports", imports)
84
+ if is_secure is not None:
85
+ pulumi.set(__self__, "is_secure", is_secure)
86
+ if log_level is not None:
87
+ pulumi.set(__self__, "log_level", log_level)
88
+ if metric_level is not None:
89
+ pulumi.set(__self__, "metric_level", metric_level)
90
+ if name is not None:
91
+ pulumi.set(__self__, "name", name)
92
+ if null_input_behavior is not None:
93
+ pulumi.set(__self__, "null_input_behavior", null_input_behavior)
94
+ if packages is not None:
95
+ pulumi.set(__self__, "packages", packages)
96
+ if return_results_behavior is not None:
97
+ pulumi.set(__self__, "return_results_behavior", return_results_behavior)
98
+ if runtime_version is not None:
99
+ pulumi.set(__self__, "runtime_version", runtime_version)
100
+ if secrets is not None:
101
+ pulumi.set(__self__, "secrets", secrets)
102
+ if target_path is not None:
103
+ pulumi.set(__self__, "target_path", target_path)
104
+ if trace_level is not None:
105
+ pulumi.set(__self__, "trace_level", trace_level)
106
+
107
+ @property
108
+ @pulumi.getter
109
+ def database(self) -> pulumi.Input[str]:
110
+ """
111
+ The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
112
+ """
113
+ return pulumi.get(self, "database")
114
+
115
+ @database.setter
116
+ def database(self, value: pulumi.Input[str]):
117
+ pulumi.set(self, "database", value)
118
+
119
+ @property
120
+ @pulumi.getter
121
+ def handler(self) -> pulumi.Input[str]:
122
+ """
123
+ The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
124
+ """
125
+ return pulumi.get(self, "handler")
126
+
127
+ @handler.setter
128
+ def handler(self, value: pulumi.Input[str]):
129
+ pulumi.set(self, "handler", value)
130
+
131
+ @property
132
+ @pulumi.getter(name="returnType")
133
+ def return_type(self) -> pulumi.Input[str]:
134
+ """
135
+ Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
136
+ """
137
+ return pulumi.get(self, "return_type")
138
+
139
+ @return_type.setter
140
+ def return_type(self, value: pulumi.Input[str]):
141
+ pulumi.set(self, "return_type", value)
142
+
143
+ @property
144
+ @pulumi.getter
145
+ def schema(self) -> pulumi.Input[str]:
146
+ """
147
+ The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
148
+ """
149
+ return pulumi.get(self, "schema")
150
+
151
+ @schema.setter
152
+ def schema(self, value: pulumi.Input[str]):
153
+ pulumi.set(self, "schema", value)
154
+
155
+ @property
156
+ @pulumi.getter
157
+ def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]]:
158
+ """
159
+ List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
160
+ """
161
+ return pulumi.get(self, "arguments")
162
+
163
+ @arguments.setter
164
+ def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]]):
165
+ pulumi.set(self, "arguments", value)
166
+
167
+ @property
168
+ @pulumi.getter
169
+ def comment(self) -> Optional[pulumi.Input[str]]:
170
+ """
171
+ Specifies a comment for the function.
172
+ """
173
+ return pulumi.get(self, "comment")
174
+
175
+ @comment.setter
176
+ def comment(self, value: Optional[pulumi.Input[str]]):
177
+ pulumi.set(self, "comment", value)
178
+
179
+ @property
180
+ @pulumi.getter(name="enableConsoleOutput")
181
+ def enable_console_output(self) -> Optional[pulumi.Input[bool]]:
182
+ """
183
+ Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
184
+ """
185
+ return pulumi.get(self, "enable_console_output")
186
+
187
+ @enable_console_output.setter
188
+ def enable_console_output(self, value: Optional[pulumi.Input[bool]]):
189
+ pulumi.set(self, "enable_console_output", value)
190
+
191
+ @property
192
+ @pulumi.getter(name="externalAccessIntegrations")
193
+ def external_access_integrations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
194
+ """
195
+ The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
196
+ """
197
+ return pulumi.get(self, "external_access_integrations")
198
+
199
+ @external_access_integrations.setter
200
+ def external_access_integrations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
201
+ pulumi.set(self, "external_access_integrations", value)
202
+
203
+ @property
204
+ @pulumi.getter(name="functionDefinition")
205
+ def function_definition(self) -> Optional[pulumi.Input[str]]:
206
+ """
207
+ Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
208
+ """
209
+ return pulumi.get(self, "function_definition")
210
+
211
+ @function_definition.setter
212
+ def function_definition(self, value: Optional[pulumi.Input[str]]):
213
+ pulumi.set(self, "function_definition", value)
214
+
215
+ @property
216
+ @pulumi.getter
217
+ def imports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]]:
218
+ """
219
+ The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
220
+ """
221
+ return pulumi.get(self, "imports")
222
+
223
+ @imports.setter
224
+ def imports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]]):
225
+ pulumi.set(self, "imports", value)
226
+
227
+ @property
228
+ @pulumi.getter(name="isSecure")
229
+ def is_secure(self) -> Optional[pulumi.Input[str]]:
230
+ return pulumi.get(self, "is_secure")
231
+
232
+ @is_secure.setter
233
+ def is_secure(self, value: Optional[pulumi.Input[str]]):
234
+ pulumi.set(self, "is_secure", value)
235
+
236
+ @property
237
+ @pulumi.getter(name="logLevel")
238
+ def log_level(self) -> Optional[pulumi.Input[str]]:
239
+ """
240
+ LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
241
+ """
242
+ return pulumi.get(self, "log_level")
243
+
244
+ @log_level.setter
245
+ def log_level(self, value: Optional[pulumi.Input[str]]):
246
+ pulumi.set(self, "log_level", value)
247
+
248
+ @property
249
+ @pulumi.getter(name="metricLevel")
250
+ def metric_level(self) -> Optional[pulumi.Input[str]]:
251
+ """
252
+ METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
253
+ """
254
+ return pulumi.get(self, "metric_level")
255
+
256
+ @metric_level.setter
257
+ def metric_level(self, value: Optional[pulumi.Input[str]]):
258
+ pulumi.set(self, "metric_level", value)
259
+
260
+ @property
261
+ @pulumi.getter
262
+ def name(self) -> Optional[pulumi.Input[str]]:
263
+ """
264
+ The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
265
+ """
266
+ return pulumi.get(self, "name")
267
+
268
+ @name.setter
269
+ def name(self, value: Optional[pulumi.Input[str]]):
270
+ pulumi.set(self, "name", value)
271
+
272
+ @property
273
+ @pulumi.getter(name="nullInputBehavior")
274
+ def null_input_behavior(self) -> Optional[pulumi.Input[str]]:
275
+ """
276
+ Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
277
+ """
278
+ return pulumi.get(self, "null_input_behavior")
279
+
280
+ @null_input_behavior.setter
281
+ def null_input_behavior(self, value: Optional[pulumi.Input[str]]):
282
+ pulumi.set(self, "null_input_behavior", value)
283
+
284
+ @property
285
+ @pulumi.getter
286
+ def packages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
287
+ """
288
+ The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
289
+ """
290
+ return pulumi.get(self, "packages")
291
+
292
+ @packages.setter
293
+ def packages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
294
+ pulumi.set(self, "packages", value)
295
+
296
+ @property
297
+ @pulumi.getter(name="returnResultsBehavior")
298
+ def return_results_behavior(self) -> Optional[pulumi.Input[str]]:
299
+ """
300
+ Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
301
+ """
302
+ return pulumi.get(self, "return_results_behavior")
303
+
304
+ @return_results_behavior.setter
305
+ def return_results_behavior(self, value: Optional[pulumi.Input[str]]):
306
+ pulumi.set(self, "return_results_behavior", value)
307
+
308
+ @property
309
+ @pulumi.getter(name="runtimeVersion")
310
+ def runtime_version(self) -> Optional[pulumi.Input[str]]:
311
+ """
312
+ Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
313
+ """
314
+ return pulumi.get(self, "runtime_version")
315
+
316
+ @runtime_version.setter
317
+ def runtime_version(self, value: Optional[pulumi.Input[str]]):
318
+ pulumi.set(self, "runtime_version", value)
319
+
320
+ @property
321
+ @pulumi.getter
322
+ def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]]:
323
+ """
324
+ Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
325
+ """
326
+ return pulumi.get(self, "secrets")
327
+
328
+ @secrets.setter
329
+ def secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]]):
330
+ pulumi.set(self, "secrets", value)
331
+
332
+ @property
333
+ @pulumi.getter(name="targetPath")
334
+ def target_path(self) -> Optional[pulumi.Input['FunctionJavaTargetPathArgs']]:
335
+ """
336
+ The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
337
+ """
338
+ return pulumi.get(self, "target_path")
339
+
340
+ @target_path.setter
341
+ def target_path(self, value: Optional[pulumi.Input['FunctionJavaTargetPathArgs']]):
342
+ pulumi.set(self, "target_path", value)
343
+
344
+ @property
345
+ @pulumi.getter(name="traceLevel")
346
+ def trace_level(self) -> Optional[pulumi.Input[str]]:
347
+ """
348
+ Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
349
+ """
350
+ return pulumi.get(self, "trace_level")
351
+
352
+ @trace_level.setter
353
+ def trace_level(self, value: Optional[pulumi.Input[str]]):
354
+ pulumi.set(self, "trace_level", value)
355
+
356
+
357
+ @pulumi.input_type
358
+ class _FunctionJavaState:
359
+ def __init__(__self__, *,
360
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]] = None,
361
+ comment: Optional[pulumi.Input[str]] = None,
362
+ database: Optional[pulumi.Input[str]] = None,
363
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
364
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
365
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
366
+ function_definition: Optional[pulumi.Input[str]] = None,
367
+ function_language: Optional[pulumi.Input[str]] = None,
368
+ handler: Optional[pulumi.Input[str]] = None,
369
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]] = None,
370
+ is_secure: Optional[pulumi.Input[str]] = None,
371
+ log_level: Optional[pulumi.Input[str]] = None,
372
+ metric_level: Optional[pulumi.Input[str]] = None,
373
+ name: Optional[pulumi.Input[str]] = None,
374
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
375
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
376
+ parameters: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaParameterArgs']]]] = None,
377
+ return_results_behavior: Optional[pulumi.Input[str]] = None,
378
+ return_type: Optional[pulumi.Input[str]] = None,
379
+ runtime_version: Optional[pulumi.Input[str]] = None,
380
+ schema: Optional[pulumi.Input[str]] = None,
381
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]] = None,
382
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaShowOutputArgs']]]] = None,
383
+ target_path: Optional[pulumi.Input['FunctionJavaTargetPathArgs']] = None,
384
+ trace_level: Optional[pulumi.Input[str]] = None):
385
+ """
386
+ Input properties used for looking up and filtering FunctionJava resources.
387
+ :param pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]] arguments: List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
388
+ :param pulumi.Input[str] comment: Specifies a comment for the function.
389
+ :param pulumi.Input[str] database: The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
390
+ :param pulumi.Input[bool] enable_console_output: Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
391
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] external_access_integrations: The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
392
+ :param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
393
+ :param pulumi.Input[str] function_definition: Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
394
+ :param pulumi.Input[str] function_language: Specifies language for the user. Used to detect external changes.
395
+ :param pulumi.Input[str] handler: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
396
+ :param pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]] imports: The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
397
+ :param pulumi.Input[str] log_level: LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
398
+ :param pulumi.Input[str] metric_level: METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
399
+ :param pulumi.Input[str] name: The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
400
+ :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
401
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] packages: The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
402
+ :param pulumi.Input[Sequence[pulumi.Input['FunctionJavaParameterArgs']]] parameters: Outputs the result of `SHOW PARAMETERS IN FUNCTION` for the given function.
403
+ :param pulumi.Input[str] return_results_behavior: Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
404
+ :param pulumi.Input[str] return_type: Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
405
+ :param pulumi.Input[str] runtime_version: Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
406
+ :param pulumi.Input[str] schema: The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
407
+ :param pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]] secrets: Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
408
+ :param pulumi.Input[Sequence[pulumi.Input['FunctionJavaShowOutputArgs']]] show_outputs: Outputs the result of `SHOW FUNCTION` for the given function.
409
+ :param pulumi.Input['FunctionJavaTargetPathArgs'] target_path: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
410
+ :param pulumi.Input[str] trace_level: Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
411
+ """
412
+ if arguments is not None:
413
+ pulumi.set(__self__, "arguments", arguments)
414
+ if comment is not None:
415
+ pulumi.set(__self__, "comment", comment)
416
+ if database is not None:
417
+ pulumi.set(__self__, "database", database)
418
+ if enable_console_output is not None:
419
+ pulumi.set(__self__, "enable_console_output", enable_console_output)
420
+ if external_access_integrations is not None:
421
+ pulumi.set(__self__, "external_access_integrations", external_access_integrations)
422
+ if fully_qualified_name is not None:
423
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
424
+ if function_definition is not None:
425
+ pulumi.set(__self__, "function_definition", function_definition)
426
+ if function_language is not None:
427
+ pulumi.set(__self__, "function_language", function_language)
428
+ if handler is not None:
429
+ pulumi.set(__self__, "handler", handler)
430
+ if imports is not None:
431
+ pulumi.set(__self__, "imports", imports)
432
+ if is_secure is not None:
433
+ pulumi.set(__self__, "is_secure", is_secure)
434
+ if log_level is not None:
435
+ pulumi.set(__self__, "log_level", log_level)
436
+ if metric_level is not None:
437
+ pulumi.set(__self__, "metric_level", metric_level)
438
+ if name is not None:
439
+ pulumi.set(__self__, "name", name)
440
+ if null_input_behavior is not None:
441
+ pulumi.set(__self__, "null_input_behavior", null_input_behavior)
442
+ if packages is not None:
443
+ pulumi.set(__self__, "packages", packages)
444
+ if parameters is not None:
445
+ pulumi.set(__self__, "parameters", parameters)
446
+ if return_results_behavior is not None:
447
+ pulumi.set(__self__, "return_results_behavior", return_results_behavior)
448
+ if return_type is not None:
449
+ pulumi.set(__self__, "return_type", return_type)
450
+ if runtime_version is not None:
451
+ pulumi.set(__self__, "runtime_version", runtime_version)
452
+ if schema is not None:
453
+ pulumi.set(__self__, "schema", schema)
454
+ if secrets is not None:
455
+ pulumi.set(__self__, "secrets", secrets)
456
+ if show_outputs is not None:
457
+ pulumi.set(__self__, "show_outputs", show_outputs)
458
+ if target_path is not None:
459
+ pulumi.set(__self__, "target_path", target_path)
460
+ if trace_level is not None:
461
+ pulumi.set(__self__, "trace_level", trace_level)
462
+
463
+ @property
464
+ @pulumi.getter
465
+ def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]]:
466
+ """
467
+ List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
468
+ """
469
+ return pulumi.get(self, "arguments")
470
+
471
+ @arguments.setter
472
+ def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaArgumentArgs']]]]):
473
+ pulumi.set(self, "arguments", value)
474
+
475
+ @property
476
+ @pulumi.getter
477
+ def comment(self) -> Optional[pulumi.Input[str]]:
478
+ """
479
+ Specifies a comment for the function.
480
+ """
481
+ return pulumi.get(self, "comment")
482
+
483
+ @comment.setter
484
+ def comment(self, value: Optional[pulumi.Input[str]]):
485
+ pulumi.set(self, "comment", value)
486
+
487
+ @property
488
+ @pulumi.getter
489
+ def database(self) -> Optional[pulumi.Input[str]]:
490
+ """
491
+ The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
492
+ """
493
+ return pulumi.get(self, "database")
494
+
495
+ @database.setter
496
+ def database(self, value: Optional[pulumi.Input[str]]):
497
+ pulumi.set(self, "database", value)
498
+
499
+ @property
500
+ @pulumi.getter(name="enableConsoleOutput")
501
+ def enable_console_output(self) -> Optional[pulumi.Input[bool]]:
502
+ """
503
+ Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
504
+ """
505
+ return pulumi.get(self, "enable_console_output")
506
+
507
+ @enable_console_output.setter
508
+ def enable_console_output(self, value: Optional[pulumi.Input[bool]]):
509
+ pulumi.set(self, "enable_console_output", value)
510
+
511
+ @property
512
+ @pulumi.getter(name="externalAccessIntegrations")
513
+ def external_access_integrations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
514
+ """
515
+ The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
516
+ """
517
+ return pulumi.get(self, "external_access_integrations")
518
+
519
+ @external_access_integrations.setter
520
+ def external_access_integrations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
521
+ pulumi.set(self, "external_access_integrations", value)
522
+
523
+ @property
524
+ @pulumi.getter(name="fullyQualifiedName")
525
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
526
+ """
527
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
528
+ """
529
+ return pulumi.get(self, "fully_qualified_name")
530
+
531
+ @fully_qualified_name.setter
532
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
533
+ pulumi.set(self, "fully_qualified_name", value)
534
+
535
+ @property
536
+ @pulumi.getter(name="functionDefinition")
537
+ def function_definition(self) -> Optional[pulumi.Input[str]]:
538
+ """
539
+ Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
540
+ """
541
+ return pulumi.get(self, "function_definition")
542
+
543
+ @function_definition.setter
544
+ def function_definition(self, value: Optional[pulumi.Input[str]]):
545
+ pulumi.set(self, "function_definition", value)
546
+
547
+ @property
548
+ @pulumi.getter(name="functionLanguage")
549
+ def function_language(self) -> Optional[pulumi.Input[str]]:
550
+ """
551
+ Specifies language for the user. Used to detect external changes.
552
+ """
553
+ return pulumi.get(self, "function_language")
554
+
555
+ @function_language.setter
556
+ def function_language(self, value: Optional[pulumi.Input[str]]):
557
+ pulumi.set(self, "function_language", value)
558
+
559
+ @property
560
+ @pulumi.getter
561
+ def handler(self) -> Optional[pulumi.Input[str]]:
562
+ """
563
+ The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
564
+ """
565
+ return pulumi.get(self, "handler")
566
+
567
+ @handler.setter
568
+ def handler(self, value: Optional[pulumi.Input[str]]):
569
+ pulumi.set(self, "handler", value)
570
+
571
+ @property
572
+ @pulumi.getter
573
+ def imports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]]:
574
+ """
575
+ The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
576
+ """
577
+ return pulumi.get(self, "imports")
578
+
579
+ @imports.setter
580
+ def imports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaImportArgs']]]]):
581
+ pulumi.set(self, "imports", value)
582
+
583
+ @property
584
+ @pulumi.getter(name="isSecure")
585
+ def is_secure(self) -> Optional[pulumi.Input[str]]:
586
+ return pulumi.get(self, "is_secure")
587
+
588
+ @is_secure.setter
589
+ def is_secure(self, value: Optional[pulumi.Input[str]]):
590
+ pulumi.set(self, "is_secure", value)
591
+
592
+ @property
593
+ @pulumi.getter(name="logLevel")
594
+ def log_level(self) -> Optional[pulumi.Input[str]]:
595
+ """
596
+ LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
597
+ """
598
+ return pulumi.get(self, "log_level")
599
+
600
+ @log_level.setter
601
+ def log_level(self, value: Optional[pulumi.Input[str]]):
602
+ pulumi.set(self, "log_level", value)
603
+
604
+ @property
605
+ @pulumi.getter(name="metricLevel")
606
+ def metric_level(self) -> Optional[pulumi.Input[str]]:
607
+ """
608
+ METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
609
+ """
610
+ return pulumi.get(self, "metric_level")
611
+
612
+ @metric_level.setter
613
+ def metric_level(self, value: Optional[pulumi.Input[str]]):
614
+ pulumi.set(self, "metric_level", value)
615
+
616
+ @property
617
+ @pulumi.getter
618
+ def name(self) -> Optional[pulumi.Input[str]]:
619
+ """
620
+ The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
621
+ """
622
+ return pulumi.get(self, "name")
623
+
624
+ @name.setter
625
+ def name(self, value: Optional[pulumi.Input[str]]):
626
+ pulumi.set(self, "name", value)
627
+
628
+ @property
629
+ @pulumi.getter(name="nullInputBehavior")
630
+ def null_input_behavior(self) -> Optional[pulumi.Input[str]]:
631
+ """
632
+ Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
633
+ """
634
+ return pulumi.get(self, "null_input_behavior")
635
+
636
+ @null_input_behavior.setter
637
+ def null_input_behavior(self, value: Optional[pulumi.Input[str]]):
638
+ pulumi.set(self, "null_input_behavior", value)
639
+
640
+ @property
641
+ @pulumi.getter
642
+ def packages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
643
+ """
644
+ The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
645
+ """
646
+ return pulumi.get(self, "packages")
647
+
648
+ @packages.setter
649
+ def packages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
650
+ pulumi.set(self, "packages", value)
651
+
652
+ @property
653
+ @pulumi.getter
654
+ def parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaParameterArgs']]]]:
655
+ """
656
+ Outputs the result of `SHOW PARAMETERS IN FUNCTION` for the given function.
657
+ """
658
+ return pulumi.get(self, "parameters")
659
+
660
+ @parameters.setter
661
+ def parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaParameterArgs']]]]):
662
+ pulumi.set(self, "parameters", value)
663
+
664
+ @property
665
+ @pulumi.getter(name="returnResultsBehavior")
666
+ def return_results_behavior(self) -> Optional[pulumi.Input[str]]:
667
+ """
668
+ Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
669
+ """
670
+ return pulumi.get(self, "return_results_behavior")
671
+
672
+ @return_results_behavior.setter
673
+ def return_results_behavior(self, value: Optional[pulumi.Input[str]]):
674
+ pulumi.set(self, "return_results_behavior", value)
675
+
676
+ @property
677
+ @pulumi.getter(name="returnType")
678
+ def return_type(self) -> Optional[pulumi.Input[str]]:
679
+ """
680
+ Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
681
+ """
682
+ return pulumi.get(self, "return_type")
683
+
684
+ @return_type.setter
685
+ def return_type(self, value: Optional[pulumi.Input[str]]):
686
+ pulumi.set(self, "return_type", value)
687
+
688
+ @property
689
+ @pulumi.getter(name="runtimeVersion")
690
+ def runtime_version(self) -> Optional[pulumi.Input[str]]:
691
+ """
692
+ Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
693
+ """
694
+ return pulumi.get(self, "runtime_version")
695
+
696
+ @runtime_version.setter
697
+ def runtime_version(self, value: Optional[pulumi.Input[str]]):
698
+ pulumi.set(self, "runtime_version", value)
699
+
700
+ @property
701
+ @pulumi.getter
702
+ def schema(self) -> Optional[pulumi.Input[str]]:
703
+ """
704
+ The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
705
+ """
706
+ return pulumi.get(self, "schema")
707
+
708
+ @schema.setter
709
+ def schema(self, value: Optional[pulumi.Input[str]]):
710
+ pulumi.set(self, "schema", value)
711
+
712
+ @property
713
+ @pulumi.getter
714
+ def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]]:
715
+ """
716
+ Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
717
+ """
718
+ return pulumi.get(self, "secrets")
719
+
720
+ @secrets.setter
721
+ def secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaSecretArgs']]]]):
722
+ pulumi.set(self, "secrets", value)
723
+
724
+ @property
725
+ @pulumi.getter(name="showOutputs")
726
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaShowOutputArgs']]]]:
727
+ """
728
+ Outputs the result of `SHOW FUNCTION` for the given function.
729
+ """
730
+ return pulumi.get(self, "show_outputs")
731
+
732
+ @show_outputs.setter
733
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionJavaShowOutputArgs']]]]):
734
+ pulumi.set(self, "show_outputs", value)
735
+
736
+ @property
737
+ @pulumi.getter(name="targetPath")
738
+ def target_path(self) -> Optional[pulumi.Input['FunctionJavaTargetPathArgs']]:
739
+ """
740
+ The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
741
+ """
742
+ return pulumi.get(self, "target_path")
743
+
744
+ @target_path.setter
745
+ def target_path(self, value: Optional[pulumi.Input['FunctionJavaTargetPathArgs']]):
746
+ pulumi.set(self, "target_path", value)
747
+
748
+ @property
749
+ @pulumi.getter(name="traceLevel")
750
+ def trace_level(self) -> Optional[pulumi.Input[str]]:
751
+ """
752
+ Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
753
+ """
754
+ return pulumi.get(self, "trace_level")
755
+
756
+ @trace_level.setter
757
+ def trace_level(self, value: Optional[pulumi.Input[str]]):
758
+ pulumi.set(self, "trace_level", value)
759
+
760
+
761
+ class FunctionJava(pulumi.CustomResource):
762
+ @overload
763
+ def __init__(__self__,
764
+ resource_name: str,
765
+ opts: Optional[pulumi.ResourceOptions] = None,
766
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]]] = None,
767
+ comment: Optional[pulumi.Input[str]] = None,
768
+ database: Optional[pulumi.Input[str]] = None,
769
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
770
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
771
+ function_definition: Optional[pulumi.Input[str]] = None,
772
+ handler: Optional[pulumi.Input[str]] = None,
773
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]]] = None,
774
+ is_secure: Optional[pulumi.Input[str]] = None,
775
+ log_level: Optional[pulumi.Input[str]] = None,
776
+ metric_level: Optional[pulumi.Input[str]] = None,
777
+ name: Optional[pulumi.Input[str]] = None,
778
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
779
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
780
+ return_results_behavior: Optional[pulumi.Input[str]] = None,
781
+ return_type: Optional[pulumi.Input[str]] = None,
782
+ runtime_version: Optional[pulumi.Input[str]] = None,
783
+ schema: Optional[pulumi.Input[str]] = None,
784
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]]] = None,
785
+ target_path: Optional[pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']]] = None,
786
+ trace_level: Optional[pulumi.Input[str]] = None,
787
+ __props__=None):
788
+ """
789
+ ## Import
790
+
791
+ ```sh
792
+ $ pulumi import snowflake:index/functionJava:FunctionJava example '"<database_name>"."<schema_name>"."<function_name>"(varchar, varchar, varchar)'
793
+ ```
794
+
795
+ Note: Snowflake is not returning all information needed to populate the state correctly after import (e.g. data types with attributes like NUMBER(32, 10) are returned as NUMBER, default values for arguments are not returned at all).
796
+
797
+ Also, `ALTER` for functions is very limited so most of the attributes on this resource are marked as force new. Because of that, in multiple situations plan won't be empty after importing and manual state operations may be required.
798
+
799
+ :param str resource_name: The name of the resource.
800
+ :param pulumi.ResourceOptions opts: Options for the resource.
801
+ :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]] arguments: List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
802
+ :param pulumi.Input[str] comment: Specifies a comment for the function.
803
+ :param pulumi.Input[str] database: The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
804
+ :param pulumi.Input[bool] enable_console_output: Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
805
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] external_access_integrations: The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
806
+ :param pulumi.Input[str] function_definition: Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
807
+ :param pulumi.Input[str] handler: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
808
+ :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]] imports: The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
809
+ :param pulumi.Input[str] log_level: LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
810
+ :param pulumi.Input[str] metric_level: METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
811
+ :param pulumi.Input[str] name: The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
812
+ :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
813
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] packages: The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
814
+ :param pulumi.Input[str] return_results_behavior: Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
815
+ :param pulumi.Input[str] return_type: Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
816
+ :param pulumi.Input[str] runtime_version: Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
817
+ :param pulumi.Input[str] schema: The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
818
+ :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]] secrets: Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
819
+ :param pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']] target_path: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
820
+ :param pulumi.Input[str] trace_level: Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
821
+ """
822
+ ...
823
+ @overload
824
+ def __init__(__self__,
825
+ resource_name: str,
826
+ args: FunctionJavaArgs,
827
+ opts: Optional[pulumi.ResourceOptions] = None):
828
+ """
829
+ ## Import
830
+
831
+ ```sh
832
+ $ pulumi import snowflake:index/functionJava:FunctionJava example '"<database_name>"."<schema_name>"."<function_name>"(varchar, varchar, varchar)'
833
+ ```
834
+
835
+ Note: Snowflake is not returning all information needed to populate the state correctly after import (e.g. data types with attributes like NUMBER(32, 10) are returned as NUMBER, default values for arguments are not returned at all).
836
+
837
+ Also, `ALTER` for functions is very limited so most of the attributes on this resource are marked as force new. Because of that, in multiple situations plan won't be empty after importing and manual state operations may be required.
838
+
839
+ :param str resource_name: The name of the resource.
840
+ :param FunctionJavaArgs args: The arguments to use to populate this resource's properties.
841
+ :param pulumi.ResourceOptions opts: Options for the resource.
842
+ """
843
+ ...
844
+ def __init__(__self__, resource_name: str, *args, **kwargs):
845
+ resource_args, opts = _utilities.get_resource_args_opts(FunctionJavaArgs, pulumi.ResourceOptions, *args, **kwargs)
846
+ if resource_args is not None:
847
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
848
+ else:
849
+ __self__._internal_init(resource_name, *args, **kwargs)
850
+
851
+ def _internal_init(__self__,
852
+ resource_name: str,
853
+ opts: Optional[pulumi.ResourceOptions] = None,
854
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]]] = None,
855
+ comment: Optional[pulumi.Input[str]] = None,
856
+ database: Optional[pulumi.Input[str]] = None,
857
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
858
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
859
+ function_definition: Optional[pulumi.Input[str]] = None,
860
+ handler: Optional[pulumi.Input[str]] = None,
861
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]]] = None,
862
+ is_secure: Optional[pulumi.Input[str]] = None,
863
+ log_level: Optional[pulumi.Input[str]] = None,
864
+ metric_level: Optional[pulumi.Input[str]] = None,
865
+ name: Optional[pulumi.Input[str]] = None,
866
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
867
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
868
+ return_results_behavior: Optional[pulumi.Input[str]] = None,
869
+ return_type: Optional[pulumi.Input[str]] = None,
870
+ runtime_version: Optional[pulumi.Input[str]] = None,
871
+ schema: Optional[pulumi.Input[str]] = None,
872
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]]] = None,
873
+ target_path: Optional[pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']]] = None,
874
+ trace_level: Optional[pulumi.Input[str]] = None,
875
+ __props__=None):
876
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
877
+ if not isinstance(opts, pulumi.ResourceOptions):
878
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
879
+ if opts.id is None:
880
+ if __props__ is not None:
881
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
882
+ __props__ = FunctionJavaArgs.__new__(FunctionJavaArgs)
883
+
884
+ __props__.__dict__["arguments"] = arguments
885
+ __props__.__dict__["comment"] = comment
886
+ if database is None and not opts.urn:
887
+ raise TypeError("Missing required property 'database'")
888
+ __props__.__dict__["database"] = database
889
+ __props__.__dict__["enable_console_output"] = enable_console_output
890
+ __props__.__dict__["external_access_integrations"] = external_access_integrations
891
+ __props__.__dict__["function_definition"] = function_definition
892
+ if handler is None and not opts.urn:
893
+ raise TypeError("Missing required property 'handler'")
894
+ __props__.__dict__["handler"] = handler
895
+ __props__.__dict__["imports"] = imports
896
+ __props__.__dict__["is_secure"] = is_secure
897
+ __props__.__dict__["log_level"] = log_level
898
+ __props__.__dict__["metric_level"] = metric_level
899
+ __props__.__dict__["name"] = name
900
+ __props__.__dict__["null_input_behavior"] = null_input_behavior
901
+ __props__.__dict__["packages"] = packages
902
+ __props__.__dict__["return_results_behavior"] = return_results_behavior
903
+ if return_type is None and not opts.urn:
904
+ raise TypeError("Missing required property 'return_type'")
905
+ __props__.__dict__["return_type"] = return_type
906
+ __props__.__dict__["runtime_version"] = runtime_version
907
+ if schema is None and not opts.urn:
908
+ raise TypeError("Missing required property 'schema'")
909
+ __props__.__dict__["schema"] = schema
910
+ __props__.__dict__["secrets"] = secrets
911
+ __props__.__dict__["target_path"] = target_path
912
+ __props__.__dict__["trace_level"] = trace_level
913
+ __props__.__dict__["fully_qualified_name"] = None
914
+ __props__.__dict__["function_language"] = None
915
+ __props__.__dict__["parameters"] = None
916
+ __props__.__dict__["show_outputs"] = None
917
+ super(FunctionJava, __self__).__init__(
918
+ 'snowflake:index/functionJava:FunctionJava',
919
+ resource_name,
920
+ __props__,
921
+ opts)
922
+
923
+ @staticmethod
924
+ def get(resource_name: str,
925
+ id: pulumi.Input[str],
926
+ opts: Optional[pulumi.ResourceOptions] = None,
927
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]]] = None,
928
+ comment: Optional[pulumi.Input[str]] = None,
929
+ database: Optional[pulumi.Input[str]] = None,
930
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
931
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
932
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
933
+ function_definition: Optional[pulumi.Input[str]] = None,
934
+ function_language: Optional[pulumi.Input[str]] = None,
935
+ handler: Optional[pulumi.Input[str]] = None,
936
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]]] = None,
937
+ is_secure: Optional[pulumi.Input[str]] = None,
938
+ log_level: Optional[pulumi.Input[str]] = None,
939
+ metric_level: Optional[pulumi.Input[str]] = None,
940
+ name: Optional[pulumi.Input[str]] = None,
941
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
942
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
943
+ parameters: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaParameterArgs', 'FunctionJavaParameterArgsDict']]]]] = None,
944
+ return_results_behavior: Optional[pulumi.Input[str]] = None,
945
+ return_type: Optional[pulumi.Input[str]] = None,
946
+ runtime_version: Optional[pulumi.Input[str]] = None,
947
+ schema: Optional[pulumi.Input[str]] = None,
948
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]]] = None,
949
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaShowOutputArgs', 'FunctionJavaShowOutputArgsDict']]]]] = None,
950
+ target_path: Optional[pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']]] = None,
951
+ trace_level: Optional[pulumi.Input[str]] = None) -> 'FunctionJava':
952
+ """
953
+ Get an existing FunctionJava resource's state with the given name, id, and optional extra
954
+ properties used to qualify the lookup.
955
+
956
+ :param str resource_name: The unique name of the resulting resource.
957
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
958
+ :param pulumi.ResourceOptions opts: Options for the resource.
959
+ :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaArgumentArgs', 'FunctionJavaArgumentArgsDict']]]] arguments: List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
960
+ :param pulumi.Input[str] comment: Specifies a comment for the function.
961
+ :param pulumi.Input[str] database: The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
962
+ :param pulumi.Input[bool] enable_console_output: Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
963
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] external_access_integrations: The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
964
+ :param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
965
+ :param pulumi.Input[str] function_definition: Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
966
+ :param pulumi.Input[str] function_language: Specifies language for the user. Used to detect external changes.
967
+ :param pulumi.Input[str] handler: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
968
+ :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaImportArgs', 'FunctionJavaImportArgsDict']]]] imports: The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
969
+ :param pulumi.Input[str] log_level: LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
970
+ :param pulumi.Input[str] metric_level: METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
971
+ :param pulumi.Input[str] name: The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
972
+ :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
973
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] packages: The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
974
+ :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaParameterArgs', 'FunctionJavaParameterArgsDict']]]] parameters: Outputs the result of `SHOW PARAMETERS IN FUNCTION` for the given function.
975
+ :param pulumi.Input[str] return_results_behavior: Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
976
+ :param pulumi.Input[str] return_type: Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
977
+ :param pulumi.Input[str] runtime_version: Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
978
+ :param pulumi.Input[str] schema: The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
979
+ :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaSecretArgs', 'FunctionJavaSecretArgsDict']]]] secrets: Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
980
+ :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionJavaShowOutputArgs', 'FunctionJavaShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW FUNCTION` for the given function.
981
+ :param pulumi.Input[Union['FunctionJavaTargetPathArgs', 'FunctionJavaTargetPathArgsDict']] target_path: The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
982
+ :param pulumi.Input[str] trace_level: Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
983
+ """
984
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
985
+
986
+ __props__ = _FunctionJavaState.__new__(_FunctionJavaState)
987
+
988
+ __props__.__dict__["arguments"] = arguments
989
+ __props__.__dict__["comment"] = comment
990
+ __props__.__dict__["database"] = database
991
+ __props__.__dict__["enable_console_output"] = enable_console_output
992
+ __props__.__dict__["external_access_integrations"] = external_access_integrations
993
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
994
+ __props__.__dict__["function_definition"] = function_definition
995
+ __props__.__dict__["function_language"] = function_language
996
+ __props__.__dict__["handler"] = handler
997
+ __props__.__dict__["imports"] = imports
998
+ __props__.__dict__["is_secure"] = is_secure
999
+ __props__.__dict__["log_level"] = log_level
1000
+ __props__.__dict__["metric_level"] = metric_level
1001
+ __props__.__dict__["name"] = name
1002
+ __props__.__dict__["null_input_behavior"] = null_input_behavior
1003
+ __props__.__dict__["packages"] = packages
1004
+ __props__.__dict__["parameters"] = parameters
1005
+ __props__.__dict__["return_results_behavior"] = return_results_behavior
1006
+ __props__.__dict__["return_type"] = return_type
1007
+ __props__.__dict__["runtime_version"] = runtime_version
1008
+ __props__.__dict__["schema"] = schema
1009
+ __props__.__dict__["secrets"] = secrets
1010
+ __props__.__dict__["show_outputs"] = show_outputs
1011
+ __props__.__dict__["target_path"] = target_path
1012
+ __props__.__dict__["trace_level"] = trace_level
1013
+ return FunctionJava(resource_name, opts=opts, __props__=__props__)
1014
+
1015
+ @property
1016
+ @pulumi.getter
1017
+ def arguments(self) -> pulumi.Output[Optional[Sequence['outputs.FunctionJavaArgument']]]:
1018
+ """
1019
+ List of the arguments for the function. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages) for more details.
1020
+ """
1021
+ return pulumi.get(self, "arguments")
1022
+
1023
+ @property
1024
+ @pulumi.getter
1025
+ def comment(self) -> pulumi.Output[Optional[str]]:
1026
+ """
1027
+ Specifies a comment for the function.
1028
+ """
1029
+ return pulumi.get(self, "comment")
1030
+
1031
+ @property
1032
+ @pulumi.getter
1033
+ def database(self) -> pulumi.Output[str]:
1034
+ """
1035
+ The database in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1036
+ """
1037
+ return pulumi.get(self, "database")
1038
+
1039
+ @property
1040
+ @pulumi.getter(name="enableConsoleOutput")
1041
+ def enable_console_output(self) -> pulumi.Output[bool]:
1042
+ """
1043
+ Enable stdout/stderr fast path logging for anonyous stored procs. This is a public parameter (similar to LOG*LEVEL). For more information, check [ENABLE*CONSOLE_OUTPUT docs](https://docs.snowflake.com/en/sql-reference/parameters#enable-console-output).
1044
+ """
1045
+ return pulumi.get(self, "enable_console_output")
1046
+
1047
+ @property
1048
+ @pulumi.getter(name="externalAccessIntegrations")
1049
+ def external_access_integrations(self) -> pulumi.Output[Optional[Sequence[str]]]:
1050
+ """
1051
+ The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this function’s handler code to access external networks. An external access integration specifies [network rules](https://docs.snowflake.com/en/sql-reference/sql/create-network-rule) and [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) that specify external locations and credentials (if any) allowed for use by handler code when making requests of an external network, such as an external REST API.
1052
+ """
1053
+ return pulumi.get(self, "external_access_integrations")
1054
+
1055
+ @property
1056
+ @pulumi.getter(name="fullyQualifiedName")
1057
+ def fully_qualified_name(self) -> pulumi.Output[str]:
1058
+ """
1059
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
1060
+ """
1061
+ return pulumi.get(self, "fully_qualified_name")
1062
+
1063
+ @property
1064
+ @pulumi.getter(name="functionDefinition")
1065
+ def function_definition(self) -> pulumi.Output[Optional[str]]:
1066
+ """
1067
+ Defines the handler code executed when the UDF is called. Wrapping `$$` signs are added by the provider automatically; do not include them. The `function_definition` value must be Java source code. For more information, see [Introduction to Java UDFs](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-introduction). To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
1068
+ """
1069
+ return pulumi.get(self, "function_definition")
1070
+
1071
+ @property
1072
+ @pulumi.getter(name="functionLanguage")
1073
+ def function_language(self) -> pulumi.Output[str]:
1074
+ """
1075
+ Specifies language for the user. Used to detect external changes.
1076
+ """
1077
+ return pulumi.get(self, "function_language")
1078
+
1079
+ @property
1080
+ @pulumi.getter
1081
+ def handler(self) -> pulumi.Output[str]:
1082
+ """
1083
+ The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
1084
+ """
1085
+ return pulumi.get(self, "handler")
1086
+
1087
+ @property
1088
+ @pulumi.getter
1089
+ def imports(self) -> pulumi.Output[Optional[Sequence['outputs.FunctionJavaImport']]]:
1090
+ """
1091
+ The location (stage), path, and name of the file(s) to import. A file can be a JAR file or another type of file. If the file is a JAR file, it can contain one or more .class files and zero or more resource files. JNI (Java Native Interface) is not supported. Snowflake prohibits loading libraries that contain native code (as opposed to Java bytecode). Java UDFs can also read non-JAR files. For an example, see [Reading a file specified statically in IMPORTS](https://docs.snowflake.com/en/developer-guide/udf/java/udf-java-cookbook.html#label-reading-file-from-java-udf-imports). Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#java).
1092
+ """
1093
+ return pulumi.get(self, "imports")
1094
+
1095
+ @property
1096
+ @pulumi.getter(name="isSecure")
1097
+ def is_secure(self) -> pulumi.Output[Optional[str]]:
1098
+ return pulumi.get(self, "is_secure")
1099
+
1100
+ @property
1101
+ @pulumi.getter(name="logLevel")
1102
+ def log_level(self) -> pulumi.Output[str]:
1103
+ """
1104
+ LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
1105
+ """
1106
+ return pulumi.get(self, "log_level")
1107
+
1108
+ @property
1109
+ @pulumi.getter(name="metricLevel")
1110
+ def metric_level(self) -> pulumi.Output[str]:
1111
+ """
1112
+ METRIC*LEVEL value to control whether to emit metrics to Event Table For more information, check [METRIC*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#metric-level).
1113
+ """
1114
+ return pulumi.get(self, "metric_level")
1115
+
1116
+ @property
1117
+ @pulumi.getter
1118
+ def name(self) -> pulumi.Output[str]:
1119
+ """
1120
+ The name of the function; the identifier does not need to be unique for the schema in which the function is created because UDFs are identified and resolved by the combination of the name and argument types. Check the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1121
+ """
1122
+ return pulumi.get(self, "name")
1123
+
1124
+ @property
1125
+ @pulumi.getter(name="nullInputBehavior")
1126
+ def null_input_behavior(self) -> pulumi.Output[Optional[str]]:
1127
+ """
1128
+ Specifies the behavior of the function when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
1129
+ """
1130
+ return pulumi.get(self, "null_input_behavior")
1131
+
1132
+ @property
1133
+ @pulumi.getter
1134
+ def packages(self) -> pulumi.Output[Optional[Sequence[str]]]:
1135
+ """
1136
+ The name and version number of Snowflake system packages required as dependencies. The value should be of the form `package_name:version_number`, where `package_name` is `snowflake_domain:package`.
1137
+ """
1138
+ return pulumi.get(self, "packages")
1139
+
1140
+ @property
1141
+ @pulumi.getter
1142
+ def parameters(self) -> pulumi.Output[Sequence['outputs.FunctionJavaParameter']]:
1143
+ """
1144
+ Outputs the result of `SHOW PARAMETERS IN FUNCTION` for the given function.
1145
+ """
1146
+ return pulumi.get(self, "parameters")
1147
+
1148
+ @property
1149
+ @pulumi.getter(name="returnResultsBehavior")
1150
+ def return_results_behavior(self) -> pulumi.Output[Optional[str]]:
1151
+ """
1152
+ Specifies the behavior of the function when returning results. Valid values are (case-insensitive): `VOLATILE` | `IMMUTABLE`.
1153
+ """
1154
+ return pulumi.get(self, "return_results_behavior")
1155
+
1156
+ @property
1157
+ @pulumi.getter(name="returnType")
1158
+ def return_type(self) -> pulumi.Output[str]:
1159
+ """
1160
+ Specifies the results returned by the UDF, which determines the UDF type. Use `<result_data_type>` to create a scalar UDF that returns a single value with the specified data type. Use `TABLE (col_name col_data_type, ...)` to creates a table UDF that returns tabular results with the specified table column(s) and column type(s). For the details, consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-function#all-languages).
1161
+ """
1162
+ return pulumi.get(self, "return_type")
1163
+
1164
+ @property
1165
+ @pulumi.getter(name="runtimeVersion")
1166
+ def runtime_version(self) -> pulumi.Output[Optional[str]]:
1167
+ """
1168
+ Specifies the Java JDK runtime version to use. The supported versions of Java are 11.x and 17.x. If RUNTIME_VERSION is not set, Java JDK 11 is used.
1169
+ """
1170
+ return pulumi.get(self, "runtime_version")
1171
+
1172
+ @property
1173
+ @pulumi.getter
1174
+ def schema(self) -> pulumi.Output[str]:
1175
+ """
1176
+ The schema in which to create the function. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1177
+ """
1178
+ return pulumi.get(self, "schema")
1179
+
1180
+ @property
1181
+ @pulumi.getter
1182
+ def secrets(self) -> pulumi.Output[Optional[Sequence['outputs.FunctionJavaSecret']]]:
1183
+ """
1184
+ Assigns the names of [secrets](https://docs.snowflake.com/en/sql-reference/sql/create-secret) to variables so that you can use the variables to reference the secrets when retrieving information from secrets in handler code. Secrets you specify here must be allowed by the [external access integration](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) specified as a value of this CREATE FUNCTION command’s EXTERNAL*ACCESS*INTEGRATIONS parameter.
1185
+ """
1186
+ return pulumi.get(self, "secrets")
1187
+
1188
+ @property
1189
+ @pulumi.getter(name="showOutputs")
1190
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.FunctionJavaShowOutput']]:
1191
+ """
1192
+ Outputs the result of `SHOW FUNCTION` for the given function.
1193
+ """
1194
+ return pulumi.get(self, "show_outputs")
1195
+
1196
+ @property
1197
+ @pulumi.getter(name="targetPath")
1198
+ def target_path(self) -> pulumi.Output[Optional['outputs.FunctionJavaTargetPath']]:
1199
+ """
1200
+ The name of the handler method or class. If the handler is for a scalar UDF, returning a non-tabular value, the HANDLER value should be a method name, as in the following form: `MyClass.myMethod`. If the handler is for a tabular UDF, the HANDLER value should be the name of a handler class.
1201
+ """
1202
+ return pulumi.get(self, "target_path")
1203
+
1204
+ @property
1205
+ @pulumi.getter(name="traceLevel")
1206
+ def trace_level(self) -> pulumi.Output[str]:
1207
+ """
1208
+ Trace level value to use when generating/filtering trace events For more information, check [TRACE_LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#trace-level).
1209
+ """
1210
+ return pulumi.get(self, "trace_level")
1211
+