class CPEE::Properties::PutPositions
Public Class Methods
set(id,opts,xml)
click to toggle source
# File lib/cpee/implementation_properties.rb, line 541 def PutPositions::set(id,opts,xml) doc = XML::Smart::string(xml) content = {} newkeys = [] doc.find("/*/*").map do |ele| val = { 'position' => ele.qname.name } val['passthrough'] = ele.attributes['passthrough'] if ele.attributes['passthrough'] content[ele.text] ||= [] content[ele.text] << val newkeys << ele.qname.name end oldkeys = CPEE::Persistence::extract_set(id,opts,'positions').to_h.keys del = oldkeys - newkeys del.each do |key| val = { 'position' => key } content['unmark'] ||= [] content['unmark'] << val end CPEE::Persistence::set_item(id,opts,'position',content) end
Public Instance Methods
response()
click to toggle source
# File lib/cpee/implementation_properties.rb, line 562 def response id = @a[0] opts = @a[1] if opts[:statemachine].readonly? id @status = 423 else begin PutPositions::set(id,opts,@p[0].value.read) rescue => e @status = 400 end end nil end