sfc-custom 0.3 → 0.6
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +6 -0
- data/Manifest +9 -4
- data/Rakefile +10 -0
- data/lib/sfc-custom.rb +59 -18
- data/sfc-custom.gemspec +29 -24
- data/test/fixtures/expected_output_for_test_personalized_vps_order_with_logo.xml +44 -0
- data/test/fixtures/expected_output_for_test_personalized_vps_order_with_text.xml +48 -0
- data/test/fixtures/expected_output_for_test_standard_vps_order.xml +26 -0
- data/test/test_sfc-custom.rb +78 -0
- metadata +76 -45
data/CHANGELOG
CHANGED
data/Manifest
CHANGED
@@ -1,5 +1,10 @@
|
|
1
|
-
README
|
2
|
-
Manifest
|
3
|
-
LICENSE
|
4
|
-
lib/sfc-custom.rb
|
5
1
|
CHANGELOG
|
2
|
+
lib/sfc-custom.rb
|
3
|
+
LICENSE
|
4
|
+
Manifest
|
5
|
+
Rakefile
|
6
|
+
README
|
7
|
+
test/fixtures/expected_output_for_test_personalized_vps_order_with_logo.xml
|
8
|
+
test/fixtures/expected_output_for_test_personalized_vps_order_with_text.xml
|
9
|
+
test/fixtures/expected_output_for_test_standard_vps_order.xml
|
10
|
+
test/test_sfc-custom.rb
|
data/Rakefile
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'echoe'
|
3
|
+
|
4
|
+
Echoe.new('sfc-custom') do |p|
|
5
|
+
p.author = "SFC Limited, Inc."
|
6
|
+
p.summary = "Library for accessing SFCcustom, a web service for generating dynamic content for print"
|
7
|
+
p.dependencies = ["xml-simple"]
|
8
|
+
p.project = "sfc"
|
9
|
+
p.clean_pattern = ["pkg", "doc", 'build/*', '**/*.o', '**/*.so', '**/*.a', '**/*.log', "{ext,lib}/*.{bundle,so,obj,pdb,lib,def,exp}", "ext/Makefile", "{ext,lib}/**/*.{bundle,so,obj,pdb,lib,def,exp}", "ext/**/Makefile", "pkg", "*.gem", ".config"]
|
10
|
+
end
|
data/lib/sfc-custom.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# = SFCcustom
|
2
|
-
# Ruby interface for
|
2
|
+
# Ruby interface for SFCcustom, a web service for generating dynamic content for print
|
3
3
|
#
|
4
4
|
# == Requirements
|
5
5
|
# * xmlsimple (gem install xml-simple)
|
@@ -14,9 +14,9 @@
|
|
14
14
|
# sign.generate! # => #<SFCcustom::Template:0x604654 @name="Sign">
|
15
15
|
|
16
16
|
require 'rubygems'
|
17
|
+
require 'xmlsimple' unless defined?(XmlSimple)
|
17
18
|
require 'cgi'
|
18
19
|
require 'net/http'
|
19
|
-
require 'xmlsimple' unless defined?(XmlSimple)
|
20
20
|
require 'digest/md5'
|
21
21
|
require 'base64'
|
22
22
|
require 'builder'
|
@@ -38,9 +38,12 @@ class SFCcustom
|
|
38
38
|
[]
|
39
39
|
end
|
40
40
|
|
41
|
-
# Upload a new template to SFCcustom, +
|
42
|
-
#
|
43
|
-
#
|
41
|
+
# Upload a new template to SFCcustom, by passing a +URL+ of a PDF file with
|
42
|
+
# PDFlib blocks. +digest+ (optional) is the MD5 digest of the file, compared
|
43
|
+
# after the file has been processed to ensure it has been transferred
|
44
|
+
# properly.
|
45
|
+
#
|
46
|
+
# Returns a hash with :status and :blocks
|
44
47
|
def upload(name, url, digest = nil)
|
45
48
|
|
46
49
|
r = request('UploadTemplate', { :name => name, :url => url, :digest => digest})
|
@@ -58,16 +61,20 @@ class SFCcustom
|
|
58
61
|
return result
|
59
62
|
end
|
60
63
|
|
61
|
-
# Delete an existing template
|
64
|
+
# Delete an existing template.
|
65
|
+
#
|
66
|
+
# Return +true+ or +false+ on success or failure, respectively
|
62
67
|
def delete(name)
|
63
68
|
r = request('DeleteTemplate', { :name => name })
|
64
69
|
return r['status'] == ' ok '
|
65
70
|
end
|
66
71
|
|
67
|
-
|
68
|
-
|
72
|
+
# Generate custom output based on +name+ template and +params+
|
73
|
+
def generate(name, params, resize = nil, cache = true, copy = nil, thumbnail = true)
|
74
|
+
request('GenerateCustom', { :name => name, :data => params, :resize => resize, :cache => cache, :copy => copy, :thumbnail => thumbnail})
|
69
75
|
end
|
70
76
|
|
77
|
+
# List the fonts available
|
71
78
|
def fonts
|
72
79
|
request('ListFonts')
|
73
80
|
end
|
@@ -117,7 +124,7 @@ class SFCcustom
|
|
117
124
|
attr_accessor :name, :type
|
118
125
|
end
|
119
126
|
|
120
|
-
def
|
127
|
+
def build_request(type, params = nil)
|
121
128
|
builder = Builder::XmlMarkup.new(:indent => 2)
|
122
129
|
builder.instruct!(:xml, :version => "1.0", :encoding => "UTF-8")
|
123
130
|
|
@@ -126,29 +133,29 @@ class SFCcustom
|
|
126
133
|
a.key(api_key)
|
127
134
|
end
|
128
135
|
case type
|
129
|
-
when 'UploadTemplate'
|
136
|
+
when 'UploadTemplate'
|
130
137
|
b.template do |t|
|
131
138
|
t.name(params[:name])
|
132
139
|
t.url(params[:url])
|
133
140
|
t.digest(params[:digest])
|
134
141
|
end
|
135
142
|
|
136
|
-
when 'UploadAsset'
|
143
|
+
when 'UploadAsset'
|
137
144
|
b.asset do |t|
|
138
145
|
t.filename(params[:filename])
|
139
146
|
t.data(params[:data])
|
140
147
|
end
|
141
148
|
|
142
|
-
when 'DeleteTemplate'
|
149
|
+
when 'DeleteTemplate'
|
143
150
|
b.template do |t|
|
144
151
|
t.name(params[:name])
|
145
152
|
end
|
146
153
|
|
147
|
-
when 'ListTemplates'
|
154
|
+
when 'ListTemplates'
|
148
155
|
|
149
|
-
when 'ListFonts'
|
156
|
+
when 'ListFonts'
|
150
157
|
|
151
|
-
when 'GenerateCustom'
|
158
|
+
when 'GenerateCustom'
|
152
159
|
b.template do |t|
|
153
160
|
t.name(params[:name])
|
154
161
|
end
|
@@ -160,7 +167,9 @@ class SFCcustom
|
|
160
167
|
b.output do |t|
|
161
168
|
t.resize(params[:resize]) if params[:resize]
|
162
169
|
t.copy(params[:copy]) if params[:copy]
|
170
|
+
t.thumbnail(params[:thumbnail].to_s)
|
163
171
|
end
|
172
|
+
|
164
173
|
b.blocks do |bl|
|
165
174
|
params[:data].each do |k, v|
|
166
175
|
|
@@ -182,6 +191,32 @@ class SFCcustom
|
|
182
191
|
else
|
183
192
|
blo.asset(v)
|
184
193
|
end
|
194
|
+
elsif v.is_a?(Hash)
|
195
|
+
blo.template do
|
196
|
+
blo.name v['template']
|
197
|
+
end
|
198
|
+
blo.blocks do
|
199
|
+
v.each do |kk, vv|
|
200
|
+
if kk == 'template'
|
201
|
+
else
|
202
|
+
if kk =~ /^PDF/
|
203
|
+
blo.pdf do
|
204
|
+
blo.name kk
|
205
|
+
if vv.match(/http/i)
|
206
|
+
blo.url vv
|
207
|
+
else
|
208
|
+
blo.asset vv
|
209
|
+
end
|
210
|
+
end
|
211
|
+
else
|
212
|
+
blo.text do
|
213
|
+
blo.name kk
|
214
|
+
blo.value {|x| x.cdata!(vv) }
|
215
|
+
end
|
216
|
+
end
|
217
|
+
end
|
218
|
+
end
|
219
|
+
end
|
185
220
|
else
|
186
221
|
blo.url(v['url'])
|
187
222
|
end
|
@@ -189,8 +224,8 @@ class SFCcustom
|
|
189
224
|
blo.rotate(v['rotate']) if v['rotate']
|
190
225
|
blo.position(v['position']) if v['position']
|
191
226
|
else
|
192
|
-
if v.is_a?(String)
|
193
|
-
blo.value(v)
|
227
|
+
if v.is_a?(String) || v.nil?
|
228
|
+
blo.value {|x| x.cdata!(v.to_s) }
|
194
229
|
else
|
195
230
|
blo.value(v['value'])
|
196
231
|
blo.font(v['font']) if v['font']
|
@@ -204,6 +239,12 @@ class SFCcustom
|
|
204
239
|
end
|
205
240
|
end
|
206
241
|
|
242
|
+
return xml
|
243
|
+
end
|
244
|
+
|
245
|
+
def request(type, params = nil)
|
246
|
+
xml = build_request(type, params)
|
247
|
+
|
207
248
|
puts xml
|
208
249
|
|
209
250
|
http = Net::HTTP.new(host, 80)
|
@@ -225,7 +266,7 @@ class SFCcustom
|
|
225
266
|
rescue
|
226
267
|
raise SFCcustomResultException
|
227
268
|
end
|
228
|
-
|
269
|
+
puts result.inspect
|
229
270
|
return result
|
230
271
|
end
|
231
272
|
end
|
data/sfc-custom.gemspec
CHANGED
@@ -1,31 +1,36 @@
|
|
1
|
-
|
2
|
-
# Gem::Specification for Sfc-custom-0.3
|
3
|
-
# Originally generated by Echoe
|
4
|
-
|
5
1
|
Gem::Specification.new do |s|
|
6
2
|
s.name = %q{sfc-custom}
|
7
|
-
s.version = "0.
|
8
|
-
|
9
|
-
s.
|
3
|
+
s.version = "0.6"
|
4
|
+
|
5
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
6
|
+
s.authors = ["SFC Limited, Inc."]
|
7
|
+
s.date = %q{2008-11-17}
|
8
|
+
s.description = %q{Library for accessing SFCcustom, a web service for generating dynamic content for print}
|
10
9
|
s.email = %q{}
|
10
|
+
s.extra_rdoc_files = ["CHANGELOG", "lib/sfc-custom.rb", "LICENSE", "README"]
|
11
|
+
s.files = ["CHANGELOG", "lib/sfc-custom.rb", "LICENSE", "Manifest", "Rakefile", "README", "test/fixtures/expected_output_for_test_personalized_vps_order_with_logo.xml", "test/fixtures/expected_output_for_test_personalized_vps_order_with_text.xml", "test/fixtures/expected_output_for_test_standard_vps_order.xml", "test/test_sfc-custom.rb", "sfc-custom.gemspec"]
|
12
|
+
s.has_rdoc = true
|
11
13
|
s.homepage = %q{}
|
14
|
+
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Sfc-custom", "--main", "README"]
|
15
|
+
s.require_paths = ["lib"]
|
12
16
|
s.rubyforge_project = %q{sfc}
|
13
|
-
s.
|
14
|
-
s.
|
15
|
-
s.
|
16
|
-
s.files = ["README", "Manifest", "LICENSE", "lib/sfc-custom.rb", "CHANGELOG", "sfc-custom.gemspec"]
|
17
|
-
s.add_dependency(%q<xml-simple>, ["> 0.0.0"])
|
18
|
-
end
|
17
|
+
s.rubygems_version = %q{1.2.0}
|
18
|
+
s.summary = %q{Library for accessing SFCcustom, a web service for generating dynamic content for print}
|
19
|
+
s.test_files = ["test/test_sfc-custom.rb"]
|
19
20
|
|
21
|
+
if s.respond_to? :specification_version then
|
22
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
23
|
+
s.specification_version = 2
|
20
24
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
25
|
+
if current_version >= 3 then
|
26
|
+
s.add_runtime_dependency(%q<xml-simple>, [">= 0"])
|
27
|
+
s.add_development_dependency(%q<echoe>, [">= 0"])
|
28
|
+
else
|
29
|
+
s.add_dependency(%q<xml-simple>, [">= 0"])
|
30
|
+
s.add_dependency(%q<echoe>, [">= 0"])
|
31
|
+
end
|
32
|
+
else
|
33
|
+
s.add_dependency(%q<xml-simple>, [">= 0"])
|
34
|
+
s.add_dependency(%q<echoe>, [">= 0"])
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<GenerateCustom>
|
3
|
+
<authentication>
|
4
|
+
<key>92be4756d943439c73f20ec165bacca9</key>
|
5
|
+
</authentication>
|
6
|
+
<template>
|
7
|
+
<name>LMSERIESNW_back</name>
|
8
|
+
</template>
|
9
|
+
<output>
|
10
|
+
<thumbnail>false</thumbnail>
|
11
|
+
</output>
|
12
|
+
<blocks>
|
13
|
+
<text>
|
14
|
+
<name>TEXT_SKU</name>
|
15
|
+
<value>
|
16
|
+
<![CDATA[09PRESBI-001]]>
|
17
|
+
</value>
|
18
|
+
</text>
|
19
|
+
<pdf>
|
20
|
+
<name>PDF_CONTRACTOR_TYPE</name>
|
21
|
+
<template>
|
22
|
+
<name>Logo_Only</name>
|
23
|
+
</template>
|
24
|
+
<blocks>
|
25
|
+
<pdf>
|
26
|
+
<name>PDF_CONTRACTOR_LOGO</name>
|
27
|
+
<url>http://ctsamples.com/logos/0000/0389/7bc10cce32aaa4287d4fc0c1ded49627.pdf</url>
|
28
|
+
</pdf>
|
29
|
+
<text>
|
30
|
+
<name>TEXT_ADDITIONAL_INFORMATION</name>
|
31
|
+
<value>
|
32
|
+
<![CDATA[]]>
|
33
|
+
</value>
|
34
|
+
</text>
|
35
|
+
</blocks>
|
36
|
+
</pdf>
|
37
|
+
<text>
|
38
|
+
<name>TEXT_BARCODE</name>
|
39
|
+
<value>
|
40
|
+
<![CDATA[*CT-04191-1-1*]]>
|
41
|
+
</value>
|
42
|
+
</text>
|
43
|
+
</blocks>
|
44
|
+
</GenerateCustom>
|
@@ -0,0 +1,48 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<GenerateCustom>
|
3
|
+
<authentication>
|
4
|
+
<key>92be4756d943439c73f20ec165bacca9</key>
|
5
|
+
</authentication>
|
6
|
+
<template>
|
7
|
+
<name>LMSERIESNW_back</name>
|
8
|
+
</template>
|
9
|
+
<output>
|
10
|
+
<thumbnail>false</thumbnail>
|
11
|
+
</output>
|
12
|
+
<blocks>
|
13
|
+
<text>
|
14
|
+
<name>TEXT_SKU</name>
|
15
|
+
<value>
|
16
|
+
<![CDATA[LMSERIESNW-002]]>
|
17
|
+
</value>
|
18
|
+
</text>
|
19
|
+
<pdf>
|
20
|
+
<name>PDF_CONTRACTOR_TYPE</name>
|
21
|
+
<template>
|
22
|
+
<name>SMC</name>
|
23
|
+
</template>
|
24
|
+
<blocks>
|
25
|
+
<text>
|
26
|
+
<name>TEXT_CONTRACTOR_NAME</name>
|
27
|
+
<value>
|
28
|
+
<![CDATA[www.customquality.net]]>
|
29
|
+
</value>
|
30
|
+
</text>
|
31
|
+
<text>
|
32
|
+
<name>TEXT_ADDITIONAL_INFORMATION</name>
|
33
|
+
<value>
|
34
|
+
<![CDATA[<avoidbreak=true>472-2282<avoidbreak=false>
|
35
|
+
<avoidbreak=true>Custom Quality <avoidbreak=false>
|
36
|
+
<avoidbreak=true>Construction Inc<avoidbreak=false>]]>
|
37
|
+
</value>
|
38
|
+
</text>
|
39
|
+
</blocks>
|
40
|
+
</pdf>
|
41
|
+
<text>
|
42
|
+
<name>TEXT_BARCODE</name>
|
43
|
+
<value>
|
44
|
+
<![CDATA[*CT-03037-1-1*]]>
|
45
|
+
</value>
|
46
|
+
</text>
|
47
|
+
</blocks>
|
48
|
+
</GenerateCustom>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<GenerateCustom>
|
3
|
+
<authentication>
|
4
|
+
<key>92be4756d943439c73f20ec165bacca9</key>
|
5
|
+
</authentication>
|
6
|
+
<template>
|
7
|
+
<name>LMSERIESNW_back</name>
|
8
|
+
</template>
|
9
|
+
<output>
|
10
|
+
<thumbnail>false</thumbnail>
|
11
|
+
</output>
|
12
|
+
<blocks>
|
13
|
+
<text>
|
14
|
+
<name>TEXT_SKU</name>
|
15
|
+
<value>
|
16
|
+
<![CDATA[09LMPREMAV-004]]>
|
17
|
+
</value>
|
18
|
+
</text>
|
19
|
+
<text>
|
20
|
+
<name>TEXT_BARCODE</name>
|
21
|
+
<value>
|
22
|
+
<![CDATA[*CT-XXXXX-1-1*]]>
|
23
|
+
</value>
|
24
|
+
</text>
|
25
|
+
</blocks>
|
26
|
+
</GenerateCustom>
|
@@ -0,0 +1,78 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
|
3
|
+
module Kernel
|
4
|
+
def __method__
|
5
|
+
caller[0][/`([^']*)'/, 1]
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
$:.unshift(File.join(File.dirname(__FILE__), %w[.. lib]))
|
10
|
+
require 'sfc-custom'
|
11
|
+
|
12
|
+
$rakefile = nil # Avoids a warning in rdoctask.rb
|
13
|
+
|
14
|
+
class TestSFCcustom < Test::Unit::TestCase
|
15
|
+
def setup
|
16
|
+
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_basics
|
20
|
+
sfc = SFCcustom.new('44a568611beab6e76daef41a81f38ebe')
|
21
|
+
assert sfc
|
22
|
+
assert_kind_of(SFCcustom, sfc)
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_personalized_vps_order_with_logo
|
26
|
+
custom = SFCcustom.new('92be4756d943439c73f20ec165bacca9')
|
27
|
+
blocks = {
|
28
|
+
"TEXT_BARCODE" => "*CT-04191-1-1*",
|
29
|
+
"TEXT_SKU" => "09PRESBI-001",
|
30
|
+
"PDF_CONTRACTOR_TYPE" => {
|
31
|
+
"template" => "Logo_Only",
|
32
|
+
"PDF_CONTRACTOR_LOGO" => "http://ctsamples.com/logos/0000/0389/7bc10cce32aaa4287d4fc0c1ded49627.pdf",
|
33
|
+
"TEXT_ADDITIONAL_INFORMATION" => ""
|
34
|
+
}
|
35
|
+
}
|
36
|
+
|
37
|
+
output = custom.build_request("GenerateCustom", { :name => "LMSERIESNW_back", :data => blocks, :resize => nil, :cache => false, :copy => nil, :thumbnail => false})
|
38
|
+
|
39
|
+
expected = File.open(File.join(File.dirname(__FILE__), 'fixtures', "expected_output_for_#{__method__}.xml")).read
|
40
|
+
|
41
|
+
assert_equal expected, output
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_personalized_vps_order_with_text
|
45
|
+
custom = SFCcustom.new('92be4756d943439c73f20ec165bacca9')
|
46
|
+
blocks = {
|
47
|
+
"TEXT_BARCODE" => "*CT-03037-1-1*",
|
48
|
+
"TEXT_SKU" => "LMSERIESNW-002",
|
49
|
+
"PDF_CONTRACTOR_TYPE" => {
|
50
|
+
"template" => "SMC",
|
51
|
+
"TEXT_CONTRACTOR_NAME" => "www.customquality.net",
|
52
|
+
"TEXT_ADDITIONAL_INFORMATION" => %Q(<avoidbreak=true>472-2282<avoidbreak=false>
|
53
|
+
<avoidbreak=true>Custom Quality <avoidbreak=false>
|
54
|
+
<avoidbreak=true>Construction Inc<avoidbreak=false>)
|
55
|
+
}
|
56
|
+
}
|
57
|
+
output = custom.build_request("GenerateCustom", { :name => "LMSERIESNW_back", :data => blocks, :resize => nil, :cache => false, :copy => nil, :thumbnail => false})
|
58
|
+
|
59
|
+
expected = File.open(File.join(File.dirname(__FILE__), 'fixtures', "expected_output_for_#{__method__}.xml")).read
|
60
|
+
|
61
|
+
assert_equal expected, output
|
62
|
+
end
|
63
|
+
|
64
|
+
def test_standard_vps_order
|
65
|
+
# This is not abstracted from a real order
|
66
|
+
custom = SFCcustom.new('92be4756d943439c73f20ec165bacca9')
|
67
|
+
blocks = {
|
68
|
+
"TEXT_BARCODE" => "*CT-XXXXX-1-1*",
|
69
|
+
"TEXT_SKU" => "09LMPREMAV-004",
|
70
|
+
}
|
71
|
+
output = custom.build_request("GenerateCustom", { :name => "LMSERIESNW_back", :data => blocks, :resize => nil, :cache => false, :copy => nil, :thumbnail => false})
|
72
|
+
|
73
|
+
expected = File.open(File.join(File.dirname(__FILE__), 'fixtures', "expected_output_for_#{__method__}.xml")).read
|
74
|
+
|
75
|
+
assert_equal expected, output
|
76
|
+
end
|
77
|
+
|
78
|
+
end
|
metadata
CHANGED
@@ -1,59 +1,90 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.9.2
|
3
|
-
specification_version: 1
|
4
2
|
name: sfc-custom
|
5
3
|
version: !ruby/object:Gem::Version
|
6
|
-
version: "0.
|
7
|
-
date: 2007-09-21 00:00:00 -04:00
|
8
|
-
summary: Library for accessing SFCcustom, a web service for generating dynamic content for print
|
9
|
-
require_paths:
|
10
|
-
- lib
|
11
|
-
email: ""
|
12
|
-
homepage: ""
|
13
|
-
rubyforge_project: sfc
|
14
|
-
description: Library for accessing SFCcustom, a web service for generating dynamic content for print
|
15
|
-
autorequire:
|
16
|
-
default_executable:
|
17
|
-
bindir: bin
|
18
|
-
has_rdoc: true
|
19
|
-
required_ruby_version: !ruby/object:Gem::Version::Requirement
|
20
|
-
requirements:
|
21
|
-
- - ">"
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 0.0.0
|
24
|
-
version:
|
4
|
+
version: "0.6"
|
25
5
|
platform: ruby
|
26
|
-
signing_key:
|
27
|
-
cert_chain:
|
28
|
-
post_install_message:
|
29
6
|
authors:
|
30
7
|
- SFC Limited, Inc.
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
- LICENSE
|
35
|
-
- lib/sfc-custom.rb
|
36
|
-
- CHANGELOG
|
37
|
-
- sfc-custom.gemspec
|
38
|
-
test_files: []
|
39
|
-
|
40
|
-
rdoc_options: []
|
41
|
-
|
42
|
-
extra_rdoc_files: []
|
43
|
-
|
44
|
-
executables: []
|
45
|
-
|
46
|
-
extensions: []
|
47
|
-
|
48
|
-
requirements: []
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
49
11
|
|
12
|
+
date: 2008-11-17 00:00:00 -05:00
|
13
|
+
default_executable:
|
50
14
|
dependencies:
|
51
15
|
- !ruby/object:Gem::Dependency
|
52
16
|
name: xml-simple
|
17
|
+
type: :runtime
|
53
18
|
version_requirement:
|
54
|
-
version_requirements: !ruby/object:Gem::
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
55
20
|
requirements:
|
56
|
-
- - "
|
21
|
+
- - ">="
|
57
22
|
- !ruby/object:Gem::Version
|
58
|
-
version: 0
|
23
|
+
version: "0"
|
59
24
|
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: echoe
|
27
|
+
type: :development
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: "0"
|
34
|
+
version:
|
35
|
+
description: Library for accessing SFCcustom, a web service for generating dynamic content for print
|
36
|
+
email: ""
|
37
|
+
executables: []
|
38
|
+
|
39
|
+
extensions: []
|
40
|
+
|
41
|
+
extra_rdoc_files:
|
42
|
+
- CHANGELOG
|
43
|
+
- lib/sfc-custom.rb
|
44
|
+
- LICENSE
|
45
|
+
- README
|
46
|
+
files:
|
47
|
+
- CHANGELOG
|
48
|
+
- lib/sfc-custom.rb
|
49
|
+
- LICENSE
|
50
|
+
- Manifest
|
51
|
+
- Rakefile
|
52
|
+
- README
|
53
|
+
- test/fixtures/expected_output_for_test_personalized_vps_order_with_logo.xml
|
54
|
+
- test/fixtures/expected_output_for_test_personalized_vps_order_with_text.xml
|
55
|
+
- test/fixtures/expected_output_for_test_standard_vps_order.xml
|
56
|
+
- test/test_sfc-custom.rb
|
57
|
+
- sfc-custom.gemspec
|
58
|
+
has_rdoc: true
|
59
|
+
homepage: ""
|
60
|
+
post_install_message:
|
61
|
+
rdoc_options:
|
62
|
+
- --line-numbers
|
63
|
+
- --inline-source
|
64
|
+
- --title
|
65
|
+
- Sfc-custom
|
66
|
+
- --main
|
67
|
+
- README
|
68
|
+
require_paths:
|
69
|
+
- lib
|
70
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
71
|
+
requirements:
|
72
|
+
- - ">="
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: "0"
|
75
|
+
version:
|
76
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: "1.2"
|
81
|
+
version:
|
82
|
+
requirements: []
|
83
|
+
|
84
|
+
rubyforge_project: sfc
|
85
|
+
rubygems_version: 1.2.0
|
86
|
+
signing_key:
|
87
|
+
specification_version: 2
|
88
|
+
summary: Library for accessing SFCcustom, a web service for generating dynamic content for print
|
89
|
+
test_files:
|
90
|
+
- test/test_sfc-custom.rb
|