rexslt 0.6.11 → 0.6.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (6) hide show
  1. checksums.yaml +5 -5
  2. checksums.yaml.gz.sig +2 -2
  3. data.tar.gz.sig +0 -0
  4. data/lib/rexslt.rb +21 -14
  5. metadata +27 -24
  6. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: f6f2fcd4f4f5add9cf17a3da33f6d23b3b4890a2
4
- data.tar.gz: 2d05b609990be88dc140d2a20bd2df187fc0a89c
2
+ SHA256:
3
+ metadata.gz: 8677062cfbfef49a97de56c7fb501abf1f57c48bbea804ec13d4a6dcb93d69ed
4
+ data.tar.gz: dab58fa40b0365bef22573ec58c7b97cf86a5c4fdeddbd103395b2655a887e02
5
5
  SHA512:
6
- metadata.gz: ed60314be33b39c9eea2dcedff1b7cee5ad6fb5f1bde100b374e3c5e89506a26843f4884cdc3935a7c72344b32debcbea8fb0c769b207e95fd86584e93b6bef6
7
- data.tar.gz: 3486f01f82b598aa41fc4fbffb38b19197f4e106089c40808a2898386607101edbb4b9ba226d3b9faaa3ce5bccd1aa77bcd22fb2c0a65439c3263a43bfa61f61
6
+ metadata.gz: f94cb4e9621cda90f7e4e785fd7b45d53b94734bc3e3f01b8713a45faad7f9fdaaf5cefb478917abad1ff4c3533e40bfc963061b2436c401de011d6a5676841f
7
+ data.tar.gz: 6fbef82369e5534e05928a13b7f3ff01562767d65bded4e32bc8fbba26754271e7d5f1abd1d32c7a79df252e70705d91760a3863f91bcf76a8acf9add5a8cdf4
checksums.yaml.gz.sig CHANGED
@@ -1,2 +1,2 @@
1
- U��J>���a�x`��x��ݫ��?����d��d�Qޖ�RG�K���B�2�KԬ�R!��G�_�֎oҜQ�Wx���) ��5M���w^���0j�\�dߛ�O��y��)�3:��A
2
- ��%�U�>|�p$Z,����4�R�b_�b�O�j
1
+ -~V6x�+�:]cΈ�0㢩>�>�u�� ��lժ�F5����W��8鹢�I�� E�ϕ�k�2:e��P�ٺ���5����~�u�*�����ML!]�������n���M
2
+ b\dy.{~�뾇�%���O�2|� �-`jO��=�����ִT��g�G��(x3��D�n$��P86�1B�n�0��������q��Ռ)Y�u�W�k�fs8 �Z�핲.�yw@��!Ұ�En�98�m�J5RR�|�C=�东i
data.tar.gz.sig CHANGED
Binary file
data/lib/rexslt.rb CHANGED
@@ -8,7 +8,9 @@ require 'logger'
8
8
 
9
9
 
10
10
  # modifications:
11
-
11
+ #
12
+ # 01-Feb-2019: bug fix: new line characters are no longer stripped
13
+ # between XSL elements
12
14
  # 19-Jan-2018: feature: Implemented Rexslt#to_xml which returns pretty XML
13
15
  # 16-Sep-2017: improvement: all predicates in an xsl:choose
14
16
  # condition now must be true
@@ -59,32 +61,35 @@ end
59
61
 
60
62
  class Rexslt
61
63
  using RexPath
64
+ using ColouredText
62
65
 
63
- def initialize(xsl, xml, params={})
66
+ def initialize(xsl, xml, raw_params={}, debug: false)
64
67
 
65
68
  ## debugging variables
66
69
 
67
- @log = Logger.new 'rxsl.log','daily'
68
70
  @rn = 0
69
71
  @rre = 0
70
72
 
71
73
  super()
72
- @log.debug 'before options'
74
+ puts 'before options'.info if @debug
73
75
  @options = {}
76
+
77
+ params = raw_params.merge({debug: false})
78
+ @debug = debug
74
79
  custom_params = params.inject({}){|r,x| r.merge(Hash[x[0].to_s,x[1]])}
75
- @log.debug 'before xsl_transform'
80
+ puts 'before xsl_transform'.info if @debug
76
81
 
77
82
  xslt_transform(*[xsl, xml].map{|x| RXFHelper.read(x).first}, custom_params)
78
83
  end
79
84
 
80
85
  def to_s(options={})
81
- @doc.to_s(@options.merge(options)).sub(/<root>\n/,'').sub(/<\/root>$/m,'')
86
+ @doc.to_s(@options.merge(options)).sub(/<root4>/,'').sub(/<\/root4>$/m,'').lstrip
82
87
  end
