xmlservice 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- 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: []
|