class Bitmovin::Encoding::Encodings::Muxings::Drms::DrmMuxingResource
Attributes
created_at[RW]
description[RW]
encoding_id[RW]
id[RW]
modified_at[RW]
muxing_id[RW]
name[RW]
outputs[RW]
Public Class Methods
new(encoding_id, muxing_id, hash = {})
click to toggle source
Calls superclass method
Bitmovin::Resource::new
# File lib/bitmovin/encoding/encodings/muxings/drms/drm_muxing_resource.rb, line 8 def initialize(encoding_id, muxing_id, hash = {}) hsh = ActiveSupport::HashWithIndifferentAccess.new(underscore_hash(hash)) @encoding_id = encoding_id @muxing_id = muxing_id muxing_type = self.class.name.demodulize.gsub(/(.*)Muxing.*/, '\1').downcase encryption_type = self.class.name.demodulize.gsub(/.*Muxing(.*)Encryption/, '\1').downcase init_instance(File.join("/v1/encoding/encodings/", encoding_id, "muxings", muxing_type, muxing_id, "drm", encryption_type)) super(hsh) @outputs = (hsh[:outputs] || []).map do |output| Bitmovin::Encoding::StreamOutput.new(output) end end
Public Instance Methods
build_output(opts = {})
click to toggle source
# File lib/bitmovin/encoding/encodings/muxings/drms/drm_muxing_resource.rb, line 21 def build_output(opts = {}) output = Bitmovin::Encoding::StreamOutput.new(opts) @outputs << output output end
Private Instance Methods
collect_attributes()
click to toggle source
# File lib/bitmovin/encoding/encodings/muxings/drms/drm_muxing_resource.rb, line 29 def collect_attributes val = Hash.new ignored_variables = [] if (self.respond_to?(:ignore_fields)) ignored_variables = self.ignore_fields end instance_variables.each do |name| if ignored_variables.include?(name) next end if name == :@outputs val["outputs"] = @outputs.map { |o| o.send(:collect_attributes) } next end if name == :@streams val["streams"] = @streams.map { |s| { "streamId" => s } } next end json_name = ActiveSupport::Inflector.camelize(name.to_s.gsub(/@/, ''), false) val[json_name] = instance_variable_get(name) end val end