xmlservice 1.3.0
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.
- checksums.yaml +7 -0
- data/LICENSE +19 -0
- data/README_IBM_i +62 -0
- data/lib/adapters/abstract_adapter.rb +82 -0
- data/lib/adapters/db2_adapter.rb +70 -0
- data/lib/adapters/rest_adapter.rb +32 -0
- data/lib/password/password.rb +229 -0
- data/lib/xmlservice.rb +2477 -0
- data/test/README_IBM_i +3 -0
- data/test/Rakefile +42 -0
- data/test/genpassword.rb +111 -0
- data/test/test_60000_toolkit_driver/Rakefile +11 -0
- data/test/test_60000_toolkit_driver/test_60010_DriverCallPgmZZCALL.rb +403 -0
- data/test/test_60000_toolkit_driver/test_60110_DriverCallSrvPgmZZARRAY.rb +149 -0
- data/test/test_60000_toolkit_driver/test_60310_DriverCMD.rb +77 -0
- data/test/test_60000_toolkit_driver/test_60510_DriverDataQueue.rb +126 -0
- data/test/test_60000_toolkit_driver/test_60610_DriverCallSrvPgmZZBINARY.rb +59 -0
- data/test/test_60000_toolkit_driver/test_60710_DriverSH.rb +73 -0
- data/test/test_60000_toolkit_driver/test_60910_DriverCallPgmZZMISS.rb +44 -0
- data/test/test_60000_toolkit_driver/test_65010_DriverCallDB2.rb +265 -0
- data/test/test_60000_toolkit_driver/zzassign.rb +66 -0
- data/test/test_60000_toolkit_driver/zzquick.rb +149 -0
- data/test/test_60000_toolkit_driver/zztestrest.rb +45 -0
- data/test/test_60000_toolkit_driver/zzthreadold.rb +78 -0
- data/test/test_70000_toolkit_testonly/Rakefile +11 -0
- data/test/test_70000_toolkit_testonly/test_70010_DriverCallPgmTestOnly.rb +270 -0
- data/test/test_80000_toolkit_dsl/Rakefile +11 -0
- data/test/test_80000_toolkit_dsl/test_80010_DSLCallPgmZZCALL.rb +162 -0
- data/test/test_80000_toolkit_dsl/test_80110_DSLCallSrvPgmZZARRAY.rb +150 -0
- data/test/test_authorization/README_IBM_i +15 -0
- data/test/test_authorization/auth.rb +101 -0
- data/test/test_authorization/key.yml +2 -0
- data/test/test_authorization/password.yml +3 -0
- data/test/test_authorization/xmlservice.yml +69 -0
- data/test/test_data/rowcol.rb +57 -0
- data/version.txt +1 -0
- metadata +92 -0
@@ -0,0 +1,150 @@
|
|
1
|
+
# File: test_80110_DSLCallSrvPgmZZARRAY.rb
|
2
|
+
require "../test_authorization/auth"
|
3
|
+
require "../test_data/rowcol"
|
4
|
+
|
5
|
+
# D ARRAYMAX c const(999)
|
6
|
+
# D dcRec_t ds qualified based(Template)
|
7
|
+
# D dcMyName 10A
|
8
|
+
# D dcMyJob 4096A
|
9
|
+
# D dcMyRank 10i 0
|
10
|
+
# D dcMyPay 12p 2
|
11
|
+
# *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
12
|
+
# * zzarray: check return array aggregate
|
13
|
+
# *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
14
|
+
# P zzarray B export
|
15
|
+
# D zzarray PI likeds(dcRec_t) dim(ARRAYMAX)
|
16
|
+
# D myName 10A
|
17
|
+
# D myMax 10i 0
|
18
|
+
# D myCount 10i 0
|
19
|
+
class Test_80110_DSLCallSrvPgmZZARRAY < RowColUnitTest
|
20
|
+
# -------------------------------
|
21
|
+
# test functions (start with prefix test_)
|
22
|
+
# rake test -- Unit run alpha sort order
|
23
|
+
# run #1) test_0000_connect
|
24
|
+
# run #2) test_nnnn_xxx
|
25
|
+
# :
|
26
|
+
# run #n) test_9999_close
|
27
|
+
# -------------------------------
|
28
|
+
|
29
|
+
def test_0050_zzarray
|
30
|
+
count = 5
|
31
|
+
zzwho = 'Ranger'
|
32
|
+
zzarray = XMLService::I_SRVPGM.new("ZZSRV","ZZARRAY",$toolkit_test_lib,{'error'=>'on'})
|
33
|
+
zzarray.input_parms do
|
34
|
+
char "myName", 10
|
35
|
+
long "myMax"
|
36
|
+
long_enddo "myCount"
|
37
|
+
end
|
38
|
+
zzarray.return_parms do
|
39
|
+
struct_dou "dcRec_t", 999, "myCount" do
|
40
|
+
char "dcMyName", 10
|
41
|
+
char "dcMyJob", 4096
|
42
|
+
long "dcMyRank"
|
43
|
+
dec "dcMyPay", 12, 2
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
# set input variables for call
|
48
|
+
zzarray.input.PARM0.myName = 'Skippy'
|
49
|
+
zzarray.input.PARM1.myMax = 9
|
50
|
+
zzarray.input.PARM2.myCount= 0
|
51
|
+
puts "\n+++++++++ input normal ++++++++++++++++"
|
52
|
+
puts zzarray.to_xml
|
53
|
+
# verify
|
54
|
+
self.match_value(__method__,__LINE__,'myName' ,'Skippy' ,zzarray.input.PARM0.myName)
|
55
|
+
self.match_value(__method__,__LINE__,'myMax' ,9 ,zzarray.input.PARM1.myMax)
|
56
|
+
self.match_value(__method__,__LINE__,'myCount' ,0 ,zzarray.input.PARM2.myCount)
|
57
|
+
|
58
|
+
|
59
|
+
# set input variables for call
|
60
|
+
zzarray.input.myName = zzwho
|
61
|
+
zzarray.input.myMax = count
|
62
|
+
zzarray.input.myCount= 0
|
63
|
+
puts "\n+++++++++ input fewer ++++++++++++++++"
|
64
|
+
puts zzarray.to_xml
|
65
|
+
# verify
|
66
|
+
self.match_value(__method__,__LINE__,'myName' ,zzwho ,zzarray.input.PARM0.myName)
|
67
|
+
self.match_value(__method__,__LINE__,'myMax' ,count ,zzarray.input.PARM1.myMax)
|
68
|
+
self.match_value(__method__,__LINE__,'myCount' ,0 ,zzarray.input.PARM2.myCount)
|
69
|
+
|
70
|
+
# call IBM i
|
71
|
+
zzarray.call
|
72
|
+
|
73
|
+
# puts zzarray.inspect
|
74
|
+
puts "\n+++++++++ dump_inspect ++++++++++++++++"
|
75
|
+
puts zzarray.dump_inspect
|
76
|
+
|
77
|
+
# xmlservice error occurred?
|
78
|
+
rc = zzarray.xmlservice_error
|
79
|
+
if rc
|
80
|
+
puts zzcall.dump_error
|
81
|
+
self.match_value(__method__,__LINE__,'error' ,false,rc)
|
82
|
+
end
|
83
|
+
|
84
|
+
# output xml
|
85
|
+
puts "\n+++++++++ output xml ++++++++++++++++"
|
86
|
+
puts zzarray.out_xml
|
87
|
+
|
88
|
+
|
89
|
+
# output
|
90
|
+
puts "\n+++++++++ output ++++++++++++++++"
|
91
|
+
puts "#{zzarray.name}.#{zzarray.func}:\n"
|
92
|
+
puts " myName....#{zzarray.response.myName}\n"
|
93
|
+
puts " myMax.....#{zzarray.response.myMax}\n"
|
94
|
+
puts " myCount...#{zzarray.response.myCount}\n"
|
95
|
+
i = 0
|
96
|
+
zzarray.returndata.dcRec_t.each do |dcRec_t|
|
97
|
+
i += 1
|
98
|
+
puts "dcRec_t[#{i}]"
|
99
|
+
puts " Name...#{dcRec_t.dcMyName}"
|
100
|
+
puts " Job....#{dcRec_t.dcMyJob}"
|
101
|
+
puts " Rank...#{dcRec_t.dcMyRank}"
|
102
|
+
puts " Pay....#{dcRec_t.dcMyPay}"
|
103
|
+
end
|
104
|
+
# verify
|
105
|
+
self.match_value(__method__,__LINE__,'myName' ,zzwho ,zzarray.response.myName)
|
106
|
+
self.match_value(__method__,__LINE__,'myMax' ,count ,zzarray.response.myMax)
|
107
|
+
self.match_value(__method__,__LINE__,'myCount' ,count ,zzarray.response.myCount)
|
108
|
+
for i in 0..zzarray.returndata.dcRec_t.count-1
|
109
|
+
dcMyName = zzarray.response.myName.to_s + (i+1).to_s
|
110
|
+
dcMyJob = "Test " + (100 + i + 1).to_s
|
111
|
+
dcMyRank = 10 + i + 1
|
112
|
+
dcMyPay = 13.42 * (i+1)
|
113
|
+
self.match_value(__method__,__LINE__,'dcMyName' ,dcMyName ,zzarray.returndata.dcRec_t[i].dcMyName)
|
114
|
+
self.match_value(__method__,__LINE__,'dcMyJob' ,dcMyJob ,zzarray.returndata.dcRec_t[i].dcMyJob)
|
115
|
+
self.match_value(__method__,__LINE__,'dcMyRank' ,dcMyRank ,zzarray.returndata.dcRec_t[i].dcMyRank)
|
116
|
+
self.match_value(__method__,__LINE__,'dcMyPay' ,dcMyPay ,zzarray.returndata.dcRec_t[i].dcMyPay)
|
117
|
+
end
|
118
|
+
|
119
|
+
# output
|
120
|
+
puts "\n+++++++++ output long ++++++++++++++++"
|
121
|
+
puts "#{zzarray.name}.#{zzarray.func}:\n"
|
122
|
+
puts " myName....#{zzarray.response.PARM0.myName}\n"
|
123
|
+
puts " myMax.....#{zzarray.response.PARM1.myMax}\n"
|
124
|
+
puts " myCount...#{zzarray.response.PARM2.myCount}\n"
|
125
|
+
i = 0
|
126
|
+
zzarray.returndata.douaggr.dcRec_t.each do |dcRec_t|
|
127
|
+
i += 1
|
128
|
+
puts "dcRec_t[#{i}]"
|
129
|
+
puts " Name...#{dcRec_t.dcMyName}"
|
130
|
+
puts " Job....#{dcRec_t.dcMyJob}"
|
131
|
+
puts " Rank...#{dcRec_t.dcMyRank}"
|
132
|
+
puts " Pay....#{dcRec_t.dcMyPay}"
|
133
|
+
end
|
134
|
+
# verify
|
135
|
+
self.match_value(__method__,__LINE__,'myName' ,zzwho ,zzarray.response.PARM0.myName)
|
136
|
+
self.match_value(__method__,__LINE__,'myMax' ,count ,zzarray.response.PARM1.myMax)
|
137
|
+
self.match_value(__method__,__LINE__,'myCount' ,count ,zzarray.response.PARM2.myCount)
|
138
|
+
for i in 0..zzarray.returndata.douaggr.dcRec_t.count-1
|
139
|
+
dcMyName = zzarray.response.PARM0.myName.to_s + (i+1).to_s
|
140
|
+
dcMyJob = "Test " + (100 + i + 1).to_s
|
141
|
+
dcMyRank = 10 + i + 1
|
142
|
+
dcMyPay = 13.42 * (i+1)
|
143
|
+
self.match_value(__method__,__LINE__,'dcMyName' ,dcMyName ,zzarray.returndata.douaggr.dcRec_t[i].dcMyName)
|
144
|
+
self.match_value(__method__,__LINE__,'dcMyJob' ,dcMyJob ,zzarray.returndata.douaggr.dcRec_t[i].dcMyJob)
|
145
|
+
self.match_value(__method__,__LINE__,'dcMyRank' ,dcMyRank ,zzarray.returndata.douaggr.dcRec_t[i].dcMyRank)
|
146
|
+
self.match_value(__method__,__LINE__,'dcMyPay' ,dcMyPay ,zzarray.returndata.douaggr.dcRec_t[i].dcMyPay)
|
147
|
+
end
|
148
|
+
end
|
149
|
+
|
150
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
===================
|
2
|
+
Encrypted passwords
|
3
|
+
===================
|
4
|
+
cd xmlservice/test
|
5
|
+
> genpassword.rb
|
6
|
+
Syntax:
|
7
|
+
ruby genpassword.rb db user password [key]
|
8
|
+
db - *LOCAL (see WRKRDBDIRE)
|
9
|
+
user - user profile id
|
10
|
+
password - user profile password
|
11
|
+
Optional:"
|
12
|
+
key - pass key (generate if missing)
|
13
|
+
- /path/key.yml
|
14
|
+
- YIPS4321AAAAAAAAAAAAAAA132424245 (actual key)
|
15
|
+
|
@@ -0,0 +1,101 @@
|
|
1
|
+
require 'xmlservice'
|
2
|
+
|
3
|
+
# =================
|
4
|
+
# IBM i tests (see xmlservice/README_IBM_i)
|
5
|
+
# =================
|
6
|
+
$test_url = ENV['TEST_URL']
|
7
|
+
$test_db = ENV['TEST_DATABASE']
|
8
|
+
$test_user = ENV['TEST_USER']
|
9
|
+
$test_pwd = ENV['TEST_PWD']
|
10
|
+
$test_ctl = ENV['TEST_CTL']
|
11
|
+
$test_ipc = ENV['TEST_IPC']
|
12
|
+
$test_xmlservice = ENV['TEST_XMLSERVICE']
|
13
|
+
$test_lib = ENV['TEST_LIB']
|
14
|
+
if $test_url == nil
|
15
|
+
$test_url = "http://174.79.32.155/cgi-bin/xmlcgi.pgm"
|
16
|
+
end
|
17
|
+
if $test_db == nil
|
18
|
+
$test_db = "*LOCAL"
|
19
|
+
end
|
20
|
+
if $test_user == nil
|
21
|
+
$test_user = "*NONE"
|
22
|
+
end
|
23
|
+
if $test_pwd == nil
|
24
|
+
$test_pwd = "*NONE"
|
25
|
+
end
|
26
|
+
if $test_ctl == nil
|
27
|
+
$test_ctl = "*here"
|
28
|
+
end
|
29
|
+
if $test_ipc == nil
|
30
|
+
$test_ipc = "*na"
|
31
|
+
end
|
32
|
+
if $test_xmlservice == nil
|
33
|
+
$test_xmlservice = "XMLSERVICE"
|
34
|
+
end
|
35
|
+
if $test_lib == nil
|
36
|
+
$test_lib = "DB2"
|
37
|
+
end
|
38
|
+
|
39
|
+
# =================
|
40
|
+
# developer only yaml
|
41
|
+
# encrypt password tests
|
42
|
+
# =================
|
43
|
+
# $test_url = "yaml"
|
44
|
+
$test_env = ENV['TEST_ENV']
|
45
|
+
$test_yaml = ENV['TEST_YAML']
|
46
|
+
if $test_yaml == nil
|
47
|
+
$test_yaml = "../test_authorization/xmlservice.yml"
|
48
|
+
end
|
49
|
+
if $test_env == nil
|
50
|
+
$test_env = "db2public"
|
51
|
+
end
|
52
|
+
|
53
|
+
|
54
|
+
case $test_url
|
55
|
+
when "ibm_db"
|
56
|
+
# =================
|
57
|
+
# establish connection (DB2)
|
58
|
+
# =================
|
59
|
+
ActiveXMLService::Base.establish_connection(
|
60
|
+
:adapter => "ibm_db",
|
61
|
+
:connection => "ActiveRecord",
|
62
|
+
:database => $test_db,
|
63
|
+
:username => $test_user,
|
64
|
+
:password => $test_pwd,
|
65
|
+
:ctl => $test_ctl,
|
66
|
+
:ipc => $test_ipc,
|
67
|
+
:size => 15000000,
|
68
|
+
:head => "<?xml version='1.0'?>",
|
69
|
+
:test_i_lib => $test_xmlservice, # custom attributes (not xmlservice required)
|
70
|
+
:test_i_db2_lib => $test_lib # custom attributes (not xmlservice required)
|
71
|
+
)
|
72
|
+
when "yaml"
|
73
|
+
# =================
|
74
|
+
# establish connection (based on yaml)
|
75
|
+
# =================
|
76
|
+
ActiveXMLService::Base.establish_connection(
|
77
|
+
:test_yaml => $test_yaml,
|
78
|
+
:test_env => $test_env
|
79
|
+
)
|
80
|
+
else
|
81
|
+
# =================
|
82
|
+
# establish connection (REST)
|
83
|
+
# =================
|
84
|
+
ActiveXMLService::Base.establish_connection(
|
85
|
+
:connection => $test_url,
|
86
|
+
:database => $test_db,
|
87
|
+
:username => $test_user,
|
88
|
+
:password => $test_pwd,
|
89
|
+
:ctl => $test_ctl,
|
90
|
+
:ipc => $test_ipc,
|
91
|
+
:size => 15000000,
|
92
|
+
:head => "<?xml version='1.0'?>",
|
93
|
+
:test_i_lib => $test_xmlservice, # custom attributes (not xmlservice required)
|
94
|
+
:test_i_db2_lib => $test_lib # custom attributes (not xmlservice required)
|
95
|
+
)
|
96
|
+
end
|
97
|
+
|
98
|
+
# custom attributes (not xmlservice required)
|
99
|
+
$toolkit_test_lib = ActiveXMLService::Base.configurations[:test_i_lib];
|
100
|
+
$toolkit_test_db2_lib = ActiveXMLService::Base.configurations[:test_i_db2_lib];
|
101
|
+
|
@@ -0,0 +1,69 @@
|
|
1
|
+
# Profile DB2 (xmlcgi.pgm or ibm_db)
|
2
|
+
db2profile: &db2profile
|
3
|
+
# database: "LP0364D"
|
4
|
+
database: "*LOCAL"
|
5
|
+
username: DB2
|
6
|
+
#password: MYPWD
|
7
|
+
pwd_yaml: ../test_authorization/password.yml
|
8
|
+
|
9
|
+
# REST client to XMLSERVICE
|
10
|
+
xmlrest: &xmlrest
|
11
|
+
connection: "http://174.79.32.155/cgi-bin/xmlcgi.pgm"
|
12
|
+
|
13
|
+
# DB2 client to XMLSERVICE
|
14
|
+
xmldb2: &xmldb2
|
15
|
+
connection: "ActiveRecord"
|
16
|
+
adapter: ibm_db
|
17
|
+
|
18
|
+
# xmlservice common
|
19
|
+
xmlservicecommon: &xmlservicecommon
|
20
|
+
install: XMLSERVICE
|
21
|
+
size: 15000000
|
22
|
+
head: "<?xml version='1.0'?>"
|
23
|
+
test_i_lib: XMLSERVICE
|
24
|
+
test_i_db2_lib: DB2
|
25
|
+
|
26
|
+
# xmlservice state full private connection (yes XTOOLKIT job)
|
27
|
+
xmlserviceprivate: &xmlserviceprivate
|
28
|
+
ctl: "*sbmjob"
|
29
|
+
ipc: /tmp/ruby042
|
30
|
+
|
31
|
+
# xmlservice stateless public connection (no XTOOLKIT job)
|
32
|
+
xmlservicepublic: &xmlservicepublic
|
33
|
+
ctl: "*here"
|
34
|
+
ipc: "/none"
|
35
|
+
|
36
|
+
# ---------------------------------
|
37
|
+
# xmlservice using ibm_db
|
38
|
+
# ActiveXMLService::Base.establish_connection(
|
39
|
+
# :test_yaml => '/path/xmlservice.yml',
|
40
|
+
# :test_env => 'sqlpublic'
|
41
|
+
#)
|
42
|
+
db2private:
|
43
|
+
<<: *xmldb2
|
44
|
+
<<: *db2profile
|
45
|
+
<<: *xmlservicecommon
|
46
|
+
<<: *xmlserviceprivate
|
47
|
+
db2public:
|
48
|
+
<<: *xmldb2
|
49
|
+
<<: *db2profile
|
50
|
+
<<: *xmlservicecommon
|
51
|
+
<<: *xmlservicepublic
|
52
|
+
|
53
|
+
# ---------------------------------
|
54
|
+
# xmlservice using REST (xmlcgi.pgm)
|
55
|
+
# ActiveXMLService::Base.establish_connection(
|
56
|
+
# :test_yaml => '/path/xmlservice.yml',
|
57
|
+
# :test_env => 'restpublic'
|
58
|
+
#)
|
59
|
+
restprivate:
|
60
|
+
<<: *xmlrest
|
61
|
+
<<: *db2profile
|
62
|
+
<<: *xmlservicecommon
|
63
|
+
<<: *xmlserviceprivate
|
64
|
+
restpublic:
|
65
|
+
<<: *xmlrest
|
66
|
+
<<: *db2profile
|
67
|
+
<<: *xmlservicecommon
|
68
|
+
<<: *xmlservicepublic
|
69
|
+
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# test data for various tables
|
2
|
+
require "../test_authorization/auth"
|
3
|
+
require "test/unit"
|
4
|
+
|
5
|
+
class RowColUnitTest < Test::Unit::TestCase
|
6
|
+
def match_hash(test,linenbr,text,a,b)
|
7
|
+
i = 0
|
8
|
+
a.each do |key, value|
|
9
|
+
if(b.has_key?(key))
|
10
|
+
self.match_value(test,linenbr,"#{text} => #{key}",a[key],b[key])
|
11
|
+
else
|
12
|
+
k1 = key
|
13
|
+
k2 = 'missing'
|
14
|
+
assert_match( k2, k1, "#{test}:#{linenbr} mismatch: #{text}[#{k1}] == #{text}[]")
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
def match_value(test,linenbr,text,a,b)
|
19
|
+
# float/real/decimal/string,
|
20
|
+
# you sir are a String/BigDecimal,
|
21
|
+
# therefore you must float yourself, etc. ...
|
22
|
+
# Ruby perfection be my name (Borg),
|
23
|
+
# perhaps yet another reason to use PHP
|
24
|
+
case a
|
25
|
+
when String
|
26
|
+
case b
|
27
|
+
when String
|
28
|
+
# ok
|
29
|
+
else
|
30
|
+
b = b.to_s()
|
31
|
+
end
|
32
|
+
when Integer
|
33
|
+
case b
|
34
|
+
when Integer
|
35
|
+
# ok
|
36
|
+
else
|
37
|
+
b = b.to_i()
|
38
|
+
end
|
39
|
+
when Float
|
40
|
+
case b
|
41
|
+
when Float
|
42
|
+
# ok
|
43
|
+
else
|
44
|
+
b = b.to_f()
|
45
|
+
end
|
46
|
+
else
|
47
|
+
end
|
48
|
+
# make a check
|
49
|
+
case a
|
50
|
+
when String
|
51
|
+
assert_match( a, b, "#{test}:#{linenbr} #{text} mismatch: #{a} == #{b}")
|
52
|
+
else
|
53
|
+
assert_equal( a, b, "#{test}:#{linenbr} #{text} mismatch: #{a} == #{b}")
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
data/version.txt
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
1.3.0 GA5-test
|
metadata
ADDED
@@ -0,0 +1,92 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: xmlservice
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.3.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Tony Cairns
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-12-15 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rake
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
description: Call IBM i PGM, SRVPGM, CMD, PASE
|
28
|
+
email: adc@us.ibm.com
|
29
|
+
executables: []
|
30
|
+
extensions: []
|
31
|
+
extra_rdoc_files: []
|
32
|
+
files:
|
33
|
+
- LICENSE
|
34
|
+
- README_IBM_i
|
35
|
+
- lib/adapters/abstract_adapter.rb
|
36
|
+
- lib/adapters/db2_adapter.rb
|
37
|
+
- lib/adapters/rest_adapter.rb
|
38
|
+
- lib/password/password.rb
|
39
|
+
- lib/xmlservice.rb
|
40
|
+
- test/README_IBM_i
|
41
|
+
- test/Rakefile
|
42
|
+
- test/genpassword.rb
|
43
|
+
- test/test_60000_toolkit_driver/Rakefile
|
44
|
+
- test/test_60000_toolkit_driver/test_60010_DriverCallPgmZZCALL.rb
|
45
|
+
- test/test_60000_toolkit_driver/test_60110_DriverCallSrvPgmZZARRAY.rb
|
46
|
+
- test/test_60000_toolkit_driver/test_60310_DriverCMD.rb
|
47
|
+
- test/test_60000_toolkit_driver/test_60510_DriverDataQueue.rb
|
48
|
+
- test/test_60000_toolkit_driver/test_60610_DriverCallSrvPgmZZBINARY.rb
|
49
|
+
- test/test_60000_toolkit_driver/test_60710_DriverSH.rb
|
50
|
+
- test/test_60000_toolkit_driver/test_60910_DriverCallPgmZZMISS.rb
|
51
|
+
- test/test_60000_toolkit_driver/test_65010_DriverCallDB2.rb
|
52
|
+
- test/test_60000_toolkit_driver/zzassign.rb
|
53
|
+
- test/test_60000_toolkit_driver/zzquick.rb
|
54
|
+
- test/test_60000_toolkit_driver/zztestrest.rb
|
55
|
+
- test/test_60000_toolkit_driver/zzthreadold.rb
|
56
|
+
- test/test_70000_toolkit_testonly/Rakefile
|
57
|
+
- test/test_70000_toolkit_testonly/test_70010_DriverCallPgmTestOnly.rb
|
58
|
+
- test/test_80000_toolkit_dsl/Rakefile
|
59
|
+
- test/test_80000_toolkit_dsl/test_80010_DSLCallPgmZZCALL.rb
|
60
|
+
- test/test_80000_toolkit_dsl/test_80110_DSLCallSrvPgmZZARRAY.rb
|
61
|
+
- test/test_authorization/README_IBM_i
|
62
|
+
- test/test_authorization/auth.rb
|
63
|
+
- test/test_authorization/key.yml
|
64
|
+
- test/test_authorization/password.yml
|
65
|
+
- test/test_authorization/xmlservice.yml
|
66
|
+
- test/test_data/rowcol.rb
|
67
|
+
- version.txt
|
68
|
+
homepage: http://github.com/adc/xmlservice
|
69
|
+
licenses:
|
70
|
+
- BSD
|
71
|
+
metadata: {}
|
72
|
+
post_install_message:
|
73
|
+
rdoc_options: []
|
74
|
+
require_paths:
|
75
|
+
- lib
|
76
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
77
|
+
requirements:
|
78
|
+
- - ">="
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: '0'
|
81
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
82
|
+
requirements:
|
83
|
+
- - ">="
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
86
|
+
requirements: []
|
87
|
+
rubyforge_project:
|
88
|
+
rubygems_version: 2.2.2
|
89
|
+
signing_key:
|
90
|
+
specification_version: 4
|
91
|
+
summary: IBM i Access
|
92
|
+
test_files: []
|