==(x)
click to toggle source
def == x
x.class == self.class and x._ref == @ref
end
[](k)
click to toggle source
def [] k
_get_property k
end
_call(method, o={})
click to toggle source
def _call method, o={}
fail "parameters must be passed as a hash" unless o.is_a? Hash
desc = self.class.full_methods_desc[method.to_s] or fail "unknown method"
@connection.call method, desc, self, o
end
_connection()
click to toggle source
def _connection
@connection
end
_get_property(sym)
click to toggle source
def _get_property sym
ret = @connection.propertyCollector.RetrieveProperties(:specSet => [{
:propSet => [{ :type => self.class.wsdl_name, :pathSet => [sym.to_s] }],
:objectSet => [{ :obj => self }],
}])[0]
if ret.propSet.empty?
fail if ret.missingSet.empty?
raise ret.missingSet[0].fault
else
ret.propSet[0].val
end
end
_ref()
click to toggle source
_set_property(sym, val)
click to toggle source
def _set_property sym, val
fail 'unimplemented'
end
eql?(x)
click to toggle source
hash()
click to toggle source
def hash
[self.class, @ref].hash
end
pretty_print(pp)
click to toggle source
def pretty_print pp
pp.text to_s
end
to_s()
click to toggle source
def to_s
"#{self.class.wsdl_name}(#{@ref.inspect})"
end