Class: Google::Apis::BigqueryV2::Routine

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/bigquery_v2/classes.rb,
lib/google/apis/bigquery_v2/representations.rb,
lib/google/apis/bigquery_v2/representations.rb

Overview

A user-defined function or a stored procedure.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Routine

Returns a new instance of Routine.



9201
9202
9203
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9201

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#argumentsArray<Google::Apis::BigqueryV2::Argument>

Optional. Corresponds to the JSON property arguments



9066
9067
9068
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9066

def arguments
  @arguments
end

#build_statusGoogle::Apis::BigqueryV2::RoutineBuildStatus

The status of a routine build. Corresponds to the JSON property buildStatus



9071
9072
9073
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9071

def build_status
  @build_status
end

#creation_timeFixnum

Output only. The time when this routine was created, in milliseconds since the epoch. Corresponds to the JSON property creationTime

Returns:

  • (Fixnum)


9077
9078
9079
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9077

def creation_time
  @creation_time
end

#data_governance_typeString

Optional. If set to DATA_MASKING, the function is validated and made available as a masking function. For more information, see Create custom masking routines. Corresponds to the JSON property dataGovernanceType

Returns:

  • (String)


9085
9086
9087
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9085

def data_governance_type
  @data_governance_type
end

#definition_bodyString

Required. The body of the routine. For functions, this is the expression in the AS clause. If language = "SQL", it is the substring inside (but excluding) the parentheses. For example, for the function created with the following statement: CREATE FUNCTION JoinLines(x string, y string) as (concat( x, "\n", y)) The definition_body is concat(x, "\n", y) (\n is not replaced with linebreak). If language="JAVASCRIPT", it is the evaluated string in the AS clause. For example, for the function created with the following statement: CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return "\n";\n' The definition_body is return "\n";\n Note that both \n are replaced with linebreaks. If definition_body references another routine, then that routine must be fully qualified with its project ID. Corresponds to the JSON property definitionBody

Returns:

  • (String)


9100
9101
9102
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9100

def definition_body
  @definition_body
end

#descriptionString

Optional. The description of the routine, if defined. Corresponds to the JSON property description

Returns:

  • (String)


9105
9106
9107
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9105

def description
  @description
end

#determinism_levelString

Optional. The determinism level of the JavaScript UDF, if defined. Corresponds to the JSON property determinismLevel

Returns:

  • (String)


9110
9111
9112
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9110

def determinism_level
  @determinism_level
end

#etagString

Output only. A hash of this resource. Corresponds to the JSON property etag

Returns:

  • (String)


9115
9116
9117
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9115

def etag
  @etag
end

#external_runtime_optionsGoogle::Apis::BigqueryV2::ExternalRuntimeOptions

Options for the runtime of the external system. Corresponds to the JSON property externalRuntimeOptions



9120
9121
9122
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9120

def external_runtime_options
  @external_runtime_options
end

#imported_librariesArray<String>

Optional. If language = "JAVASCRIPT", this field stores the path of the imported JAVASCRIPT libraries. Corresponds to the JSON property importedLibraries

Returns:

  • (Array<String>)


9126
9127
9128
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9126

def imported_libraries
  @imported_libraries
end

#languageString

Optional. Defaults to "SQL" if remote_function_options field is absent, not set otherwise. Corresponds to the JSON property language

Returns:

  • (String)


9132
9133
9134
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9132

def language
  @language
end

#last_modified_timeFixnum

Output only. The time when this routine was last modified, in milliseconds since the epoch. Corresponds to the JSON property lastModifiedTime

Returns:

  • (Fixnum)


9138
9139
9140
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9138

def last_modified_time
  @last_modified_time
end

#python_optionsGoogle::Apis::BigqueryV2::PythonOptions

Options for a user-defined Python function. Corresponds to the JSON property pythonOptions



9143
9144
9145
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9143

def python_options
  @python_options
end

#remote_function_optionsGoogle::Apis::BigqueryV2::RemoteFunctionOptions

Options for a remote user-defined function. Corresponds to the JSON property remoteFunctionOptions



9148
9149
9150
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9148

def remote_function_options
  @remote_function_options
