def create_receiver(context, opts = {})
if context.is_a?(::String)
context = Qpid::Proton::URL.new(context)
end
source = opts[:source]
if context.is_a?(Qpid::Proton::URL) && source.nil?
source = context.path
end
session = self._session(context)
receiver = session.receiver(opts[:name] ||
id(session.connection.container,
source, opts[:target]))
receiver.source.address = source if source
receiver.source.dynamic = true if opts.has_key?(:dynamic) && opts[:dynamic]
receiver.target.address = opts[:target] if !opts[:target].nil?
receiver.handler = opts[:handler] if !opts[:handler].nil?
self._apply_link_options(opts[:options], receiver)
receiver.open
return receiver
end