dynarex 1.5.15 → 1.5.16
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/lib/dynarex.rb +14 -22
- metadata +1 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 83aa5387c01f6875e9fcd0a870cf6e287a9e6a14
|
4
|
+
data.tar.gz: ce3cd13b74385b8a678125a532d375a143b30f90
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 85a0837a4109ae4455541c075d835a653fed933e0591290b380e977a00b5b6dd8a3160defb3efdd05292431e5a51fd54c8ba8bfd49184f97853dc0b76c0497a4
|
7
|
+
data.tar.gz: 0e5b784a2e0e4873af2b4fefccbea07e8b5c81a9d42220b2747a2fe3f9def745926018f98077d99d08c4b73ebc323b881fcef33cd659b0b9293119c2dfab852a
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/lib/dynarex.rb
CHANGED
@@ -473,17 +473,13 @@ EOF
|
|
473
473
|
end # end of if @records
|
474
474
|
end
|
475
475
|
|
476
|
-
#@log.debug('dynarex: a = ' + a.inspect)
|
477
476
|
doc = Rexle.new(a)
|
478
477
|
|
479
|
-
#@log.debug('dynarex: doc.inspect : ' + doc.inspect)
|
480
|
-
#@log.debug('dynarex: doc ' + doc.xml[0..149].inspect)
|
481
478
|
if @xslt then
|
482
479
|
doc.instructions = [['xml-stylesheet',
|
483
480
|
"title='XSL_formatting' type='text/xsl' href='#{@xslt}'"]]
|
484
481
|
end
|
485
482
|
|
486
|
-
#log.debug('dynarex: state: ' + state.inspect)
|
487
483
|
return doc if state != :internal
|
488
484
|
@doc = doc
|
489
485
|
end
|
@@ -663,7 +659,7 @@ EOF
|
|
663
659
|
alias refresh_doc display_xml
|
664
660
|
|
665
661
|
def string_parse(buffer)
|
666
|
-
|
662
|
+
|
667
663
|
buffer.gsub!("\r",'')
|
668
664
|
buffer.gsub!(/\n-{4,}\n/,"\n\n")
|
669
665
|
buffer.gsub!(/---\n/m, "--- ")
|
@@ -672,37 +668,31 @@ EOF
|
|
672
668
|
buffer.gsub!(/<./) {|x| x[1] != '?' ? x.sub(/</,'<') : x }
|
673
669
|
|
674
670
|
@raw_header = buffer[/<\?dynarex[^>]+>/]
|
675
|
-
#log = Logger.new('/home/james/mm.log')
|
676
|
-
#log.debug('dynarex: before if buffer()')
|
677
|
-
#@log.debug 'before buffer match'
|
678
671
|
|
679
672
|
if buffer[/<\?/] then
|
680
|
-
|
673
|
+
|
681
674
|
raw_stylesheet = buffer.slice!(/<\?xml-stylesheet[^>]+>/)
|
682
675
|
@xslt = raw_stylesheet[/href=["']([^"']+)/,1] if raw_stylesheet
|
683
676
|
@raw_header = buffer.slice!(/<\?dynarex[^>]+>/) + "\n"
|
684
677
|
|
685
|
-
#@log.debug 'before header'
|
686
678
|
header = @raw_header[/<?dynarex (.*)?>/,1]
|
687
679
|
|
688
680
|
r1 = /([\w\-]+\s*\=\s*'[^']*)'/
|
689
681
|
r2 = /([\w\-]+\s*\=\s*"[^"]*)"/
|
690
682
|
|
691
683
|
r = header.scan(/#{r1}|#{r2}/).map(&:compact).flatten
|
692
|
-
|
684
|
+
|
693
685
|
r.each do |x|
|
694
686
|
|
695
687
|
attr, val = x.split(/\s*=\s*["']/,2)
|
696
|
-
#@log.debug('dynarex: attr' + attr.inspect)
|
697
688
|
self.method((attr + '=').to_sym).call(unescape val)
|
698
689
|
end
|
699
690
|
|
700
691
|
end
|
701
|
-
|
702
|
-
#@log.debug('dynarex: before root()')
|
692
|
+
|
703
693
|
# if records already exist find the max id
|
704
694
|
i = @doc.root.xpath('max(records/*/attribute::id)').to_i
|
705
|
-
|
695
|
+
|
706
696
|
raw_summary = schema[/\[([^\]]+)/,1]
|
707
697
|
|
708
698
|
raw_lines = buffer.lines.to_a
|
@@ -865,8 +855,11 @@ EOF
|
|
865
855
|
s.gsub('<', '<').gsub('>','>')
|
866
856
|
end
|
867
857
|
|
868
|
-
def dynarex_new(s)
|
858
|
+
def dynarex_new(s, default_key: nil)
|
859
|
+
|
869
860
|
@schema = s
|
861
|
+
@default_key = default_key if default_key
|
862
|
+
|
870
863
|
ptrn = %r((\w+)\[?([^\]]+)?\]?\/(\w+)\(([^\)]+)\))
|
871
864
|
#@log.debug 'inside dynarex_new'
|
872
865
|
if s.match(ptrn) then
|
@@ -901,13 +894,13 @@ EOF
|
|
901
894
|
end
|
902
895
|
|
903
896
|
def openx(s)
|
904
|
-
|
897
|
+
|
905
898
|
if s[/</] then # xml
|
906
899
|
|
907
900
|
buffer = s
|
908
901
|
|
909
902
|
elsif s[/[\[\(]/] # schema
|
910
|
-
|
903
|
+
|
911
904
|
dynarex_new(s)
|
912
905
|
|
913
906
|
elsif s[/^https?:\/\//] then # url
|
@@ -918,12 +911,12 @@ EOF
|
|
918
911
|
if File.exists? s then
|
919
912
|
buffer = File.read s
|
920
913
|
elsif @opt[:schema]
|
921
|
-
dynarex_new @opt[:schema]
|
914
|
+
dynarex_new @opt[:schema], default_key: @opt[:default_key]
|
922
915
|
else
|
923
916
|
raise DynarexException, 'file not found: ' + s
|
924
917
|
end
|
925
918
|
end
|
926
|
-
|
919
|
+
|
927
920
|
if buffer then
|
928
921
|
|
929
922
|
raw_stylesheet = buffer.slice!(/<\?xml-stylesheet[^>]+>/)
|
@@ -932,10 +925,9 @@ EOF
|
|
932
925
|
@doc = Rexle.new(buffer) unless @doc
|
933
926
|
end
|
934
927
|
|
935
|
-
#@log.debug('dynarex: before lement summary')
|
936
928
|
return if @doc.root.nil?
|
937
929
|
e = @doc.root.element('summary')
|
938
|
-
|
930
|
+
|
939
931
|
@schema = e.text('schema')
|
940
932
|
@root_name = @doc.root.name
|
941
933
|
@summary = summary_to_h
|
metadata
CHANGED
metadata.gz.sig
CHANGED
Binary file
|