end

#return_table_typeGoogle::Apis::BigqueryV2::StandardSqlTableType

A table type Corresponds to the JSON property returnTableType



9153
9154
9155
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9153

def return_table_type
  @return_table_type
end

#return_typeGoogle::Apis::BigqueryV2::StandardSqlDataType

The data type of a variable such as a function argument. Examples include: * INT64: "typeKind": "INT64" * ARRAY: "typeKind": "ARRAY", " arrayElementType":"typeKind": "STRING" * STRUCT>: "typeKind": "STRUCT", "structType": "fields": [ "name": "x", "type":"typeKind": "STRING", "name": "y", "type": "typeKind": "ARRAY", "arrayElementType": "typeKind": " DATE" ] * RANGE: "typeKind": "RANGE", "rangeElementType":" typeKind": "DATE" Corresponds to the JSON property returnType



9164
9165
9166
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9164

def return_type
  @return_type
end

#routine_referenceGoogle::Apis::BigqueryV2::RoutineReference

Id path of a routine. Corresponds to the JSON property routineReference



9169
9170
9171
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9169

def routine_reference
  @routine_reference
end

#routine_typeString

Required. The type of routine. Corresponds to the JSON property routineType

Returns:

  • (String)


9174
9175
9176
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9174

def routine_type
  @routine_type
end

#security_modeString

Optional. The security mode of the routine, if defined. If not defined, the security mode is automatically determined from the routine's configuration. Corresponds to the JSON property securityMode

Returns:

  • (String)


9180
9181
9182
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9180

def security_mode
  @security_mode
end

#spark_optionsGoogle::Apis::BigqueryV2::SparkOptions

Options for a user-defined Spark routine. Corresponds to the JSON property sparkOptions



9185
9186
9187
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9185

def spark_options
  @spark_options
end

#strict_modeBoolean Also known as: strict_mode?

Optional. Use this option to catch many common errors. Error checking is not exhaustive, and successfully creating a procedure doesn't guarantee that the procedure will successfully execute at runtime. If strictMode is set to TRUE, the procedure body is further checked for errors such as non-existent tables or columns. The CREATE PROCEDURE statement fails if the body fails any of these checks. If strictMode is set to FALSE, the procedure body is checked only for syntax. For procedures that invoke themselves recursively, specify strictMode=FALSE to avoid non-existent procedure errors during validation. Default value is TRUE. Corresponds to the JSON property strictMode

Returns:

  • (Boolean)


9198
9199
9200
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9198

def strict_mode
  @strict_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
# File 'lib/google/apis/bigquery_v2/classes.rb', line 9206

def update!(**args)
  @arguments = args[:arguments] if args.key?(:arguments)
  @build_status = args[:build_status] if args.key?(:build_status)
  @creation_time = args[:creation_time] if args.key?(:creation_time)
  @data_governance_type = args[:data_governance_type] if args.key?(:data_governance_type)
  @definition_body = args[:definition_body] if args.key?(:definition_body)
  @description = args[:description] if args.key?(:description)
  @determinism_level = args[:determinism_level] if args.key?(:determinism_level)
  @etag = args[:etag] if args.key?(:etag)
  @external_runtime_options = args[:external_runtime_options] if args.key?(:external_runtime_options)
  @imported_libraries = args[:imported_libraries] if args.key?(:imported_libraries)
  @language = args[:language] if args.key?(:language)
  @last_modified_time = args[:last_modified_time] if args.key?(:last_modified_time)
  @python_options = args[:python_options] if args.key?(:python_options)
  @remote_function_options = args[:remote_function_options] if args.key?(:remote_function_options)
  @return_table_type = args[:return_table_type] if args.key?(:return_table_type)
  @return_type = args[:return_type] if args.key?(:return_type)
  @routine_reference = args[:routine_reference] if args.key?(:routine_reference)
  @routine_type = args[:routine_type] if args.key?(:routine_type)
  @security_mode = args[:security_mode] if args.key?(:security_mode)
  @spark_options = args[:spark_options] if args.key?(:spark_options)
  @strict_mode = args[:strict_mode] if args.key?(:strict_mode)
end