pulumi-snowflake 0.50.3a1710160126__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 +52857 -1665
  3. pulumi_snowflake/_utilities.py +41 -5
  4. pulumi_snowflake/account.py +188 -218
  5. pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
  6. pulumi_snowflake/account_parameter.py +21 -48
  7. pulumi_snowflake/account_password_policy_attachment.py +7 -32
  8. pulumi_snowflake/account_role.py +250 -0
  9. pulumi_snowflake/alert.py +38 -47
  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 +33 -52
  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 -213
  20. pulumi_snowflake/database_role.py +81 -44
  21. pulumi_snowflake/dynamic_table.py +42 -49
  22. pulumi_snowflake/email_notification_integration.py +33 -28
  23. pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -39
  24. pulumi_snowflake/external_function.py +54 -75
  25. pulumi_snowflake/external_oauth_integration.py +593 -542
  26. pulumi_snowflake/external_table.py +67 -90
  27. pulumi_snowflake/external_volume.py +382 -0
  28. pulumi_snowflake/failover_group.py +57 -98
  29. pulumi_snowflake/file_format.py +33 -28
  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 -9
  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 -13
  41. pulumi_snowflake/get_current_role.py +14 -7
  42. pulumi_snowflake/get_database.py +25 -9
  43. pulumi_snowflake/get_database_role.py +162 -0
  44. pulumi_snowflake/get_database_roles.py +79 -47
  45. pulumi_snowflake/get_databases.py +91 -73
  46. pulumi_snowflake/get_dynamic_tables.py +36 -19
  47. pulumi_snowflake/get_external_functions.py +28 -9
  48. pulumi_snowflake/get_external_tables.py +28 -9
  49. pulumi_snowflake/get_failover_groups.py +18 -7
  50. pulumi_snowflake/get_file_formats.py +28 -9
  51. pulumi_snowflake/get_functions.py +28 -9
  52. pulumi_snowflake/get_grants.py +207 -84
  53. pulumi_snowflake/get_masking_policies.py +91 -51
  54. pulumi_snowflake/get_materialized_views.py +28 -9
  55. pulumi_snowflake/get_network_policies.py +129 -0
  56. pulumi_snowflake/get_parameters.py +38 -15
  57. pulumi_snowflake/get_pipes.py +28 -9
  58. pulumi_snowflake/get_procedures.py +28 -9
  59. pulumi_snowflake/get_resource_monitors.py +37 -24
  60. pulumi_snowflake/get_row_access_policies.py +91 -51
  61. pulumi_snowflake/get_schemas.py +145 -41
  62. pulumi_snowflake/get_secrets.py +200 -0
  63. pulumi_snowflake/get_security_integrations.py +129 -0
  64. pulumi_snowflake/get_sequences.py +28 -9
  65. pulumi_snowflake/get_shares.py +18 -9
  66. pulumi_snowflake/get_stages.py +28 -9
  67. pulumi_snowflake/get_storage_integrations.py +16 -9
  68. pulumi_snowflake/get_streamlits.py +170 -0
  69. pulumi_snowflake/get_streams.py +114 -54
  70. pulumi_snowflake/get_system_generate_scim_access_token.py +18 -9
  71. pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
  72. pulumi_snowflake/get_system_get_private_link_config.py +120 -5
  73. pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
  74. pulumi_snowflake/get_tables.py +28 -9
  75. pulumi_snowflake/get_tags.py +130 -0
  76. pulumi_snowflake/get_tasks.py +134 -54
  77. pulumi_snowflake/get_users.py +116 -44
  78. pulumi_snowflake/get_views.py +114 -54
  79. pulumi_snowflake/get_warehouses.py +79 -26
  80. pulumi_snowflake/grant_account_role.py +28 -75
  81. pulumi_snowflake/grant_application_role.py +257 -0
  82. pulumi_snowflake/grant_database_role.py +35 -94
  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 -383
  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 +40 -11
  89. pulumi_snowflake/masking_policy.py +213 -310
  90. pulumi_snowflake/materialized_view.py +62 -71
  91. pulumi_snowflake/network_policy.py +217 -61
  92. pulumi_snowflake/network_policy_attachment.py +5 -34
  93. pulumi_snowflake/network_rule.py +473 -0
  94. pulumi_snowflake/notification_integration.py +49 -84
  95. pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
  96. pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -192
  97. pulumi_snowflake/object_parameter.py +10 -101
  98. pulumi_snowflake/outputs.py +49200 -2928
  99. pulumi_snowflake/password_policy.py +41 -28
  100. pulumi_snowflake/pipe.py +33 -4
  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 -327
  110. pulumi_snowflake/row_access_policy.py +200 -149
  111. pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -299
  112. pulumi_snowflake/schema.py +949 -178
  113. pulumi_snowflake/scim_integration.py +286 -109
  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 -34
  121. pulumi_snowflake/service_user.py +3585 -0
  122. pulumi_snowflake/share.py +33 -28
  123. pulumi_snowflake/shared_database.py +939 -0
  124. pulumi_snowflake/stage.py +95 -84
  125. pulumi_snowflake/storage_integration.py +46 -4
  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 -97
  132. pulumi_snowflake/table_column_masking_policy_application.py +7 -14
  133. pulumi_snowflake/table_constraint.py +29 -172
  134. pulumi_snowflake/tag.py +142 -74
  135. pulumi_snowflake/tag_association.py +40 -215
  136. pulumi_snowflake/task.py +3048 -418
  137. pulumi_snowflake/user.py +3351 -384
  138. pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
  139. pulumi_snowflake/user_password_policy_attachment.py +5 -4
  140. pulumi_snowflake/user_public_keys.py +5 -0
  141. pulumi_snowflake/view.py +466 -215
  142. pulumi_snowflake/warehouse.py +184 -168
  143. {pulumi_snowflake-0.50.3a1710160126.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.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
  146. pulumi_snowflake/account_grant.py +0 -343
  147. pulumi_snowflake/database_grant.py +0 -495
  148. pulumi_snowflake/external_table_grant.py +0 -690
  149. pulumi_snowflake/failover_group_grant.py +0 -388
  150. pulumi_snowflake/file_format_grant.py +0 -635
  151. pulumi_snowflake/function.py +0 -872
  152. pulumi_snowflake/function_grant.py +0 -745
  153. pulumi_snowflake/get_role.py +0 -121
  154. pulumi_snowflake/get_roles.py +0 -120
  155. pulumi_snowflake/grant_privileges_to_role.py +0 -825
  156. pulumi_snowflake/integration_grant.py +0 -440
  157. pulumi_snowflake/masking_policy_grant.py +0 -542
  158. pulumi_snowflake/materialized_view_grant.py +0 -689
  159. pulumi_snowflake/pipe_grant.py +0 -587
  160. pulumi_snowflake/procedure.py +0 -887
  161. pulumi_snowflake/procedure_grant.py +0 -745
  162. pulumi_snowflake/resource_monitor_grant.py +0 -387
  163. pulumi_snowflake/role.py +0 -273
  164. pulumi_snowflake/role_grants.py +0 -352
  165. pulumi_snowflake/role_ownership_grant.py +0 -338
  166. pulumi_snowflake/row_access_policy_grant.py +0 -540
  167. pulumi_snowflake/schema_grant.py +0 -647
  168. pulumi_snowflake/sequence_grant.py +0 -635
  169. pulumi_snowflake/session_parameter.py +0 -332
  170. pulumi_snowflake/stage_grant.py +0 -635
  171. pulumi_snowflake/stream.py +0 -614
  172. pulumi_snowflake/stream_grant.py +0 -635
  173. pulumi_snowflake/table_grant.py +0 -677
  174. pulumi_snowflake/tag_grant.py +0 -532
  175. pulumi_snowflake/tag_masking_policy_association.py +0 -210
  176. pulumi_snowflake/task_grant.py +0 -635
  177. pulumi_snowflake/user_grant.py +0 -394
  178. pulumi_snowflake/user_ownership_grant.py +0 -286
  179. pulumi_snowflake/view_grant.py +0 -705
  180. pulumi_snowflake/warehouse_grant.py +0 -440
  181. pulumi_snowflake-0.50.3a1710160126.dist-info/RECORD +0 -136
  182. {pulumi_snowflake-0.50.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1273 @@
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__ = ['ProcedureJavaArgs', 'ProcedureJava']
20
+
21
+ @pulumi.input_type
22
+ class ProcedureJavaArgs:
23
+ def __init__(__self__, *,
24
+ database: pulumi.Input[str],
25
+ handler: pulumi.Input[str],
26
+ return_type: pulumi.Input[str],
27
+ runtime_version: pulumi.Input[str],
28
+ schema: pulumi.Input[str],
29
+ snowpark_package: pulumi.Input[str],
30
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaArgumentArgs']]]] = None,
31
+ comment: Optional[pulumi.Input[str]] = None,
32
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
33
+ execute_as: Optional[pulumi.Input[str]] = None,
34
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
35
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaImportArgs']]]] = None,
36
+ is_secure: Optional[pulumi.Input[str]] = None,
37
+ log_level: Optional[pulumi.Input[str]] = None,
38
+ metric_level: Optional[pulumi.Input[str]] = None,
39
+ name: Optional[pulumi.Input[str]] = None,
40
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
41
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
42
+ procedure_definition: Optional[pulumi.Input[str]] = None,
43
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaSecretArgs']]]] = None,
44
+ target_path: Optional[pulumi.Input['ProcedureJavaTargetPathArgs']] = None,
45
+ trace_level: Optional[pulumi.Input[str]] = None):
46
+ """
47
+ The set of arguments for constructing a ProcedureJava resource.
48
+ :param pulumi.Input[str] database: The database in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
49
+ :param pulumi.Input[str] handler: Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
50
+ :param pulumi.Input[str] return_type: Specifies the type of the result returned by the stored procedure. For `<result_data_type>`, use the Snowflake data type that corresponds to the type of the language that you are using (see [SQL-Java Data Type Mappings](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-data-type-mapping.html#label-sql-java-data-type-mappings)). For `RETURNS TABLE ( [ col_name col_data_type [ , ... ] ] )`, if you know the Snowflake data types of the columns in the returned table, specify the column names and types. Otherwise (e.g. if you are determining the column types during run time), you can omit the column names and types (i.e. `TABLE ()`).
51
+ :param pulumi.Input[str] runtime_version: The language runtime version to use. Currently, the supported versions are: 11.
52
+ :param pulumi.Input[str] schema: The schema in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
53
+ :param pulumi.Input[str] snowpark_package: The Snowpark package is required for stored procedures, so it must always be present. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
54
+ :param pulumi.Input[Sequence[pulumi.Input['ProcedureJavaArgumentArgs']]] arguments: List of the arguments for the procedure. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-procedure#all-languages) for more details.
55
+ :param pulumi.Input[str] comment: Specifies a comment for the procedure.
56
+ :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).
57
+ :param pulumi.Input[str] execute_as: Specifies whether the stored procedure executes with the privileges of the owner (an “owner’s rights” stored procedure) or with the privileges of the caller (a “caller’s rights” stored procedure). If you execute the statement CREATE PROCEDURE … EXECUTE AS CALLER, then in the future the procedure will execute as a caller’s rights procedure. If you execute CREATE PROCEDURE … EXECUTE AS OWNER, then the procedure will execute as an owner’s rights procedure. For more information, see [Understanding caller’s rights and owner’s rights stored procedures](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-rights). Valid values are (case-insensitive): `CALLER` | `OWNER`.
58
+ :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 procedure’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.
59
+ :param pulumi.Input[Sequence[pulumi.Input['ProcedureJavaImportArgs']]] imports: The location (stage), path, and name of the file(s) to import. You must set the IMPORTS clause to include any files that your stored procedure depends on. If you are writing an in-line stored procedure, you can omit this clause, unless your code depends on classes defined outside the stored procedure or resource files. If you are writing a stored procedure with a staged handler, you must also include a path to the JAR file containing the stored procedure’s handler code. The IMPORTS definition cannot reference variables from arguments that are passed into the stored procedure. Each file in the IMPORTS clause must have a unique name, even if the files are in different subdirectories or different stages.
60
+ :param pulumi.Input[str] is_secure: Specifies that the procedure is secure. For more information about secure procedures, see [Protecting Sensitive Information with Secure UDFs and Stored Procedures](https://docs.snowflake.com/en/developer-guide/secure-udf-procedure). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
61
+ :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).
62
+ :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).
63
+ :param pulumi.Input[str] name: The name of the procedure; the identifier does not need to be unique for the schema in which the procedure is created because stored procedures are [identified and resolved by the combination of the name and argument types](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-naming-conventions.html#label-procedure-function-name-overloading). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
64
+ :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the procedure when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
65
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] packages: List of the names of packages deployed in Snowflake that should be included in the handler code’s execution environment. The Snowpark package is required for stored procedures, but is specified in the `snowpark_package` attribute. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
66
+ :param pulumi.Input[str] procedure_definition: Defines the code executed by the stored procedure. The definition can consist of any valid code. Wrapping `$$` signs are added by the provider automatically; do not include them. The `procedure_definition` value must be Java source code. For more information, see [Java (using Snowpark)](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-java). 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.
67
+ :param pulumi.Input[Sequence[pulumi.Input['ProcedureJavaSecretArgs']]] 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.
68
+ :param pulumi.Input['ProcedureJavaTargetPathArgs'] target_path: Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
69
+ :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).
70
+ """
71
+ pulumi.set(__self__, "database", database)
72
+ pulumi.set(__self__, "handler", handler)
73
+ pulumi.set(__self__, "return_type", return_type)
74
+ pulumi.set(__self__, "runtime_version", runtime_version)
75
+ pulumi.set(__self__, "schema", schema)
76
+ pulumi.set(__self__, "snowpark_package", snowpark_package)
77
+ if arguments is not None:
78
+ pulumi.set(__self__, "arguments", arguments)
79
+ if comment is not None:
80
+ pulumi.set(__self__, "comment", comment)
81
+ if enable_console_output is not None:
82
+ pulumi.set(__self__, "enable_console_output", enable_console_output)
83
+ if execute_as is not None:
84
+ pulumi.set(__self__, "execute_as", execute_as)
85
+ if external_access_integrations is not None:
86
+ pulumi.set(__self__, "external_access_integrations", external_access_integrations)
87
+ if imports is not None:
88
+ pulumi.set(__self__, "imports", imports)
89
+ if is_secure is not None:
90
+ pulumi.set(__self__, "is_secure", is_secure)
91
+ if log_level is not None:
92
+ pulumi.set(__self__, "log_level", log_level)
93
+ if metric_level is not None:
94
+ pulumi.set(__self__, "metric_level", metric_level)
95
+ if name is not None:
96
+ pulumi.set(__self__, "name", name)
97
+ if null_input_behavior is not None:
98
+ pulumi.set(__self__, "null_input_behavior", null_input_behavior)
99
+ if packages is not None:
100
+ pulumi.set(__self__, "packages", packages)
101
+ if procedure_definition is not None:
102
+ pulumi.set(__self__, "procedure_definition", procedure_definition)
103
+ if secrets is not None:
104
+ pulumi.set(__self__, "secrets", secrets)
105
+ if target_path is not None:
106
+ pulumi.set(__self__, "target_path", target_path)
107
+ if trace_level is not None:
108
+ pulumi.set(__self__, "trace_level", trace_level)
109
+
110
+ @property
111
+ @pulumi.getter
112
+ def database(self) -> pulumi.Input[str]:
113
+ """
114
+ The database in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
115
+ """
116
+ return pulumi.get(self, "database")
117
+
118
+ @database.setter
119
+ def database(self, value: pulumi.Input[str]):
120
+ pulumi.set(self, "database", value)
121
+
122
+ @property
123
+ @pulumi.getter
124
+ def handler(self) -> pulumi.Input[str]:
125
+ """
126
+ Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
127
+ """
128
+ return pulumi.get(self, "handler")
129
+
130
+ @handler.setter
131
+ def handler(self, value: pulumi.Input[str]):
132
+ pulumi.set(self, "handler", value)
133
+
134
+ @property
135
+ @pulumi.getter(name="returnType")
136
+ def return_type(self) -> pulumi.Input[str]:
137
+ """
138
+ Specifies the type of the result returned by the stored procedure. For `<result_data_type>`, use the Snowflake data type that corresponds to the type of the language that you are using (see [SQL-Java Data Type Mappings](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-data-type-mapping.html#label-sql-java-data-type-mappings)). For `RETURNS TABLE ( [ col_name col_data_type [ , ... ] ] )`, if you know the Snowflake data types of the columns in the returned table, specify the column names and types. Otherwise (e.g. if you are determining the column types during run time), you can omit the column names and types (i.e. `TABLE ()`).
139
+ """
140
+ return pulumi.get(self, "return_type")
141
+
142
+ @return_type.setter
143
+ def return_type(self, value: pulumi.Input[str]):
144
+ pulumi.set(self, "return_type", value)
145
+
146
+ @property
147
+ @pulumi.getter(name="runtimeVersion")
148
+ def runtime_version(self) -> pulumi.Input[str]:
149
+ """
150
+ The language runtime version to use. Currently, the supported versions are: 11.
151
+ """
152
+ return pulumi.get(self, "runtime_version")
153
+
154
+ @runtime_version.setter
155
+ def runtime_version(self, value: pulumi.Input[str]):
156
+ pulumi.set(self, "runtime_version", value)
157
+
158
+ @property
159
+ @pulumi.getter
160
+ def schema(self) -> pulumi.Input[str]:
161
+ """
162
+ The schema in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
163
+ """
164
+ return pulumi.get(self, "schema")
165
+
166
+ @schema.setter
167
+ def schema(self, value: pulumi.Input[str]):
168
+ pulumi.set(self, "schema", value)
169
+
170
+ @property
171
+ @pulumi.getter(name="snowparkPackage")
172
+ def snowpark_package(self) -> pulumi.Input[str]:
173
+ """
174
+ The Snowpark package is required for stored procedures, so it must always be present. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
175
+ """
176
+ return pulumi.get(self, "snowpark_package")
177
+
178
+ @snowpark_package.setter
179
+ def snowpark_package(self, value: pulumi.Input[str]):
180
+ pulumi.set(self, "snowpark_package", value)
181
+
182
+ @property
183
+ @pulumi.getter
184
+ def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaArgumentArgs']]]]:
185
+ """
186
+ List of the arguments for the procedure. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-procedure#all-languages) for more details.
187
+ """
188
+ return pulumi.get(self, "arguments")
189
+
190
+ @arguments.setter
191
+ def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaArgumentArgs']]]]):
192
+ pulumi.set(self, "arguments", value)
193
+
194
+ @property
195
+ @pulumi.getter
196
+ def comment(self) -> Optional[pulumi.Input[str]]:
197
+ """
198
+ Specifies a comment for the procedure.
199
+ """
200
+ return pulumi.get(self, "comment")
201
+
202
+ @comment.setter
203
+ def comment(self, value: Optional[pulumi.Input[str]]):
204
+ pulumi.set(self, "comment", value)
205
+
206
+ @property
207
+ @pulumi.getter(name="enableConsoleOutput")
208
+ def enable_console_output(self) -> Optional[pulumi.Input[bool]]:
209
+ """
210
+ 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).
211
+ """
212
+ return pulumi.get(self, "enable_console_output")
213
+
214
+ @enable_console_output.setter
215
+ def enable_console_output(self, value: Optional[pulumi.Input[bool]]):
216
+ pulumi.set(self, "enable_console_output", value)
217
+
218
+ @property
219
+ @pulumi.getter(name="executeAs")
220
+ def execute_as(self) -> Optional[pulumi.Input[str]]:
221
+ """
222
+ Specifies whether the stored procedure executes with the privileges of the owner (an “owner’s rights” stored procedure) or with the privileges of the caller (a “caller’s rights” stored procedure). If you execute the statement CREATE PROCEDURE … EXECUTE AS CALLER, then in the future the procedure will execute as a caller’s rights procedure. If you execute CREATE PROCEDURE … EXECUTE AS OWNER, then the procedure will execute as an owner’s rights procedure. For more information, see [Understanding caller’s rights and owner’s rights stored procedures](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-rights). Valid values are (case-insensitive): `CALLER` | `OWNER`.
223
+ """
224
+ return pulumi.get(self, "execute_as")
225
+
226
+ @execute_as.setter
227
+ def execute_as(self, value: Optional[pulumi.Input[str]]):
228
+ pulumi.set(self, "execute_as", value)
229
+
230
+ @property
231
+ @pulumi.getter(name="externalAccessIntegrations")
232
+ def external_access_integrations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
233
+ """
234
+ The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this procedure’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.
235
+ """
236
+ return pulumi.get(self, "external_access_integrations")
237
+
238
+ @external_access_integrations.setter
239
+ def external_access_integrations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
240
+ pulumi.set(self, "external_access_integrations", value)
241
+
242
+ @property
243
+ @pulumi.getter
244
+ def imports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaImportArgs']]]]:
245
+ """
246
+ The location (stage), path, and name of the file(s) to import. You must set the IMPORTS clause to include any files that your stored procedure depends on. If you are writing an in-line stored procedure, you can omit this clause, unless your code depends on classes defined outside the stored procedure or resource files. If you are writing a stored procedure with a staged handler, you must also include a path to the JAR file containing the stored procedure’s handler code. The IMPORTS definition cannot reference variables from arguments that are passed into the stored procedure. Each file in the IMPORTS clause must have a unique name, even if the files are in different subdirectories or different stages.
247
+ """
248
+ return pulumi.get(self, "imports")
249
+
250
+ @imports.setter
251
+ def imports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaImportArgs']]]]):
252
+ pulumi.set(self, "imports", value)
253
+
254
+ @property
255
+ @pulumi.getter(name="isSecure")
256
+ def is_secure(self) -> Optional[pulumi.Input[str]]:
257
+ """
258
+ Specifies that the procedure is secure. For more information about secure procedures, see [Protecting Sensitive Information with Secure UDFs and Stored Procedures](https://docs.snowflake.com/en/developer-guide/secure-udf-procedure). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
259
+ """
260
+ return pulumi.get(self, "is_secure")
261
+
262
+ @is_secure.setter
263
+ def is_secure(self, value: Optional[pulumi.Input[str]]):
264
+ pulumi.set(self, "is_secure", value)
265
+
266
+ @property
267
+ @pulumi.getter(name="logLevel")
268
+ def log_level(self) -> Optional[pulumi.Input[str]]:
269
+ """
270
+ LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
271
+ """
272
+ return pulumi.get(self, "log_level")
273
+
274
+ @log_level.setter
275
+ def log_level(self, value: Optional[pulumi.Input[str]]):
276
+ pulumi.set(self, "log_level", value)
277
+
278
+ @property
279
+ @pulumi.getter(name="metricLevel")
280
+ def metric_level(self) -> Optional[pulumi.Input[str]]:
281
+ """
282
+ 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).
283
+ """
284
+ return pulumi.get(self, "metric_level")
285
+
286
+ @metric_level.setter
287
+ def metric_level(self, value: Optional[pulumi.Input[str]]):
288
+ pulumi.set(self, "metric_level", value)
289
+
290
+ @property
291
+ @pulumi.getter
292
+ def name(self) -> Optional[pulumi.Input[str]]:
293
+ """
294
+ The name of the procedure; the identifier does not need to be unique for the schema in which the procedure is created because stored procedures are [identified and resolved by the combination of the name and argument types](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-naming-conventions.html#label-procedure-function-name-overloading). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
295
+ """
296
+ return pulumi.get(self, "name")
297
+
298
+ @name.setter
299
+ def name(self, value: Optional[pulumi.Input[str]]):
300
+ pulumi.set(self, "name", value)
301
+
302
+ @property
303
+ @pulumi.getter(name="nullInputBehavior")
304
+ def null_input_behavior(self) -> Optional[pulumi.Input[str]]:
305
+ """
306
+ Specifies the behavior of the procedure when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
307
+ """
308
+ return pulumi.get(self, "null_input_behavior")
309
+
310
+ @null_input_behavior.setter
311
+ def null_input_behavior(self, value: Optional[pulumi.Input[str]]):
312
+ pulumi.set(self, "null_input_behavior", value)
313
+
314
+ @property
315
+ @pulumi.getter
316
+ def packages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
317
+ """
318
+ List of the names of packages deployed in Snowflake that should be included in the handler code’s execution environment. The Snowpark package is required for stored procedures, but is specified in the `snowpark_package` attribute. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
319
+ """
320
+ return pulumi.get(self, "packages")
321
+
322
+ @packages.setter
323
+ def packages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
324
+ pulumi.set(self, "packages", value)
325
+
326
+ @property
327
+ @pulumi.getter(name="procedureDefinition")
328
+ def procedure_definition(self) -> Optional[pulumi.Input[str]]:
329
+ """
330
+ Defines the code executed by the stored procedure. The definition can consist of any valid code. Wrapping `$$` signs are added by the provider automatically; do not include them. The `procedure_definition` value must be Java source code. For more information, see [Java (using Snowpark)](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-java). 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.
331
+ """
332
+ return pulumi.get(self, "procedure_definition")
333
+
334
+ @procedure_definition.setter
335
+ def procedure_definition(self, value: Optional[pulumi.Input[str]]):
336
+ pulumi.set(self, "procedure_definition", value)
337
+
338
+ @property
339
+ @pulumi.getter
340
+ def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaSecretArgs']]]]:
341
+ """
342
+ 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.
343
+ """
344
+ return pulumi.get(self, "secrets")
345
+
346
+ @secrets.setter
347
+ def secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaSecretArgs']]]]):
348
+ pulumi.set(self, "secrets", value)
349
+
350
+ @property
351
+ @pulumi.getter(name="targetPath")
352
+ def target_path(self) -> Optional[pulumi.Input['ProcedureJavaTargetPathArgs']]:
353
+ """
354
+ Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
355
+ """
356
+ return pulumi.get(self, "target_path")
357
+
358
+ @target_path.setter
359
+ def target_path(self, value: Optional[pulumi.Input['ProcedureJavaTargetPathArgs']]):
360
+ pulumi.set(self, "target_path", value)
361
+
362
+ @property
363
+ @pulumi.getter(name="traceLevel")
364
+ def trace_level(self) -> Optional[pulumi.Input[str]]:
365
+ """
366
+ 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).
367
+ """
368
+ return pulumi.get(self, "trace_level")
369
+
370
+ @trace_level.setter
371
+ def trace_level(self, value: Optional[pulumi.Input[str]]):
372
+ pulumi.set(self, "trace_level", value)
373
+
374
+
375
+ @pulumi.input_type
376
+ class _ProcedureJavaState:
377
+ def __init__(__self__, *,
378
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaArgumentArgs']]]] = None,
379
+ comment: Optional[pulumi.Input[str]] = None,
380
+ database: Optional[pulumi.Input[str]] = None,
381
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
382
+ execute_as: Optional[pulumi.Input[str]] = None,
383
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
384
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
385
+ handler: Optional[pulumi.Input[str]] = None,
386
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaImportArgs']]]] = None,
387
+ is_secure: Optional[pulumi.Input[str]] = None,
388
+ log_level: Optional[pulumi.Input[str]] = None,
389
+ metric_level: Optional[pulumi.Input[str]] = None,
390
+ name: Optional[pulumi.Input[str]] = None,
391
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
392
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
393
+ parameters: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaParameterArgs']]]] = None,
394
+ procedure_definition: Optional[pulumi.Input[str]] = None,
395
+ procedure_language: Optional[pulumi.Input[str]] = None,
396
+ return_type: Optional[pulumi.Input[str]] = None,
397
+ runtime_version: Optional[pulumi.Input[str]] = None,
398
+ schema: Optional[pulumi.Input[str]] = None,
399
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaSecretArgs']]]] = None,
400
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaShowOutputArgs']]]] = None,
401
+ snowpark_package: Optional[pulumi.Input[str]] = None,
402
+ target_path: Optional[pulumi.Input['ProcedureJavaTargetPathArgs']] = None,
403
+ trace_level: Optional[pulumi.Input[str]] = None):
404
+ """
405
+ Input properties used for looking up and filtering ProcedureJava resources.
406
+ :param pulumi.Input[Sequence[pulumi.Input['ProcedureJavaArgumentArgs']]] arguments: List of the arguments for the procedure. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-procedure#all-languages) for more details.
407
+ :param pulumi.Input[str] comment: Specifies a comment for the procedure.
408
+ :param pulumi.Input[str] database: The database in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
409
+ :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).
410
+ :param pulumi.Input[str] execute_as: Specifies whether the stored procedure executes with the privileges of the owner (an “owner’s rights” stored procedure) or with the privileges of the caller (a “caller’s rights” stored procedure). If you execute the statement CREATE PROCEDURE … EXECUTE AS CALLER, then in the future the procedure will execute as a caller’s rights procedure. If you execute CREATE PROCEDURE … EXECUTE AS OWNER, then the procedure will execute as an owner’s rights procedure. For more information, see [Understanding caller’s rights and owner’s rights stored procedures](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-rights). Valid values are (case-insensitive): `CALLER` | `OWNER`.
411
+ :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 procedure’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.
412
+ :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).
413
+ :param pulumi.Input[str] handler: Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
414
+ :param pulumi.Input[Sequence[pulumi.Input['ProcedureJavaImportArgs']]] imports: The location (stage), path, and name of the file(s) to import. You must set the IMPORTS clause to include any files that your stored procedure depends on. If you are writing an in-line stored procedure, you can omit this clause, unless your code depends on classes defined outside the stored procedure or resource files. If you are writing a stored procedure with a staged handler, you must also include a path to the JAR file containing the stored procedure’s handler code. The IMPORTS definition cannot reference variables from arguments that are passed into the stored procedure. Each file in the IMPORTS clause must have a unique name, even if the files are in different subdirectories or different stages.
415
+ :param pulumi.Input[str] is_secure: Specifies that the procedure is secure. For more information about secure procedures, see [Protecting Sensitive Information with Secure UDFs and Stored Procedures](https://docs.snowflake.com/en/developer-guide/secure-udf-procedure). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
416
+ :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).
417
+ :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).
418
+ :param pulumi.Input[str] name: The name of the procedure; the identifier does not need to be unique for the schema in which the procedure is created because stored procedures are [identified and resolved by the combination of the name and argument types](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-naming-conventions.html#label-procedure-function-name-overloading). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
419
+ :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the procedure when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
420
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] packages: List of the names of packages deployed in Snowflake that should be included in the handler code’s execution environment. The Snowpark package is required for stored procedures, but is specified in the `snowpark_package` attribute. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
421
+ :param pulumi.Input[Sequence[pulumi.Input['ProcedureJavaParameterArgs']]] parameters: Outputs the result of `SHOW PARAMETERS IN PROCEDURE` for the given procedure.
422
+ :param pulumi.Input[str] procedure_definition: Defines the code executed by the stored procedure. The definition can consist of any valid code. Wrapping `$$` signs are added by the provider automatically; do not include them. The `procedure_definition` value must be Java source code. For more information, see [Java (using Snowpark)](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-java). 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.
423
+ :param pulumi.Input[str] procedure_language: Specifies language for the procedure. Used to detect external changes.
424
+ :param pulumi.Input[str] return_type: Specifies the type of the result returned by the stored procedure. For `<result_data_type>`, use the Snowflake data type that corresponds to the type of the language that you are using (see [SQL-Java Data Type Mappings](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-data-type-mapping.html#label-sql-java-data-type-mappings)). For `RETURNS TABLE ( [ col_name col_data_type [ , ... ] ] )`, if you know the Snowflake data types of the columns in the returned table, specify the column names and types. Otherwise (e.g. if you are determining the column types during run time), you can omit the column names and types (i.e. `TABLE ()`).
425
+ :param pulumi.Input[str] runtime_version: The language runtime version to use. Currently, the supported versions are: 11.
426
+ :param pulumi.Input[str] schema: The schema in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
427
+ :param pulumi.Input[Sequence[pulumi.Input['ProcedureJavaSecretArgs']]] 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.
428
+ :param pulumi.Input[Sequence[pulumi.Input['ProcedureJavaShowOutputArgs']]] show_outputs: Outputs the result of `SHOW PROCEDURE` for the given procedure.
429
+ :param pulumi.Input[str] snowpark_package: The Snowpark package is required for stored procedures, so it must always be present. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
430
+ :param pulumi.Input['ProcedureJavaTargetPathArgs'] target_path: Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
431
+ :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).
432
+ """
433
+ if arguments is not None:
434
+ pulumi.set(__self__, "arguments", arguments)
435
+ if comment is not None:
436
+ pulumi.set(__self__, "comment", comment)
437
+ if database is not None:
438
+ pulumi.set(__self__, "database", database)
439
+ if enable_console_output is not None:
440
+ pulumi.set(__self__, "enable_console_output", enable_console_output)
441
+ if execute_as is not None:
442
+ pulumi.set(__self__, "execute_as", execute_as)
443
+ if external_access_integrations is not None:
444
+ pulumi.set(__self__, "external_access_integrations", external_access_integrations)
445
+ if fully_qualified_name is not None:
446
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
447
+ if handler is not None:
448
+ pulumi.set(__self__, "handler", handler)
449
+ if imports is not None:
450
+ pulumi.set(__self__, "imports", imports)
451
+ if is_secure is not None:
452
+ pulumi.set(__self__, "is_secure", is_secure)
453
+ if log_level is not None:
454
+ pulumi.set(__self__, "log_level", log_level)
455
+ if metric_level is not None:
456
+ pulumi.set(__self__, "metric_level", metric_level)
457
+ if name is not None:
458
+ pulumi.set(__self__, "name", name)
459
+ if null_input_behavior is not None:
460
+ pulumi.set(__self__, "null_input_behavior", null_input_behavior)
461
+ if packages is not None:
462
+ pulumi.set(__self__, "packages", packages)
463
+ if parameters is not None:
464
+ pulumi.set(__self__, "parameters", parameters)
465
+ if procedure_definition is not None:
466
+ pulumi.set(__self__, "procedure_definition", procedure_definition)
467
+ if procedure_language is not None:
468
+ pulumi.set(__self__, "procedure_language", procedure_language)
469
+ if return_type is not None:
470
+ pulumi.set(__self__, "return_type", return_type)
471
+ if runtime_version is not None:
472
+ pulumi.set(__self__, "runtime_version", runtime_version)
473
+ if schema is not None:
474
+ pulumi.set(__self__, "schema", schema)
475
+ if secrets is not None:
476
+ pulumi.set(__self__, "secrets", secrets)
477
+ if show_outputs is not None:
478
+ pulumi.set(__self__, "show_outputs", show_outputs)
479
+ if snowpark_package is not None:
480
+ pulumi.set(__self__, "snowpark_package", snowpark_package)
481
+ if target_path is not None:
482
+ pulumi.set(__self__, "target_path", target_path)
483
+ if trace_level is not None:
484
+ pulumi.set(__self__, "trace_level", trace_level)
485
+
486
+ @property
487
+ @pulumi.getter
488
+ def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaArgumentArgs']]]]:
489
+ """
490
+ List of the arguments for the procedure. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-procedure#all-languages) for more details.
491
+ """
492
+ return pulumi.get(self, "arguments")
493
+
494
+ @arguments.setter
495
+ def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaArgumentArgs']]]]):
496
+ pulumi.set(self, "arguments", value)
497
+
498
+ @property
499
+ @pulumi.getter
500
+ def comment(self) -> Optional[pulumi.Input[str]]:
501
+ """
502
+ Specifies a comment for the procedure.
503
+ """
504
+ return pulumi.get(self, "comment")
505
+
506
+ @comment.setter
507
+ def comment(self, value: Optional[pulumi.Input[str]]):
508
+ pulumi.set(self, "comment", value)
509
+
510
+ @property
511
+ @pulumi.getter
512
+ def database(self) -> Optional[pulumi.Input[str]]:
513
+ """
514
+ The database in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
515
+ """
516
+ return pulumi.get(self, "database")
517
+
518
+ @database.setter
519
+ def database(self, value: Optional[pulumi.Input[str]]):
520
+ pulumi.set(self, "database", value)
521
+
522
+ @property
523
+ @pulumi.getter(name="enableConsoleOutput")
524
+ def enable_console_output(self) -> Optional[pulumi.Input[bool]]:
525
+ """
526
+ 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).
527
+ """
528
+ return pulumi.get(self, "enable_console_output")
529
+
530
+ @enable_console_output.setter
531
+ def enable_console_output(self, value: Optional[pulumi.Input[bool]]):
532
+ pulumi.set(self, "enable_console_output", value)
533
+
534
+ @property
535
+ @pulumi.getter(name="executeAs")
536
+ def execute_as(self) -> Optional[pulumi.Input[str]]:
537
+ """
538
+ Specifies whether the stored procedure executes with the privileges of the owner (an “owner’s rights” stored procedure) or with the privileges of the caller (a “caller’s rights” stored procedure). If you execute the statement CREATE PROCEDURE … EXECUTE AS CALLER, then in the future the procedure will execute as a caller’s rights procedure. If you execute CREATE PROCEDURE … EXECUTE AS OWNER, then the procedure will execute as an owner’s rights procedure. For more information, see [Understanding caller’s rights and owner’s rights stored procedures](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-rights). Valid values are (case-insensitive): `CALLER` | `OWNER`.
539
+ """
540
+ return pulumi.get(self, "execute_as")
541
+
542
+ @execute_as.setter
543
+ def execute_as(self, value: Optional[pulumi.Input[str]]):
544
+ pulumi.set(self, "execute_as", value)
545
+
546
+ @property
547
+ @pulumi.getter(name="externalAccessIntegrations")
548
+ def external_access_integrations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
549
+ """
550
+ The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this procedure’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.
551
+ """
552
+ return pulumi.get(self, "external_access_integrations")
553
+
554
+ @external_access_integrations.setter
555
+ def external_access_integrations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
556
+ pulumi.set(self, "external_access_integrations", value)
557
+
558
+ @property
559
+ @pulumi.getter(name="fullyQualifiedName")
560
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
561
+ """
562
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
563
+ """
564
+ return pulumi.get(self, "fully_qualified_name")
565
+
566
+ @fully_qualified_name.setter
567
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
568
+ pulumi.set(self, "fully_qualified_name", value)
569
+
570
+ @property
571
+ @pulumi.getter
572
+ def handler(self) -> Optional[pulumi.Input[str]]:
573
+ """
574
+ Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
575
+ """
576
+ return pulumi.get(self, "handler")
577
+
578
+ @handler.setter
579
+ def handler(self, value: Optional[pulumi.Input[str]]):
580
+ pulumi.set(self, "handler", value)
581
+
582
+ @property
583
+ @pulumi.getter
584
+ def imports(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaImportArgs']]]]:
585
+ """
586
+ The location (stage), path, and name of the file(s) to import. You must set the IMPORTS clause to include any files that your stored procedure depends on. If you are writing an in-line stored procedure, you can omit this clause, unless your code depends on classes defined outside the stored procedure or resource files. If you are writing a stored procedure with a staged handler, you must also include a path to the JAR file containing the stored procedure’s handler code. The IMPORTS definition cannot reference variables from arguments that are passed into the stored procedure. Each file in the IMPORTS clause must have a unique name, even if the files are in different subdirectories or different stages.
587
+ """
588
+ return pulumi.get(self, "imports")
589
+
590
+ @imports.setter
591
+ def imports(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaImportArgs']]]]):
592
+ pulumi.set(self, "imports", value)
593
+
594
+ @property
595
+ @pulumi.getter(name="isSecure")
596
+ def is_secure(self) -> Optional[pulumi.Input[str]]:
597
+ """
598
+ Specifies that the procedure is secure. For more information about secure procedures, see [Protecting Sensitive Information with Secure UDFs and Stored Procedures](https://docs.snowflake.com/en/developer-guide/secure-udf-procedure). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
599
+ """
600
+ return pulumi.get(self, "is_secure")
601
+
602
+ @is_secure.setter
603
+ def is_secure(self, value: Optional[pulumi.Input[str]]):
604
+ pulumi.set(self, "is_secure", value)
605
+
606
+ @property
607
+ @pulumi.getter(name="logLevel")
608
+ def log_level(self) -> Optional[pulumi.Input[str]]:
609
+ """
610
+ LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
611
+ """
612
+ return pulumi.get(self, "log_level")
613
+
614
+ @log_level.setter
615
+ def log_level(self, value: Optional[pulumi.Input[str]]):
616
+ pulumi.set(self, "log_level", value)
617
+
618
+ @property
619
+ @pulumi.getter(name="metricLevel")
620
+ def metric_level(self) -> Optional[pulumi.Input[str]]:
621
+ """
622
+ 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).
623
+ """
624
+ return pulumi.get(self, "metric_level")
625
+
626
+ @metric_level.setter
627
+ def metric_level(self, value: Optional[pulumi.Input[str]]):
628
+ pulumi.set(self, "metric_level", value)
629
+
630
+ @property
631
+ @pulumi.getter
632
+ def name(self) -> Optional[pulumi.Input[str]]:
633
+ """
634
+ The name of the procedure; the identifier does not need to be unique for the schema in which the procedure is created because stored procedures are [identified and resolved by the combination of the name and argument types](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-naming-conventions.html#label-procedure-function-name-overloading). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
635
+ """
636
+ return pulumi.get(self, "name")
637
+
638
+ @name.setter
639
+ def name(self, value: Optional[pulumi.Input[str]]):
640
+ pulumi.set(self, "name", value)
641
+
642
+ @property
643
+ @pulumi.getter(name="nullInputBehavior")
644
+ def null_input_behavior(self) -> Optional[pulumi.Input[str]]:
645
+ """
646
+ Specifies the behavior of the procedure when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
647
+ """
648
+ return pulumi.get(self, "null_input_behavior")
649
+
650
+ @null_input_behavior.setter
651
+ def null_input_behavior(self, value: Optional[pulumi.Input[str]]):
652
+ pulumi.set(self, "null_input_behavior", value)
653
+
654
+ @property
655
+ @pulumi.getter
656
+ def packages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
657
+ """
658
+ List of the names of packages deployed in Snowflake that should be included in the handler code’s execution environment. The Snowpark package is required for stored procedures, but is specified in the `snowpark_package` attribute. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
659
+ """
660
+ return pulumi.get(self, "packages")
661
+
662
+ @packages.setter
663
+ def packages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
664
+ pulumi.set(self, "packages", value)
665
+
666
+ @property
667
+ @pulumi.getter
668
+ def parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaParameterArgs']]]]:
669
+ """
670
+ Outputs the result of `SHOW PARAMETERS IN PROCEDURE` for the given procedure.
671
+ """
672
+ return pulumi.get(self, "parameters")
673
+
674
+ @parameters.setter
675
+ def parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaParameterArgs']]]]):
676
+ pulumi.set(self, "parameters", value)
677
+
678
+ @property
679
+ @pulumi.getter(name="procedureDefinition")
680
+ def procedure_definition(self) -> Optional[pulumi.Input[str]]:
681
+ """
682
+ Defines the code executed by the stored procedure. The definition can consist of any valid code. Wrapping `$$` signs are added by the provider automatically; do not include them. The `procedure_definition` value must be Java source code. For more information, see [Java (using Snowpark)](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-java). 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.
683
+ """
684
+ return pulumi.get(self, "procedure_definition")
685
+
686
+ @procedure_definition.setter
687
+ def procedure_definition(self, value: Optional[pulumi.Input[str]]):
688
+ pulumi.set(self, "procedure_definition", value)
689
+
690
+ @property
691
+ @pulumi.getter(name="procedureLanguage")
692
+ def procedure_language(self) -> Optional[pulumi.Input[str]]:
693
+ """
694
+ Specifies language for the procedure. Used to detect external changes.
695
+ """
696
+ return pulumi.get(self, "procedure_language")
697
+
698
+ @procedure_language.setter
699
+ def procedure_language(self, value: Optional[pulumi.Input[str]]):
700
+ pulumi.set(self, "procedure_language", value)
701
+
702
+ @property
703
+ @pulumi.getter(name="returnType")
704
+ def return_type(self) -> Optional[pulumi.Input[str]]:
705
+ """
706
+ Specifies the type of the result returned by the stored procedure. For `<result_data_type>`, use the Snowflake data type that corresponds to the type of the language that you are using (see [SQL-Java Data Type Mappings](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-data-type-mapping.html#label-sql-java-data-type-mappings)). For `RETURNS TABLE ( [ col_name col_data_type [ , ... ] ] )`, if you know the Snowflake data types of the columns in the returned table, specify the column names and types. Otherwise (e.g. if you are determining the column types during run time), you can omit the column names and types (i.e. `TABLE ()`).
707
+ """
708
+ return pulumi.get(self, "return_type")
709
+
710
+ @return_type.setter
711
+ def return_type(self, value: Optional[pulumi.Input[str]]):
712
+ pulumi.set(self, "return_type", value)
713
+
714
+ @property
715
+ @pulumi.getter(name="runtimeVersion")
716
+ def runtime_version(self) -> Optional[pulumi.Input[str]]:
717
+ """
718
+ The language runtime version to use. Currently, the supported versions are: 11.
719
+ """
720
+ return pulumi.get(self, "runtime_version")
721
+
722
+ @runtime_version.setter
723
+ def runtime_version(self, value: Optional[pulumi.Input[str]]):
724
+ pulumi.set(self, "runtime_version", value)
725
+
726
+ @property
727
+ @pulumi.getter
728
+ def schema(self) -> Optional[pulumi.Input[str]]:
729
+ """
730
+ The schema in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
731
+ """
732
+ return pulumi.get(self, "schema")
733
+
734
+ @schema.setter
735
+ def schema(self, value: Optional[pulumi.Input[str]]):
736
+ pulumi.set(self, "schema", value)
737
+
738
+ @property
739
+ @pulumi.getter
740
+ def secrets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaSecretArgs']]]]:
741
+ """
742
+ 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.
743
+ """
744
+ return pulumi.get(self, "secrets")
745
+
746
+ @secrets.setter
747
+ def secrets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaSecretArgs']]]]):
748
+ pulumi.set(self, "secrets", value)
749
+
750
+ @property
751
+ @pulumi.getter(name="showOutputs")
752
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaShowOutputArgs']]]]:
753
+ """
754
+ Outputs the result of `SHOW PROCEDURE` for the given procedure.
755
+ """
756
+ return pulumi.get(self, "show_outputs")
757
+
758
+ @show_outputs.setter
759
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProcedureJavaShowOutputArgs']]]]):
760
+ pulumi.set(self, "show_outputs", value)
761
+
762
+ @property
763
+ @pulumi.getter(name="snowparkPackage")
764
+ def snowpark_package(self) -> Optional[pulumi.Input[str]]:
765
+ """
766
+ The Snowpark package is required for stored procedures, so it must always be present. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
767
+ """
768
+ return pulumi.get(self, "snowpark_package")
769
+
770
+ @snowpark_package.setter
771
+ def snowpark_package(self, value: Optional[pulumi.Input[str]]):
772
+ pulumi.set(self, "snowpark_package", value)
773
+
774
+ @property
775
+ @pulumi.getter(name="targetPath")
776
+ def target_path(self) -> Optional[pulumi.Input['ProcedureJavaTargetPathArgs']]:
777
+ """
778
+ Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
779
+ """
780
+ return pulumi.get(self, "target_path")
781
+
782
+ @target_path.setter
783
+ def target_path(self, value: Optional[pulumi.Input['ProcedureJavaTargetPathArgs']]):
784
+ pulumi.set(self, "target_path", value)
785
+
786
+ @property
787
+ @pulumi.getter(name="traceLevel")
788
+ def trace_level(self) -> Optional[pulumi.Input[str]]:
789
+ """
790
+ 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).
791
+ """
792
+ return pulumi.get(self, "trace_level")
793
+
794
+ @trace_level.setter
795
+ def trace_level(self, value: Optional[pulumi.Input[str]]):
796
+ pulumi.set(self, "trace_level", value)
797
+
798
+
799
+ class ProcedureJava(pulumi.CustomResource):
800
+ @overload
801
+ def __init__(__self__,
802
+ resource_name: str,
803
+ opts: Optional[pulumi.ResourceOptions] = None,
804
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaArgumentArgs', 'ProcedureJavaArgumentArgsDict']]]]] = None,
805
+ comment: Optional[pulumi.Input[str]] = None,
806
+ database: Optional[pulumi.Input[str]] = None,
807
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
808
+ execute_as: Optional[pulumi.Input[str]] = None,
809
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
810
+ handler: Optional[pulumi.Input[str]] = None,
811
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaImportArgs', 'ProcedureJavaImportArgsDict']]]]] = None,
812
+ is_secure: Optional[pulumi.Input[str]] = None,
813
+ log_level: Optional[pulumi.Input[str]] = None,
814
+ metric_level: Optional[pulumi.Input[str]] = None,
815
+ name: Optional[pulumi.Input[str]] = None,
816
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
817
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
818
+ procedure_definition: Optional[pulumi.Input[str]] = None,
819
+ return_type: Optional[pulumi.Input[str]] = None,
820
+ runtime_version: Optional[pulumi.Input[str]] = None,
821
+ schema: Optional[pulumi.Input[str]] = None,
822
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaSecretArgs', 'ProcedureJavaSecretArgsDict']]]]] = None,
823
+ snowpark_package: Optional[pulumi.Input[str]] = None,
824
+ target_path: Optional[pulumi.Input[Union['ProcedureJavaTargetPathArgs', 'ProcedureJavaTargetPathArgsDict']]] = None,
825
+ trace_level: Optional[pulumi.Input[str]] = None,
826
+ __props__=None):
827
+ """
828
+ ## Import
829
+
830
+ ```sh
831
+ $ pulumi import snowflake:index/procedureJava:ProcedureJava example '"<database_name>"."<schema_name>"."<function_name>"(varchar, varchar, varchar)'
832
+ ```
833
+
834
+ 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).
835
+
836
+ 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.
837
+
838
+ :param str resource_name: The name of the resource.
839
+ :param pulumi.ResourceOptions opts: Options for the resource.
840
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaArgumentArgs', 'ProcedureJavaArgumentArgsDict']]]] arguments: List of the arguments for the procedure. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-procedure#all-languages) for more details.
841
+ :param pulumi.Input[str] comment: Specifies a comment for the procedure.
842
+ :param pulumi.Input[str] database: The database in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
843
+ :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).
844
+ :param pulumi.Input[str] execute_as: Specifies whether the stored procedure executes with the privileges of the owner (an “owner’s rights” stored procedure) or with the privileges of the caller (a “caller’s rights” stored procedure). If you execute the statement CREATE PROCEDURE … EXECUTE AS CALLER, then in the future the procedure will execute as a caller’s rights procedure. If you execute CREATE PROCEDURE … EXECUTE AS OWNER, then the procedure will execute as an owner’s rights procedure. For more information, see [Understanding caller’s rights and owner’s rights stored procedures](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-rights). Valid values are (case-insensitive): `CALLER` | `OWNER`.
845
+ :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 procedure’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.
846
+ :param pulumi.Input[str] handler: Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
847
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaImportArgs', 'ProcedureJavaImportArgsDict']]]] imports: The location (stage), path, and name of the file(s) to import. You must set the IMPORTS clause to include any files that your stored procedure depends on. If you are writing an in-line stored procedure, you can omit this clause, unless your code depends on classes defined outside the stored procedure or resource files. If you are writing a stored procedure with a staged handler, you must also include a path to the JAR file containing the stored procedure’s handler code. The IMPORTS definition cannot reference variables from arguments that are passed into the stored procedure. Each file in the IMPORTS clause must have a unique name, even if the files are in different subdirectories or different stages.
848
+ :param pulumi.Input[str] is_secure: Specifies that the procedure is secure. For more information about secure procedures, see [Protecting Sensitive Information with Secure UDFs and Stored Procedures](https://docs.snowflake.com/en/developer-guide/secure-udf-procedure). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
849
+ :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).
850
+ :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).
851
+ :param pulumi.Input[str] name: The name of the procedure; the identifier does not need to be unique for the schema in which the procedure is created because stored procedures are [identified and resolved by the combination of the name and argument types](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-naming-conventions.html#label-procedure-function-name-overloading). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
852
+ :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the procedure when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
853
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] packages: List of the names of packages deployed in Snowflake that should be included in the handler code’s execution environment. The Snowpark package is required for stored procedures, but is specified in the `snowpark_package` attribute. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
854
+ :param pulumi.Input[str] procedure_definition: Defines the code executed by the stored procedure. The definition can consist of any valid code. Wrapping `$$` signs are added by the provider automatically; do not include them. The `procedure_definition` value must be Java source code. For more information, see [Java (using Snowpark)](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-java). 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.
855
+ :param pulumi.Input[str] return_type: Specifies the type of the result returned by the stored procedure. For `<result_data_type>`, use the Snowflake data type that corresponds to the type of the language that you are using (see [SQL-Java Data Type Mappings](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-data-type-mapping.html#label-sql-java-data-type-mappings)). For `RETURNS TABLE ( [ col_name col_data_type [ , ... ] ] )`, if you know the Snowflake data types of the columns in the returned table, specify the column names and types. Otherwise (e.g. if you are determining the column types during run time), you can omit the column names and types (i.e. `TABLE ()`).
856
+ :param pulumi.Input[str] runtime_version: The language runtime version to use. Currently, the supported versions are: 11.
857
+ :param pulumi.Input[str] schema: The schema in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
858
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaSecretArgs', 'ProcedureJavaSecretArgsDict']]]] 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.
859
+ :param pulumi.Input[str] snowpark_package: The Snowpark package is required for stored procedures, so it must always be present. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
860
+ :param pulumi.Input[Union['ProcedureJavaTargetPathArgs', 'ProcedureJavaTargetPathArgsDict']] target_path: Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
861
+ :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).
862
+ """
863
+ ...
864
+ @overload
865
+ def __init__(__self__,
866
+ resource_name: str,
867
+ args: ProcedureJavaArgs,
868
+ opts: Optional[pulumi.ResourceOptions] = None):
869
+ """
870
+ ## Import
871
+
872
+ ```sh
873
+ $ pulumi import snowflake:index/procedureJava:ProcedureJava example '"<database_name>"."<schema_name>"."<function_name>"(varchar, varchar, varchar)'
874
+ ```
875
+
876
+ 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).
877
+
878
+ 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.
879
+
880
+ :param str resource_name: The name of the resource.
881
+ :param ProcedureJavaArgs args: The arguments to use to populate this resource's properties.
882
+ :param pulumi.ResourceOptions opts: Options for the resource.
883
+ """
884
+ ...
885
+ def __init__(__self__, resource_name: str, *args, **kwargs):
886
+ resource_args, opts = _utilities.get_resource_args_opts(ProcedureJavaArgs, pulumi.ResourceOptions, *args, **kwargs)
887
+ if resource_args is not None:
888
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
889
+ else:
890
+ __self__._internal_init(resource_name, *args, **kwargs)
891
+
892
+ def _internal_init(__self__,
893
+ resource_name: str,
894
+ opts: Optional[pulumi.ResourceOptions] = None,
895
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaArgumentArgs', 'ProcedureJavaArgumentArgsDict']]]]] = None,
896
+ comment: Optional[pulumi.Input[str]] = None,
897
+ database: Optional[pulumi.Input[str]] = None,
898
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
899
+ execute_as: Optional[pulumi.Input[str]] = None,
900
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
901
+ handler: Optional[pulumi.Input[str]] = None,
902
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaImportArgs', 'ProcedureJavaImportArgsDict']]]]] = None,
903
+ is_secure: Optional[pulumi.Input[str]] = None,
904
+ log_level: Optional[pulumi.Input[str]] = None,
905
+ metric_level: Optional[pulumi.Input[str]] = None,
906
+ name: Optional[pulumi.Input[str]] = None,
907
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
908
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
909
+ procedure_definition: Optional[pulumi.Input[str]] = None,
910
+ return_type: Optional[pulumi.Input[str]] = None,
911
+ runtime_version: Optional[pulumi.Input[str]] = None,
912
+ schema: Optional[pulumi.Input[str]] = None,
913
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaSecretArgs', 'ProcedureJavaSecretArgsDict']]]]] = None,
914
+ snowpark_package: Optional[pulumi.Input[str]] = None,
915
+ target_path: Optional[pulumi.Input[Union['ProcedureJavaTargetPathArgs', 'ProcedureJavaTargetPathArgsDict']]] = None,
916
+ trace_level: Optional[pulumi.Input[str]] = None,
917
+ __props__=None):
918
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
919
+ if not isinstance(opts, pulumi.ResourceOptions):
920
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
921
+ if opts.id is None:
922
+ if __props__ is not None:
923
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
924
+ __props__ = ProcedureJavaArgs.__new__(ProcedureJavaArgs)
925
+
926
+ __props__.__dict__["arguments"] = arguments
927
+ __props__.__dict__["comment"] = comment
928
+ if database is None and not opts.urn:
929
+ raise TypeError("Missing required property 'database'")
930
+ __props__.__dict__["database"] = database
931
+ __props__.__dict__["enable_console_output"] = enable_console_output
932
+ __props__.__dict__["execute_as"] = execute_as
933
+ __props__.__dict__["external_access_integrations"] = external_access_integrations
934
+ if handler is None and not opts.urn:
935
+ raise TypeError("Missing required property 'handler'")
936
+ __props__.__dict__["handler"] = handler
937
+ __props__.__dict__["imports"] = imports
938
+ __props__.__dict__["is_secure"] = is_secure
939
+ __props__.__dict__["log_level"] = log_level
940
+ __props__.__dict__["metric_level"] = metric_level
941
+ __props__.__dict__["name"] = name
942
+ __props__.__dict__["null_input_behavior"] = null_input_behavior
943
+ __props__.__dict__["packages"] = packages
944
+ __props__.__dict__["procedure_definition"] = procedure_definition
945
+ if return_type is None and not opts.urn:
946
+ raise TypeError("Missing required property 'return_type'")
947
+ __props__.__dict__["return_type"] = return_type
948
+ if runtime_version is None and not opts.urn:
949
+ raise TypeError("Missing required property 'runtime_version'")
950
+ __props__.__dict__["runtime_version"] = runtime_version
951
+ if schema is None and not opts.urn:
952
+ raise TypeError("Missing required property 'schema'")
953
+ __props__.__dict__["schema"] = schema
954
+ __props__.__dict__["secrets"] = secrets
955
+ if snowpark_package is None and not opts.urn:
956
+ raise TypeError("Missing required property 'snowpark_package'")
957
+ __props__.__dict__["snowpark_package"] = snowpark_package
958
+ __props__.__dict__["target_path"] = target_path
959
+ __props__.__dict__["trace_level"] = trace_level
960
+ __props__.__dict__["fully_qualified_name"] = None
961
+ __props__.__dict__["parameters"] = None
962
+ __props__.__dict__["procedure_language"] = None
963
+ __props__.__dict__["show_outputs"] = None
964
+ super(ProcedureJava, __self__).__init__(
965
+ 'snowflake:index/procedureJava:ProcedureJava',
966
+ resource_name,
967
+ __props__,
968
+ opts)
969
+
970
+ @staticmethod
971
+ def get(resource_name: str,
972
+ id: pulumi.Input[str],
973
+ opts: Optional[pulumi.ResourceOptions] = None,
974
+ arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaArgumentArgs', 'ProcedureJavaArgumentArgsDict']]]]] = None,
975
+ comment: Optional[pulumi.Input[str]] = None,
976
+ database: Optional[pulumi.Input[str]] = None,
977
+ enable_console_output: Optional[pulumi.Input[bool]] = None,
978
+ execute_as: Optional[pulumi.Input[str]] = None,
979
+ external_access_integrations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
980
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
981
+ handler: Optional[pulumi.Input[str]] = None,
982
+ imports: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaImportArgs', 'ProcedureJavaImportArgsDict']]]]] = None,
983
+ is_secure: Optional[pulumi.Input[str]] = None,
984
+ log_level: Optional[pulumi.Input[str]] = None,
985
+ metric_level: Optional[pulumi.Input[str]] = None,
986
+ name: Optional[pulumi.Input[str]] = None,
987
+ null_input_behavior: Optional[pulumi.Input[str]] = None,
988
+ packages: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
989
+ parameters: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaParameterArgs', 'ProcedureJavaParameterArgsDict']]]]] = None,
990
+ procedure_definition: Optional[pulumi.Input[str]] = None,
991
+ procedure_language: Optional[pulumi.Input[str]] = None,
992
+ return_type: Optional[pulumi.Input[str]] = None,
993
+ runtime_version: Optional[pulumi.Input[str]] = None,
994
+ schema: Optional[pulumi.Input[str]] = None,
995
+ secrets: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaSecretArgs', 'ProcedureJavaSecretArgsDict']]]]] = None,
996
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaShowOutputArgs', 'ProcedureJavaShowOutputArgsDict']]]]] = None,
997
+ snowpark_package: Optional[pulumi.Input[str]] = None,
998
+ target_path: Optional[pulumi.Input[Union['ProcedureJavaTargetPathArgs', 'ProcedureJavaTargetPathArgsDict']]] = None,
999
+ trace_level: Optional[pulumi.Input[str]] = None) -> 'ProcedureJava':
1000
+ """
1001
+ Get an existing ProcedureJava resource's state with the given name, id, and optional extra
1002
+ properties used to qualify the lookup.
1003
+
1004
+ :param str resource_name: The unique name of the resulting resource.
1005
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1006
+ :param pulumi.ResourceOptions opts: Options for the resource.
1007
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaArgumentArgs', 'ProcedureJavaArgumentArgsDict']]]] arguments: List of the arguments for the procedure. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-procedure#all-languages) for more details.
1008
+ :param pulumi.Input[str] comment: Specifies a comment for the procedure.
1009
+ :param pulumi.Input[str] database: The database in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1010
+ :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).
1011
+ :param pulumi.Input[str] execute_as: Specifies whether the stored procedure executes with the privileges of the owner (an “owner’s rights” stored procedure) or with the privileges of the caller (a “caller’s rights” stored procedure). If you execute the statement CREATE PROCEDURE … EXECUTE AS CALLER, then in the future the procedure will execute as a caller’s rights procedure. If you execute CREATE PROCEDURE … EXECUTE AS OWNER, then the procedure will execute as an owner’s rights procedure. For more information, see [Understanding caller’s rights and owner’s rights stored procedures](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-rights). Valid values are (case-insensitive): `CALLER` | `OWNER`.
1012
+ :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 procedure’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.
1013
+ :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).
1014
+ :param pulumi.Input[str] handler: Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
1015
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaImportArgs', 'ProcedureJavaImportArgsDict']]]] imports: The location (stage), path, and name of the file(s) to import. You must set the IMPORTS clause to include any files that your stored procedure depends on. If you are writing an in-line stored procedure, you can omit this clause, unless your code depends on classes defined outside the stored procedure or resource files. If you are writing a stored procedure with a staged handler, you must also include a path to the JAR file containing the stored procedure’s handler code. The IMPORTS definition cannot reference variables from arguments that are passed into the stored procedure. Each file in the IMPORTS clause must have a unique name, even if the files are in different subdirectories or different stages.
1016
+ :param pulumi.Input[str] is_secure: Specifies that the procedure is secure. For more information about secure procedures, see [Protecting Sensitive Information with Secure UDFs and Stored Procedures](https://docs.snowflake.com/en/developer-guide/secure-udf-procedure). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
1017
+ :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).
1018
+ :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).
1019
+ :param pulumi.Input[str] name: The name of the procedure; the identifier does not need to be unique for the schema in which the procedure is created because stored procedures are [identified and resolved by the combination of the name and argument types](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-naming-conventions.html#label-procedure-function-name-overloading). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1020
+ :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the procedure when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
1021
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] packages: List of the names of packages deployed in Snowflake that should be included in the handler code’s execution environment. The Snowpark package is required for stored procedures, but is specified in the `snowpark_package` attribute. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
1022
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaParameterArgs', 'ProcedureJavaParameterArgsDict']]]] parameters: Outputs the result of `SHOW PARAMETERS IN PROCEDURE` for the given procedure.
1023
+ :param pulumi.Input[str] procedure_definition: Defines the code executed by the stored procedure. The definition can consist of any valid code. Wrapping `$$` signs are added by the provider automatically; do not include them. The `procedure_definition` value must be Java source code. For more information, see [Java (using Snowpark)](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-java). 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.
1024
+ :param pulumi.Input[str] procedure_language: Specifies language for the procedure. Used to detect external changes.
1025
+ :param pulumi.Input[str] return_type: Specifies the type of the result returned by the stored procedure. For `<result_data_type>`, use the Snowflake data type that corresponds to the type of the language that you are using (see [SQL-Java Data Type Mappings](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-data-type-mapping.html#label-sql-java-data-type-mappings)). For `RETURNS TABLE ( [ col_name col_data_type [ , ... ] ] )`, if you know the Snowflake data types of the columns in the returned table, specify the column names and types. Otherwise (e.g. if you are determining the column types during run time), you can omit the column names and types (i.e. `TABLE ()`).
1026
+ :param pulumi.Input[str] runtime_version: The language runtime version to use. Currently, the supported versions are: 11.
1027
+ :param pulumi.Input[str] schema: The schema in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1028
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaSecretArgs', 'ProcedureJavaSecretArgsDict']]]] 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.
1029
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ProcedureJavaShowOutputArgs', 'ProcedureJavaShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW PROCEDURE` for the given procedure.
1030
+ :param pulumi.Input[str] snowpark_package: The Snowpark package is required for stored procedures, so it must always be present. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
1031
+ :param pulumi.Input[Union['ProcedureJavaTargetPathArgs', 'ProcedureJavaTargetPathArgsDict']] target_path: Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
1032
+ :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).
1033
+ """
1034
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1035
+
1036
+ __props__ = _ProcedureJavaState.__new__(_ProcedureJavaState)
1037
+
1038
+ __props__.__dict__["arguments"] = arguments
1039
+ __props__.__dict__["comment"] = comment
1040
+ __props__.__dict__["database"] = database
1041
+ __props__.__dict__["enable_console_output"] = enable_console_output
1042
+ __props__.__dict__["execute_as"] = execute_as
1043
+ __props__.__dict__["external_access_integrations"] = external_access_integrations
1044
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
1045
+ __props__.__dict__["handler"] = handler
1046
+ __props__.__dict__["imports"] = imports
1047
+ __props__.__dict__["is_secure"] = is_secure
1048
+ __props__.__dict__["log_level"] = log_level
1049
+ __props__.__dict__["metric_level"] = metric_level
1050
+ __props__.__dict__["name"] = name
1051
+ __props__.__dict__["null_input_behavior"] = null_input_behavior
1052
+ __props__.__dict__["packages"] = packages
1053
+ __props__.__dict__["parameters"] = parameters
1054
+ __props__.__dict__["procedure_definition"] = procedure_definition
1055
+ __props__.__dict__["procedure_language"] = procedure_language
1056
+ __props__.__dict__["return_type"] = return_type
1057
+ __props__.__dict__["runtime_version"] = runtime_version
1058
+ __props__.__dict__["schema"] = schema
1059
+ __props__.__dict__["secrets"] = secrets
1060
+ __props__.__dict__["show_outputs"] = show_outputs
1061
+ __props__.__dict__["snowpark_package"] = snowpark_package
1062
+ __props__.__dict__["target_path"] = target_path
1063
+ __props__.__dict__["trace_level"] = trace_level
1064
+ return ProcedureJava(resource_name, opts=opts, __props__=__props__)
1065
+
1066
+ @property
1067
+ @pulumi.getter
1068
+ def arguments(self) -> pulumi.Output[Optional[Sequence['outputs.ProcedureJavaArgument']]]:
1069
+ """
1070
+ List of the arguments for the procedure. Consult the [docs](https://docs.snowflake.com/en/sql-reference/sql/create-procedure#all-languages) for more details.
1071
+ """
1072
+ return pulumi.get(self, "arguments")
1073
+
1074
+ @property
1075
+ @pulumi.getter
1076
+ def comment(self) -> pulumi.Output[Optional[str]]:
1077
+ """
1078
+ Specifies a comment for the procedure.
1079
+ """
1080
+ return pulumi.get(self, "comment")
1081
+
1082
+ @property
1083
+ @pulumi.getter
1084
+ def database(self) -> pulumi.Output[str]:
1085
+ """
1086
+ The database in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1087
+ """
1088
+ return pulumi.get(self, "database")
1089
+
1090
+ @property
1091
+ @pulumi.getter(name="enableConsoleOutput")
1092
+ def enable_console_output(self) -> pulumi.Output[bool]:
1093
+ """
1094
+ 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).
1095
+ """
1096
+ return pulumi.get(self, "enable_console_output")
1097
+
1098
+ @property
1099
+ @pulumi.getter(name="executeAs")
1100
+ def execute_as(self) -> pulumi.Output[Optional[str]]:
1101
+ """
1102
+ Specifies whether the stored procedure executes with the privileges of the owner (an “owner’s rights” stored procedure) or with the privileges of the caller (a “caller’s rights” stored procedure). If you execute the statement CREATE PROCEDURE … EXECUTE AS CALLER, then in the future the procedure will execute as a caller’s rights procedure. If you execute CREATE PROCEDURE … EXECUTE AS OWNER, then the procedure will execute as an owner’s rights procedure. For more information, see [Understanding caller’s rights and owner’s rights stored procedures](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-rights). Valid values are (case-insensitive): `CALLER` | `OWNER`.
1103
+ """
1104
+ return pulumi.get(self, "execute_as")
1105
+
1106
+ @property
1107
+ @pulumi.getter(name="externalAccessIntegrations")
1108
+ def external_access_integrations(self) -> pulumi.Output[Optional[Sequence[str]]]:
1109
+ """
1110
+ The names of [external access integrations](https://docs.snowflake.com/en/sql-reference/sql/create-external-access-integration) needed in order for this procedure’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.
1111
+ """
1112
+ return pulumi.get(self, "external_access_integrations")
1113
+
1114
+ @property
1115
+ @pulumi.getter(name="fullyQualifiedName")
1116
+ def fully_qualified_name(self) -> pulumi.Output[str]:
1117
+ """
1118
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
1119
+ """
1120
+ return pulumi.get(self, "fully_qualified_name")
1121
+
1122
+ @property
1123
+ @pulumi.getter
1124
+ def handler(self) -> pulumi.Output[str]:
1125
+ """
1126
+ Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
1127
+ """
1128
+ return pulumi.get(self, "handler")
1129
+
1130
+ @property
1131
+ @pulumi.getter
1132
+ def imports(self) -> pulumi.Output[Optional[Sequence['outputs.ProcedureJavaImport']]]:
1133
+ """
1134
+ The location (stage), path, and name of the file(s) to import. You must set the IMPORTS clause to include any files that your stored procedure depends on. If you are writing an in-line stored procedure, you can omit this clause, unless your code depends on classes defined outside the stored procedure or resource files. If you are writing a stored procedure with a staged handler, you must also include a path to the JAR file containing the stored procedure’s handler code. The IMPORTS definition cannot reference variables from arguments that are passed into the stored procedure. Each file in the IMPORTS clause must have a unique name, even if the files are in different subdirectories or different stages.
1135
+ """
1136
+ return pulumi.get(self, "imports")
1137
+
1138
+ @property
1139
+ @pulumi.getter(name="isSecure")
1140
+ def is_secure(self) -> pulumi.Output[Optional[str]]:
1141
+ """
1142
+ Specifies that the procedure is secure. For more information about secure procedures, see [Protecting Sensitive Information with Secure UDFs and Stored Procedures](https://docs.snowflake.com/en/developer-guide/secure-udf-procedure). Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
1143
+ """
1144
+ return pulumi.get(self, "is_secure")
1145
+
1146
+ @property
1147
+ @pulumi.getter(name="logLevel")
1148
+ def log_level(self) -> pulumi.Output[str]:
1149
+ """
1150
+ LOG*LEVEL to use when filtering events For more information, check [LOG*LEVEL docs](https://docs.snowflake.com/en/sql-reference/parameters#log-level).
1151
+ """
1152
+ return pulumi.get(self, "log_level")
1153
+
1154
+ @property
1155
+ @pulumi.getter(name="metricLevel")
1156
+ def metric_level(self) -> pulumi.Output[str]:
1157
+ """
1158
+ 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).
1159
+ """
1160
+ return pulumi.get(self, "metric_level")
1161
+
1162
+ @property
1163
+ @pulumi.getter
1164
+ def name(self) -> pulumi.Output[str]:
1165
+ """
1166
+ The name of the procedure; the identifier does not need to be unique for the schema in which the procedure is created because stored procedures are [identified and resolved by the combination of the name and argument types](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-naming-conventions.html#label-procedure-function-name-overloading). Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1167
+ """
1168
+ return pulumi.get(self, "name")
1169
+
1170
+ @property
1171
+ @pulumi.getter(name="nullInputBehavior")
1172
+ def null_input_behavior(self) -> pulumi.Output[Optional[str]]:
1173
+ """
1174
+ Specifies the behavior of the procedure when called with null inputs. Valid values are (case-insensitive): `CALLED ON NULL INPUT` | `RETURNS NULL ON NULL INPUT`.
1175
+ """
1176
+ return pulumi.get(self, "null_input_behavior")
1177
+
1178
+ @property
1179
+ @pulumi.getter
1180
+ def packages(self) -> pulumi.Output[Optional[Sequence[str]]]:
1181
+ """
1182
+ List of the names of packages deployed in Snowflake that should be included in the handler code’s execution environment. The Snowpark package is required for stored procedures, but is specified in the `snowpark_package` attribute. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
1183
+ """
1184
+ return pulumi.get(self, "packages")
1185
+
1186
+ @property
1187
+ @pulumi.getter
1188
+ def parameters(self) -> pulumi.Output[Sequence['outputs.ProcedureJavaParameter']]:
1189
+ """
1190
+ Outputs the result of `SHOW PARAMETERS IN PROCEDURE` for the given procedure.
1191
+ """
1192
+ return pulumi.get(self, "parameters")
1193
+
1194
+ @property
1195
+ @pulumi.getter(name="procedureDefinition")
1196
+ def procedure_definition(self) -> pulumi.Output[Optional[str]]:
1197
+ """
1198
+ Defines the code executed by the stored procedure. The definition can consist of any valid code. Wrapping `$$` signs are added by the provider automatically; do not include them. The `procedure_definition` value must be Java source code. For more information, see [Java (using Snowpark)](https://docs.snowflake.com/en/developer-guide/stored-procedure/stored-procedures-java). 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.
1199
+ """
1200
+ return pulumi.get(self, "procedure_definition")
1201
+
1202
+ @property
1203
+ @pulumi.getter(name="procedureLanguage")
1204
+ def procedure_language(self) -> pulumi.Output[str]:
1205
+ """
1206
+ Specifies language for the procedure. Used to detect external changes.
1207
+ """
1208
+ return pulumi.get(self, "procedure_language")
1209
+
1210
+ @property
1211
+ @pulumi.getter(name="returnType")
1212
+ def return_type(self) -> pulumi.Output[str]:
1213
+ """
1214
+ Specifies the type of the result returned by the stored procedure. For `<result_data_type>`, use the Snowflake data type that corresponds to the type of the language that you are using (see [SQL-Java Data Type Mappings](https://docs.snowflake.com/en/developer-guide/udf-stored-procedure-data-type-mapping.html#label-sql-java-data-type-mappings)). For `RETURNS TABLE ( [ col_name col_data_type [ , ... ] ] )`, if you know the Snowflake data types of the columns in the returned table, specify the column names and types. Otherwise (e.g. if you are determining the column types during run time), you can omit the column names and types (i.e. `TABLE ()`).
1215
+ """
1216
+ return pulumi.get(self, "return_type")
1217
+
1218
+ @property
1219
+ @pulumi.getter(name="runtimeVersion")
1220
+ def runtime_version(self) -> pulumi.Output[str]:
1221
+ """
1222
+ The language runtime version to use. Currently, the supported versions are: 11.
1223
+ """
1224
+ return pulumi.get(self, "runtime_version")
1225
+
1226
+ @property
1227
+ @pulumi.getter
1228
+ def schema(self) -> pulumi.Output[str]:
1229
+ """
1230
+ The schema in which to create the procedure. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
1231
+ """
1232
+ return pulumi.get(self, "schema")
1233
+
1234
+ @property
1235
+ @pulumi.getter
1236
+ def secrets(self) -> pulumi.Output[Optional[Sequence['outputs.ProcedureJavaSecret']]]:
1237
+ """
1238
+ 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.
1239
+ """
1240
+ return pulumi.get(self, "secrets")
1241
+
1242
+ @property
1243
+ @pulumi.getter(name="showOutputs")
1244
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.ProcedureJavaShowOutput']]:
1245
+ """
1246
+ Outputs the result of `SHOW PROCEDURE` for the given procedure.
1247
+ """
1248
+ return pulumi.get(self, "show_outputs")
1249
+
1250
+ @property
1251
+ @pulumi.getter(name="snowparkPackage")
1252
+ def snowpark_package(self) -> pulumi.Output[str]:
1253
+ """
1254
+ The Snowpark package is required for stored procedures, so it must always be present. For more information about Snowpark, see [Snowpark API](https://docs.snowflake.com/en/developer-guide/snowpark/index).
1255
+ """
1256
+ return pulumi.get(self, "snowpark_package")
1257
+
1258
+ @property
1259
+ @pulumi.getter(name="targetPath")
1260
+ def target_path(self) -> pulumi.Output[Optional['outputs.ProcedureJavaTargetPath']]:
1261
+ """
1262
+ Use the fully qualified name of the method or function for the stored procedure. This is typically in the following form `com.my_company.my_package.MyClass.myMethod` where `com.my_company.my_package` corresponds to the package containing the object or class: `package com.my_company.my_package;`.
1263
+ """
1264
+ return pulumi.get(self, "target_path")
1265
+
1266
+ @property
1267
+ @pulumi.getter(name="traceLevel")
1268
+ def trace_level(self) -> pulumi.Output[str]:
1269
+ """
1270
+ 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).
1271
+ """
1272
+ return pulumi.get(self, "trace_level")
1273
+