From: mbklein Date: Wed, 3 Mar 2010 22:01:02 +0000 (+0000) Subject: Added MsgGroup handling to edi2json X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=6b18675a0d4f9effc52415a05dda7e18863bbcd6;p=working%2Frandom.git Added MsgGroup handling to edi2json git-svn-id: svn://svn.open-ils.org/ILS-Contrib/acq_edi/trunk@814 6d9bc8c9-1ec2-4278-b937-99fde70a366f --- diff --git a/lib/edi/edi2json.rb b/lib/edi/edi2json.rb index c660ab5c8..f92f5c649 100644 --- a/lib/edi/edi2json.rb +++ b/lib/edi/edi2json.rb @@ -31,6 +31,9 @@ class Collection end end end + if (result[child.name].is_a?(Array) or result[child.name].is_a?(Hash)) and result[child.name].empty? + result.delete(child.name) + end } # Segment groups last @@ -57,7 +60,11 @@ class Interchange messages = [] self.each { |message| - messages << {message.name => message.to_hash} + if message.is_a?(MsgGroup) + messages += message.to_hash + else + messages << {message.name => message.to_hash} + end } { @@ -90,6 +97,14 @@ class Message end +class MsgGroup + + def to_hash + self.collect { |msg| { msg.name => msg.to_hash } } + end + +end + class E::UNA def to_hash result = {}