Class: Gcloud::Bigquery::CopyJob
- Defined in:
- lib/gcloud/bigquery/copy_job.rb
Overview
# CopyJob
A Job subclass representing a copy operation that may be performed on a Table. A CopyJob instance is created when you call Table#copy.
Instance Attribute Summary
Attributes inherited from Job
Instance Method Summary collapse
-
#create_if_needed? ⇒ Boolean
Checks if the create disposition for the job is ‘CREATE_IF_NEEDED`, which provides the following behavior: If the table does not exist, the copy operation creates the table.
-
#create_never? ⇒ Boolean
Checks if the create disposition for the job is ‘CREATE_NEVER`, which provides the following behavior: The table must already exist; if it does not, an error is returned in the job result.
-
#destination ⇒ Object
The table to which data is copied.
-
#source ⇒ Object
The table from which data is copied.
-
#write_append? ⇒ Boolean
Checks if the write disposition for the job is ‘WRITE_APPEND`, which provides the following behavior: If the table already exists, the copy operation appends the data to the table.
-
#write_empty? ⇒ Boolean
Checks if the write disposition for the job is ‘WRITE_EMPTY`, which provides the following behavior: If the table already exists and contains data, the job will have an error.
-
#write_truncate? ⇒ Boolean
Checks if the write disposition for the job is ‘WRITE_TRUNCATE`, which provides the following behavior: If the table already exists, the copy operation overwrites the table data.
Methods inherited from Job
#configuration, #created_at, #done?, #ended_at, #error, #errors, #failed?, from_gapi, #initialize, #job_id, #pending?, #project_id, #reload!, #rerun!, #running?, #started_at, #state, #statistics, #status, #wait_until_done!
Constructor Details
This class inherits a constructor from Gcloud::Bigquery::Job
Instance Method Details
#create_if_needed? ⇒ Boolean
Checks if the create disposition for the job is ‘CREATE_IF_NEEDED`, which provides the following behavior: If the table does not exist, the copy operation creates the table. This is the default.
55 56 57 58 |
# File 'lib/gcloud/bigquery/copy_job.rb', line 55 def create_if_needed? disp = config["copy"]["createDisposition"] disp == "CREATE_IF_NEEDED" end |
#create_never? ⇒ Boolean
Checks if the create disposition for the job is ‘CREATE_NEVER`, which provides the following behavior: The table must already exist; if it does not, an error is returned in the job result.
64 65 66 67 |
# File 'lib/gcloud/bigquery/copy_job.rb', line 64 def create_never? disp = config["copy"]["createDisposition"] disp == "CREATE_NEVER" end |
#destination ⇒ Object
The table to which data is copied. Returns a Table instance.
43 44 45 46 47 48 49 |
# File 'lib/gcloud/bigquery/copy_job.rb', line 43 def destination table = config["copy"]["destinationTable"] return nil unless table retrieve_table table["projectId"], table["datasetId"], table["tableId"] end |
#source ⇒ Object
The table from which data is copied. This is the table on which Table#copy was called. Returns a Table instance.
33 34 35 36 37 38 39 |
# File 'lib/gcloud/bigquery/copy_job.rb', line 33 def source table = config["copy"]["sourceTable"] return nil unless table retrieve_table table["projectId"], table["datasetId"], table["tableId"] end |
#write_append? ⇒ Boolean
Checks if the write disposition for the job is ‘WRITE_APPEND`, which provides the following behavior: If the table already exists, the copy operation appends the data to the table.
82 83 84 85 |
# File 'lib/gcloud/bigquery/copy_job.rb', line 82 def write_append? disp = config["copy"]["writeDisposition"] disp == "WRITE_APPEND" end |
#write_empty? ⇒ Boolean
Checks if the write disposition for the job is ‘WRITE_EMPTY`, which provides the following behavior: If the table already exists and contains data, the job will have an error. This is the default.
91 92 93 94 |
# File 'lib/gcloud/bigquery/copy_job.rb', line 91 def write_empty? disp = config["copy"]["writeDisposition"] disp == "WRITE_EMPTY" end |
#write_truncate? ⇒ Boolean
Checks if the write disposition for the job is ‘WRITE_TRUNCATE`, which provides the following behavior: If the table already exists, the copy operation overwrites the table data.
73 74 75 76 |
# File 'lib/gcloud/bigquery/copy_job.rb', line 73 def write_truncate? disp = config["copy"]["writeDisposition"] disp == "WRITE_TRUNCATE" end |