# File syndicator/syndicator.rb, line 157 def response(requestId, subscriber, subscription_id) if !subscriber.hasSubscription?(subscription_id) # Reject unknown subscription for this subscriber return error(406, requestId) end # Return requested 9XX error if subscription_id =~ /-error-/ return error(987, requestId, "This error message was requested" + " by the subscriber, presumably because it wants to" + " test error handling.") end # Create payload payload = Rice::ResponsePayload.new(@domain, @party, requestId) # Add package to payload id = Rice::PackageIdentifier.new() package = NQXML::Tag.new('ice-package', { 'new-state' => 'ICE_ANY', 'old-state' => 'ICE_ANY', 'package-id' => id.to_s }) packageNode = payload.responseNode.addChild(package) # Create proper item(s) and add to package if generateItems(subscription_id, packageNode) == UNKNOWN_SUBSCRIPTION # FIX return error(406, requestId, "I don't know how to generate data for subscription" + " ID #{subscription_id}") end # Create and return XML string return payload.to_xml end