# subscribe.rb # generate listing 9 of http://www.ibm.com/developerworks/webservices/library/ws-CIM/index.html require 'test/unit' require 'rexml/document' require File.join(File.dirname(__FILE__),'_loadpath') require 'openwsman' require 'auth-callback' require '_client' class WsmanTest < Test::Unit::TestCase def test_client Openwsman.debug = -1 client = Client.open assert client client.transport.timeout = 5 puts "Connected as #{client.user}:#{client.password}" options = Openwsman::ClientOptions.new assert options options.set_dump_request # dump XML request options.add_selector( Openwsman::CIM_NAMESPACE_SELECTOR, "root/interop" ) # subscription expires after 120 seconds options.sub_expiry = 120 # Default would be 'Push' options.delivery_mode = Openwsman::WSMAN_DELIVERY_PULL options.delivery_uri = "http://127.0.0.1:80/eventsink" uri = Openwsman::CIM_ALL_AVAILABLE_CLASSES filter = Openwsman::Filter.new filter.wql("SELECT * FROM CIM_ProcessIndication") result = client.subscribe( options, filter, uri ) # assert result end end