class CPEE::Properties::Get
Public Instance Methods
response()
click to toggle source
# File lib/cpee/implementation_properties.rb, line 103 def response id = @a[0] opts = @a[1] doc = XML::Smart::open_unprotected(opts[:properties_empty]) doc.register_namespace 'p', 'http://cpee.org/ns/properties/2.0' doc.find('/p:properties/p:state').first.text = CPEE::Persistence::extract_item(id,opts,'state') doc.find('/p:properties/p:state/@changed').first.value = CPEE::Persistence::extract_item(id,opts,'state/@changed') doc.find('/p:properties/p:status/p:id').first.text = CPEE::Persistence::extract_item(id,opts,'status/id') doc.find('/p:properties/p:status/p:message').first.text = CPEE::Persistence::extract_item(id,opts,'status/message') %w{dataelements endpoints attributes}.each do |item| des = doc.find("/p:properties/p:#{item}").first CPEE::Persistence::extract_list(id,opts,item).each{ |de| des.add(*de) } end des = doc.find("/p:properties/p:positions").first CPEE::Persistence::extract_set(id,opts,'positions').each do |de| node = des.add(*de) if pt = CPEE::Persistence::extract_item(id,opts,File.join('positions',de[0],'@passthrough')) node.attributes['passthrough'] = pt end end doc.find('/p:properties/p:dsl').first.text = CPEE::Persistence::extract_item(id,opts,'dsl') if val = CPEE::Persistence::extract_item(id,opts,'dslx') #{{{ doc.find('/p:properties/p:dslx').first.add XML::Smart::string(val).root rescue nil end #}}} if val = CPEE::Persistence::extract_item(id,opts,'description') #{{{ doc.find('/p:properties/p:description').first.add XML::Smart::string(val).root rescue nil end #}}} doc.find('/p:properties/p:transformation/p:description').first.text = CPEE::Persistence::extract_item(id,opts,'transformation/description') doc.find('/p:properties/p:transformation/p:dataelements').first.text = CPEE::Persistence::extract_item(id,opts,'transformation/dataelements') doc.find('/p:properties/p:transformation/p:endpoints').first.text = CPEE::Persistence::extract_item(id,opts,'transformation/endpoints') doc.find('/p:properties/p:transformation/p:description/@type').first.text = CPEE::Persistence::extract_item(id,opts,'transformation/description/@type') doc.find('/p:properties/p:transformation/p:dataelements/@type').first.text = CPEE::Persistence::extract_item(id,opts,'transformation/dataelements/@type') doc.find('/p:properties/p:transformation/p:endpoints/@type').first.text = CPEE::Persistence::extract_item(id,opts,'transformation/endpoints/@type') Riddl::Parameter::Complex.new('properties','application/xml',doc.to_s) end