83
88
 
84
89
  def to_doc(); @doc; end
85
90
 
86
91
  def to_xml()
87
- @doc.root.xml(pretty: true).sub(/<root>\n/,'').sub(/<\/root>$/m,'')
92
+ @doc.root.xml(pretty: true).sub(/<root3>\n/,'').sub(/<\/root3>$/m,'')
88
93
  end
89
94
 
90
95
  private
@@ -377,6 +382,7 @@ class Rexslt
377
382
 
378
383
  template_node.children.each_with_index do |x,j|
379
384
 
385
+ puts ('x: ' + x.inspect).debug if @debug
380
386
  name = if x.kind_of? Rexle::Element then :read_raw_element
381
387
  elsif x.is_a? String then :read_raw_text
382
388
  elsif x.class.to_s =~ /Rexle::Comment$/ then :ignore
@@ -397,11 +403,10 @@ class Rexslt
397
403
  if x.to_s.strip.length > 0 then
398
404
 
399
405
  val = x.to_s.strip #
400
- doc_element.add_element val
406
+ puts ('val: ' + val.inspect).debug if @debug
407
+ doc_element.add_element x.to_s
401
408
  end
402
409
 
403
- #doc_element.add_text x if x.is_a? String
404
-
405
410
  end
406
411
 
407
412
  # element: xml element
@@ -521,16 +526,16 @@ class Rexslt
521
526
 
522
527
  def xslt_transform(raw_xsl, xml, custom_params={})
523
528
 
524
- @log.debug 'inside xslt_transform'
529
+ puts 'inside xslt_transform'.info if @debug
525
530
 
526
531
  doc_xml = xml.is_a?(Rexle) ? xml : Rexle.new(xml)
527
532
 
528
533
  @doc_xsl = raw_xsl.is_a?(Rexle) ? raw_xsl : Rexle.new(raw_xsl)
529
- @log.debug 'after @doc_xsl'
534
+ puts 'after @doc_xsl'.info if @debug
530
535
 
531
536
  #jr2040516 filter_out_spaces @doc_xsl.root
532
537
 
533
- @doc = Rexle.new '<root></root>'
538
+ @doc = Rexle.new '<root4></root4>', debug: @debug
534
539
 
535
540
  indent = 0
536
541
 
@@ -552,7 +557,7 @@ class Rexslt
552
557
  end
553
558
 
554
559
  h = @doc_xsl.root.element("xsl:output/attribute::*")
555
- @log.debug 'after h'
560
+ puts 'after h'.info if @debug
556
561
 
557
562
  if h and ((h[:method] and h[:method].downcase == 'html') \
558
563
  or h[:'omit-xml-declaration'] == 'yes') then
@@ -576,6 +581,8 @@ class Rexslt
576
581
  # using the 1st template
577
582
  xpath = String.new @templates.to_a[0][0]
578
583
  out = read_node(@templates.to_a[0][-1], doc_xml.element(xpath), @doc.root, indent)
584
+
585
+ puts ('out: ' + out.inspect).debug if @debug
579
586
 
580
587
  html = @doc.root.element('html')
