class AdobeMediaEncoder::API::Client

Attributes

http[RW]

Public Class Methods

new(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 175
def initialize(args = { })
  initialize_logger(args)
  @http = HTTPClient.new(args)
end

Public Instance Methods

initialize_logger(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 180
def initialize_logger(args = { })
  @logger = args[:logger] ||= Logger.new(args[:log_to] || STDOUT)
  log_level = args[:log_level]
  if log_level
    @logger.level = log_level
    args[:logger] = @logger
  end
  @logger
end
job_abort(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 212
def job_abort(args = { })
  args = normalize_args(args, :symbolize_keys => true, :downcase_keys => true)
  job_id = args[:id] || args[:job_id] || args[:jobid]
  http.delete("job#{job_id ? "?jobID=#{job_id}" : ''}")
end
job_history(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 218
def job_history(args = { })
  args = normalize_args(args, :symbolize_keys => true, :downcase_keys => true)
  max_completed_jobs = args[:jobs] || args[:maxcompletedjobs]
  http.get("history#{max_completed_jobs ? "?maxCompletedJobs=#{max_completed_jobs}" : ''}")
end
job_status(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 224
def job_status(args = { })
  http.get('job')
end
job_submit(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 228
def job_submit(args = { })
  args = normalize_args(args, :symbolize_keys => false, :camelize_keys => true)
  xml = XMLHelper.create_manifest(args)
  http.post('job', xml)
end
normalize_args(args = { }, options = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 190
def normalize_args(args = { }, options = { })
  case args
    when Array
      [*args].map { |a| normalize_args(a, options) } if normalize_args.is_a?(Array)
    when Hash
      symbolize_keys = options.fetch(:symbolize_keys, true)
      camelize_keys = options.fetch(:camelize_keys, false)
      uncapitalize_keys = options.fetch(:uncapitalize_keys, false)
      downcase_keys = options.fetch(:downcase_keys, false)
      Hash[args.map do |k, v|
             _k = k.dup rescue k
             _k = _k.to_s.camel_case if camelize_keys rescue _k
             _k = _k.to_s.uncapitalize if uncapitalize_keys rescue _k
             _k = _k.to_s.downcase if downcase_keys rescue _k
             _k = symbolize_keys ? _k.to_sym : _k.to_s rescue _k
             [_k, v ]
           end]
    else
      args
  end
end
server_kill(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 234
def server_kill(args = { })
  http.delete('server')
end
server_restart(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 238
def server_restart(args = { })
  http.post('server')
end
server_status(args = { }) click to toggle source
# File lib/adobe_media_encoder/api/client.rb, line 242
def server_status(args = { })
  http.get('server')
end