wadling 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/wadling/version.rb +1 -1
  3. data/lib/wadling.rb +17 -11
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b39b399811bcf95ab3754b21f5d0a23d7e293f74
4
- data.tar.gz: abe10b7a2ed3a3f0c121769c8f9e0bf85b497401
3
+ metadata.gz: 552c99afb33995e53fb40ca4f91629352f089168
4
+ data.tar.gz: 8cd7c65c33c01434cf7e358182ba854bb2b9498e
5
5
  SHA512:
6
- metadata.gz: 76509bcd220958f98e49d2b5ed7009f77ebc31235075e30da7dca67b0ba1cdb427a12484256d598cf493e0f961a1714666e2a8066aeee45c6e557cdfcb703eae
7
- data.tar.gz: 317a3a10ac54f5a08df41b59942dacd87460a14641e7cae87eefc7766b020457c1fb8c8896c6b66386aac3353e62fb20d3197e18c29c9109933d6d0dc000e566
6
+ metadata.gz: 1959d57a212e0667f198b708a526487e2a4c0f1dc1681cb3163f38c92dbb5d9d46b047958d916953dcbb368c9aefb0591455fc821ca4fb17c9784ae756897260
7
+ data.tar.gz: bf0dbe828d018f6b57e383f8c360683e8f71fcac5759a797805a9dca9a96b6bf9346a9e12efebb287da05b47f7164ecc4a730e4989dc4c999cc13fb6919a32ce
@@ -1,3 +1,3 @@
1
1
  module Wadling
2
- VERSION = "0.1.6"
2
+ VERSION = "0.1.7"
3
3
  end
data/lib/wadling.rb CHANGED
@@ -11,22 +11,22 @@ module Wadling
11
11
  @style_sheet = style_sheet
12
12
  end
13
13
 
14
- def translate_resources_into_wadl_files(resources, path)
14
+ def translate_resources_into_wadl_files(resources, path, prefix = '')
15
15
  return empty_wadl if no_resources?(resources)
16
16
  raise ArgumentError.new("A resource dictionary is expected") if resources_invalid?(resources)
17
17
  raise ArgumentError.new("path invalid") if path_invalid?(path)
18
18
  resources.each do |r, v|
19
- File.open("#{path}/#{v['id']}.wadl", 'w') { |file|
19
+ File.open("#{path}/#{apply_prefix(v['id'], prefix)}.wadl", 'w') { |file|
20
20
 
21
- file.write(header + resources_base + translate_and_append_resource('', r, v) + resources_close + footer)
21
+ file.write(header + resources_base + translate_and_append_resource('', r, v, prefix) + resources_close + footer)
22
22
  }
23
23
  end
24
24
  end
25
25
 
26
- def translate_resources_into_wadl(resources)
26
+ def translate_resources_into_wadl(resources, prefix = '')
27
27
  return empty_wadl if no_resources?(resources)
28
28
  raise ArgumentError.new("A resource dictionary is expected") if resources_invalid?(resources)
29
- header + resources_base + translate_resources(resources) + resources_close + footer
29
+ header + resources_base + translate_resources(resources, prefix) + resources_close + footer
30
30
  end
31
31
 
32
32
  def header
@@ -51,6 +51,11 @@ module Wadling
51
51
 
52
52
  private
53
53
 
54
+ def apply_prefix(value, prefix)
55
+ return value if !prefix or (prefix.strip == '')
56
+ "_#{prefix.strip}#{value}"
57
+ end
58
+
54
59
  def path_invalid?(path)
55
60
  not File.directory?(path)
56
61
  end
@@ -59,16 +64,16 @@ module Wadling
59
64
  not resources.is_a? Hash
60
65
  end
61
66
 
62
- def translate_resources(resources)
67
+ def translate_resources(resources, prefix)
63
68
  entries = ""
64
69
  resources.each do |r, v|
65
- entries = translate_and_append_resource(entries, r, v)
70
+ entries = translate_and_append_resource(entries, r, v, prefix)
66
71
  end
67
72
  entries
68
73
  end
69
74
 
70
- def translate_and_append_resource(entries, r, v)
71
- entries, required = append_resource_header(entries, r, v)
75
+ def translate_and_append_resource(entries, r, v, prefix)
76
+ entries, required = append_resource_header(entries, r, v, prefix)
72
77
  params = v['params'].nil? ? {} : v['params']
73
78
  params.each do |p, vv|
74
79
  entries = append_param(entries, required, p, vv)
@@ -76,10 +81,11 @@ module Wadling
76
81
  entries = append_resource_footer(entries)
77
82
  end
78
83
 
79
- def append_resource_header(entries, r, v)
84
+ def append_resource_header(entries, r, v, prefix)
80
85
  method, required = parse_resource(r, v)
81
86
  entries = entries + "<wadl:resource path=\"#{r}\">"
82
- entries = entries + " <wadl:method name=\"#{method}\" id=\"#{v['id']}\">"
87
+ id = apply_prefix(v['id'], prefix)
88
+ entries = entries + " <wadl:method name=\"#{method}\" id=\"#{id}\">"
83
89
  entries = entries + " <wadl:doc>"
84
90
  entries = entries + " #{v['doc']}"
85
91
  entries = entries + " </wadl:doc>"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wadling
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ernst van Graan