581
588
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rexslt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.11
4
+ version: 0.6.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -10,28 +10,32 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
- YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
- 8ixkARkWAmV1MB4XDTE3MDkxNTIwMjQwM1oXDTE4MDkxNTIwMjQwM1owSDESMBAG
16
- A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
- EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
- ggEBAMlR9HT3XszqknU82ijbs8uTs91F9jkc+2oXFCmTDwx7K6RIsUYs4J5p2hnw
19
- Rg3JMpgbCnlz2/bOenXHYq2+MYw5jql68lorwqAvPOSqgnmgolid5EuNNyGqlDHB
20
- Mkp79B2ZhNO8Gz77ruYgCKVkGCrwO2Njc8iGGnEiRUAntRna1YcFNYKOU1hllqDI
21
- oKn0efB/YTgzqhhpYxK9sEpWfjFoO9trfj+r9BU/BAHWVDR5vxdSiqFIkbnKW65a
22
- nC28KtMVI7KkUPbN8tgsm8B9Id6POHUUGjiBHr1P/zktOcyrOAnzAi9lLlS9hnkt
23
- 6Ktj0NDtQrAcaJOpS63qJmBuYPkCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
- DwQEAwIEsDAdBgNVHQ4EFgQUFDszzDA8NNNCoYI2FKOrIiIp87YwJgYDVR0RBB8w
25
- HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
- c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAhp3O3yYu
27
- +96s1H5S297WguKDGrNKJoa44o+6IU4JefUxkmfidtaSwcPnnCaAsoLXzBLpnwlY
28
- m6LH1jPWHqnJlUHjtkjr/wp620cWGKcwFw8VlfqdNALV9tALCHje5J+NITR2U9P6
29
- Q6tcZFPZmUCr8SvlQlqGJY1BY/e9iajntzL0j6QvBZLzaQbej1DY5Dbv3e2ipOZq
30
- gQdsDg5v3CppCdi6o+CG+Q+K2P6w4EBdWKHn9FhYUMp4oDiBznW7D+dpEraoyER7
31
- f4Fi5ORmK9ccbijkIGmH2JdFYi07Fax/6a8TgcpbSrICHncFAvvPo8hxuUR+aHvg
32
- wux0hu0gdmk8nA==
13
+ MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
14
+ YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMTkwMjAxMTk1MjQyWhcN
15
+ MjAwMjAxMTk1MjQyWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
16
+ cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCr1Aj5
17
+ q9c4JQkcjTisuXqjdp5xqnBYNA5ZSWRD7mjzwdKajCSFEE/Qbe5W51pdJLf7T4F+
18
+ nOSQVOQ7bbtUFlmaAVXmzYXM84+kp7yZJVrTPyIFgsO+2trIizZ0HsE4H2CPBhrX
19
+ oefgXQCumOBjwBswUzD9qqvNAX0l0LVa3QBidwA4IHcc8RIFnu/1JOk11GCHYYNR
20
+ T31kN5iGvSH1Cl4cXYuD5PX44bTJ+zdBWusZcCV71MM/QLEglSL9HiS/PNjExMTk
21
+ 8UuT6uuD2n090OotL4qyotVODvetCkIMQullgGBYSQtT/R8sN35Tg64443Gmh4Ft
22
+ u92AmIFSzgGjZLFlc6B/McqxAFxhHCehyGo2X6vvOBz/vExmWpq8FhXHaw726cpw
23
+ iRaBhcCBoxyp1OAUTGnLMbqVyP47KSMEtz+wc1fGR9mUmsPc1hTM0j25scygOK26
24
+ 6pugoVyZLVNIGKnEXQGOGEknDqxHT4jYiYUVXV2N3/0OctBZlsulD/aTX5cCAwEA
25
+ AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUljB/mcn+
26
+ iSaM5h8WLBvmN14qEaIwJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
27
+ c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
28
+ BgkqhkiG9w0BAQsFAAOCAYEAjceGpE0m2OBEXk3T4j5zgE7cO16+sjaM1vk7Cfrq
29
+ FlMKBOq0LHOECVjSxRC9k43K7BAxypBfne+Xm92eRnc8jl/O5MaW1yqbVIDbaPEP
30
+ K3I4WO76HYnwmvjOdjL5FHX3Y5GgADdIiUvxNDmlS1vU9NKk8lzHdZlIcf9R6Vek
31
+ dkB0yYLS2C7pmudqpiwONPrMWVz8BLnerj9N16isNtqP72a9vqBxUAtAmUjyeBRn
32
+ OnHbMWg5fFPG1j3jzyxLGB1YU3uGF6kL3j4etV4dPEv5snbhI5z6rGEMlT/P7mo9
33
+ p6XeA76363WNUzlA4hsY+b3hQvGvgFtj1u3keeTySZtCjSNq6xVOtDxzlngDsVNX
34
+ LPQT8NUug9u8KKvGw+MsrirU/wvQIGablJzhsnZI+snWgGbBYu28magLY+g5Uyn7
35
+ lsqJ2/yU8bVVS+tkDVmCLdDn+RMoPYrLqZGbWwm5913h255DeUC6/qKofxWvR+XC
36
+ hyIDI2yf0ueF+Lirvch+gr7J
33
37
  -----END CERTIFICATE-----
34
- date: 2018-02-03 00:00:00.000000000 Z
38
+ date: 2019-02-01 00:00:00.000000000 Z
35
39
  dependencies:
36
40
  - !ruby/object:Gem::Dependency
37
41
  name: rxfhelper
@@ -99,8 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
103
  - !ruby/object:Gem::Version
100
104
  version: '0'
101
105
  requirements: []
102
- rubyforge_project:
103
- rubygems_version: 2.6.13
106
+ rubygems_version: 3.0.2
104
107
  signing_key:
105
108
  specification_version: 4
106
109
  summary: Rexslt is an XSLT processor written purely in Ruby
metadata.gz.sig CHANGED
Binary file