class NeverBounce::CLI::Script::JobsCreate
Attributes
auto_parse[W]
auto_start[W]
filename[W]
input[W]
input_location[W]
now[W]
remote_input[W]
run_sample[W]
supplied_input[W]
supplied_input_array[W]
supplied_input_parser[W]
Public Instance Methods
auto_parse()
click to toggle source
@return [true] @return [false] @return [nil]
# File lib/never_bounce/cli/script/jobs_create.rb, line 22 def auto_parse igetset(:auto_parse) do if env.has_key?(k = "AUTO_PARSE") env_truthy?(k) end end end
auto_start()
click to toggle source
@return [true] @return [false] @return [nil]
# File lib/never_bounce/cli/script/jobs_create.rb, line 33 def auto_start igetset(:auto_start) do if env.has_key?(k = "AUTO_START") env_truthy?(k) end end end
filename()
click to toggle source
# File lib/never_bounce/cli/script/jobs_create.rb, line 41 def filename igetset(:filename) { env["FILENAME"] || now.strftime("%Y%m%d-%H%M%S.csv") } end
input()
click to toggle source
@return [String] An URL if remote input. @return [Array] An array of e-mails if supplied input.
# File lib/never_bounce/cli/script/jobs_create.rb, line 47 def input input_location # Touch for sanity/completeness checks etc. remote_input || supplied_input_array end
input_location()
click to toggle source
@return [String] "remote_url"
or "supplied"
# File lib/never_bounce/cli/script/jobs_create.rb, line 53 def input_location @input_location ||= begin # Sanity check. raise UsageError, "`REMOTE_INPUT` and `SUPPLIED_INPUT` can't both be given" if remote_input? && supplied_input? if remote_input? "remote_url" elsif supplied_input? "supplied" else raise UsageError, "Input not given, use `REMOTE_INPUT=` or `SUPPLIED_INPUT=`" end end end
manifest()
click to toggle source
@!attribute manifest @return [Manifest]
# File lib/never_bounce/cli/script/jobs_create.rb, line 126 def manifest @manifest ||= Manifest.new( name: "nb-jobs-create", function: "Create a job", cmdline: "[options] [VAR1=value] [VAR2=value] ...", ) end
now()
click to toggle source
# File lib/never_bounce/cli/script/jobs_create.rb, line 68 def now @now ||= Time.now end
remote_input()
click to toggle source
# File lib/never_bounce/cli/script/jobs_create.rb, line 72 def remote_input igetset(:remote_input) { env["REMOTE_INPUT"] } end
remote_input?()
click to toggle source
# File lib/never_bounce/cli/script/jobs_create.rb, line 76 def remote_input? !!remote_input end
request()
click to toggle source
An API::Request::JobsCreate
. @!attribute request @return [Object]
# File lib/never_bounce/cli/script/jobs_create.rb, line 110 def request @request ||= API::Request::JobsCreate.new({ api_key: api_key, auto_parse: auto_parse, auto_start: auto_start, filename: filename, input: input, input_location: input_location, run_sample: run_sample, }) end
run_sample()
click to toggle source
@return [true] @return [false] @return [nil]
# File lib/never_bounce/cli/script/jobs_create.rb, line 83 def run_sample igetset(:run_sample) do if env.has_key?(k = "RUN_SAMPLE") env_truthy?(k) end end end
slim_main()
click to toggle source
@return [Integer]
# File lib/never_bounce/cli/script/jobs_create.rb, line 137 def slim_main "Response".tap do |label| headings = [ ["JobId", :job_id], ["ExecTime", :execution_time, :right], ] table = Table.new( headings: headings.map { |ar| ar[0] }, rows: [headings.map { |ar| get_table_value(response, ar) }], ).align!(headings) stdout.puts "\n#{label}:" stdout.puts table end 0 end
supplied_input()
click to toggle source
# File lib/never_bounce/cli/script/jobs_create.rb, line 91 def supplied_input igetset(:supplied_input) { env["SUPPLIED_INPUT"] } end
supplied_input?()
click to toggle source
# File lib/never_bounce/cli/script/jobs_create.rb, line 95 def supplied_input? !!supplied_input end
supplied_input_array()
click to toggle source
# File lib/never_bounce/cli/script/jobs_create.rb, line 99 def supplied_input_array @supplied_input_array ||= require_attr(:supplied_input_parser)[require_attr(:supplied_input)] end
supplied_input_parser()
click to toggle source
# File lib/never_bounce/cli/script/jobs_create.rb, line 103 def supplied_input_parser @supplied_input_parser ||= SuppliedInputParser.new end