rwdshell 0.98 → 0.99
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.
- data/Readme.txt +6 -0
- data/code/01rwdcore/01rwdcore.rb +16 -16
- data/code/01rwdcore/jumplinkcommand.rb +30 -0
- data/code/01rwdcore/openhelpwindow.rb +26 -26
- data/code/01rwdcore/returntomain.rb +8 -8
- data/code/01rwdcore/rwdtinkerversion.rb +12 -13
- data/code/01rwdcore/rwdwindowreturn.rb +3 -5
- data/code/01rwdcore/test_cases.rb +79 -90
- data/code/01rwdcore/test_harness.rb +7 -10
- data/code/01rwdcore/uploadreturns.rb +60 -60
- data/code/superant.com.rwdshell/clearrubyscreendisplay.rb +7 -0
- data/code/superant.com.rwdshell/helptexthashshell.rb +8 -1
- data/code/superant.com.rwdshell/jumplinkupdate.rb +9 -0
- data/code/superant.com.rwdshell/loadrubyscriptrecord.rb +20 -0
- data/code/superant.com.rwdshell/openhelpwindowshell.rb +6 -0
- data/code/superant.com.rwdshell/runrwdshellwindow.rb +4 -1
- data/code/superant.com.rwdshell/saverubyrecord.rb +19 -0
- data/code/superant.com.rwdtinkerbackwindow/controlclient.rb +89 -92
- data/code/superant.com.rwdtinkerbackwindow/diagnostictab.rb +15 -21
- data/code/superant.com.rwdtinkerbackwindow/installapplet.rb +19 -18
- data/code/superant.com.rwdtinkerbackwindow/installgemapplet.rb +20 -19
- data/code/superant.com.rwdtinkerbackwindow/installremotegem.rb +19 -18
- data/code/superant.com.rwdtinkerbackwindow/listgemdirs.rb +7 -7
- data/code/superant.com.rwdtinkerbackwindow/listgemzips.rb +48 -49
- data/code/superant.com.rwdtinkerbackwindow/listinstalledfiles.rb +8 -7
- data/code/superant.com.rwdtinkerbackwindow/listzips.rb +22 -26
- data/code/superant.com.rwdtinkerbackwindow/loadconfigurationrecord.rb +32 -31
- data/code/superant.com.rwdtinkerbackwindow/loadconfigurationvariables.rb +14 -13
- data/code/superant.com.rwdtinkerbackwindow/network.rb +82 -82
- data/code/superant.com.rwdtinkerbackwindow/openappletname.rb +18 -17
- data/code/superant.com.rwdtinkerbackwindow/openhelpwindowtinkerwin2.rb +37 -37
- data/code/superant.com.rwdtinkerbackwindow/remotegemlist.rb +20 -20
- data/code/superant.com.rwdtinkerbackwindow/removeapplet.rb +33 -32
- data/code/superant.com.rwdtinkerbackwindow/runrwdtinkerbackwindow.rb +8 -9
- data/code/superant.com.rwdtinkerbackwindow/rwdtinkerwin2version.rb +10 -11
- data/code/superant.com.rwdtinkerbackwindow/saveconfigurationrecord.rb +19 -18
- data/code/superant.com.rwdtinkerbackwindow/viewappletcontents.rb +21 -20
- data/code/superant.com.rwdtinkerbackwindow/viewgemappletcontents.rb +23 -20
- data/configuration/language.dist +1 -1
- data/configuration/rwdapplicationidentity.dist +1 -1
- data/configuration/rwdshell.dist +2 -2
- data/configuration/rwdtinker.dist +3 -3
- data/configuration/tinkerwin2variables.dist +1 -1
- data/gui/frontwindow0/superant.com.shellscripts/3editscripts.rwd +1 -0
- data/gui/frontwindowselectionbegin/selectiontabbegin/selectiontabbegin.rwd +2 -7
- data/gui/frontwindowselections/superant.com.rwdtinkerwin2selectiontab/jumplinkcommands.rwd +15 -0
- data/gui/helpaboutinstalled/superant.com.shellhelpabout/3copyright.rwd +1 -1
- data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/46editscriptrecord.rwd +2 -2
- data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/94rwddiagnostics.rwd +0 -17
- data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/98jumplinkcommands.rwd +17 -0
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/81jumplinkcommands.rwd +17 -0
- data/init.rb +228 -228
- data/rwd_files/HowTo_Shell.txt +6 -0
- data/rwd_files/HowTo_Tinker.txt +6 -0
- data/rwdconfig.dist +1 -1
- data/scripts/test02.rb +1 -1
- data/tests/makedist.rb +26 -12
- metadata +10 -8
- data/code/superant.com.rwdshell/runrwdshellmenu1.rb +0 -57
- data/gui/frontwindowselections/superant.com.rwdshellselectiontab/rwdshellbackwindowselectiontab.rwd +0 -12
- data/gui/frontwindowselections/superant.com.rwdtinkerwin2selectiontab/rwdwin2selectiontab.rwd +0 -12
- data/gui/tinkerbackwindows/superant.com.rwdshellbackwindow/v9returntab.rwd +0 -11
- data/gui/tinkerbackwindows/superant.com.tinkerbackwindow/80tab1.rwd +0 -11
@@ -20,5 +20,12 @@
|
|
20
20
|
|
21
21
|
You can edit the commands or comment
|
22
22
|
|
23
|
-
|
23
|
+
|
24
|
+
'Save Changes' will save the changes you have made - BE CERTAIN YOUR CHANGES ARE CORRECT
|
25
|
+
'Reload Variables' will load the changes you have made - otherwise your changes will be lost next reboot",
|
26
|
+
|
27
|
+
:shelledit_help => "You can edit scripts here
|
28
|
+
'Fill Record' will load the file selected on the script run tab
|
29
|
+
'Save Changes' will save the changes you have made -
|
30
|
+
'Clear' will clear the screen "
|
24
31
|
)
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# this method views an existing address record
|
2
|
+
def loadrubyscriptrecord
|
3
|
+
|
4
|
+
require 'fileutils'
|
5
|
+
currentscriptname = @a_rubyscriptfilename
|
6
|
+
|
7
|
+
begin # exception trapped block
|
8
|
+
|
9
|
+
|
10
|
+
fileName = $shellscript_directory + "/" + currentscriptname + ".rb"
|
11
|
+
|
12
|
+
fd = File.open(fileName,"r")
|
13
|
+
@a_rubyscriptrecord = fd.read
|
14
|
+
|
15
|
+
fd.close
|
16
|
+
rescue SystemCallError, StandardError
|
17
|
+
$stderr.print "system call error: " + $!
|
18
|
+
end # exception rescue
|
19
|
+
|
20
|
+
end
|
@@ -9,6 +9,12 @@ def runhelpwindowrwdshell
|
|
9
9
|
if @rwd_tab == "viewrwdshellconfiguration"
|
10
10
|
$help_topic = "ShellEnvironment_help"
|
11
11
|
end
|
12
|
+
if @rwd_tab == "EditScriptsrwdshell"
|
13
|
+
$help_topic = "shelledit_help"
|
14
|
+
end
|
15
|
+
if @rwd_tab == "editrubyrecordfile"
|
16
|
+
$help_topic = "shelledit_help"
|
17
|
+
end
|
12
18
|
|
13
19
|
|
14
20
|
|
@@ -0,0 +1,19 @@
|
|
1
|
+
|
2
|
+
def saverubyrecord # this method adds a new script file
|
3
|
+
require 'fileutils'
|
4
|
+
if @a_rubyscriptfilename
|
5
|
+
newdata =@a_rubyscriptrecord.to_s
|
6
|
+
fullnewname = @a_rubyscriptfilename.to_s + ".rb"
|
7
|
+
begin # exception trapped block
|
8
|
+
fileName = File.join( $shellscript_directory, fullnewname )
|
9
|
+
fd = File.open(fileName,"w")
|
10
|
+
fd.print(newdata) # save the record info to the file
|
11
|
+
fd.close
|
12
|
+
@newrubyresult=newdata # show the record info in the browser
|
13
|
+
|
14
|
+
|
15
|
+
rescue
|
16
|
+
@newrubyresult = "\n" + "system error in createnew method"
|
17
|
+
end # exception rescue
|
18
|
+
end
|
19
|
+
end # end of createnew
|
@@ -1,99 +1,96 @@
|
|
1
1
|
# Bind message passing socket to rwdtinker application
|
2
|
-
|
3
2
|
def runcontrolcommand
|
4
|
-
require 'socket'
|
5
|
-
|
6
|
-
# Change this line...
|
7
|
-
|
8
|
-
# And this one...
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
# Rescue all other errors
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
remotehostnotfound = true
|
53
|
-
if (commandtext == "query")
|
54
|
-
begin
|
55
|
-
client = UDPSocket::new()
|
56
|
-
client.send(commandtext, 0, ip, port)
|
57
|
-
@socket = UDPSocket::new()
|
58
|
-
@socket.bind(ip, port)
|
59
|
-
# Rescue the "Address in use" error
|
60
|
-
rescue Errno::EADDRINUSE
|
61
|
-
|
62
|
-
databack, info = client.recv(128)
|
63
|
-
@remotecommandresult = databack
|
64
|
-
@lastremotecommand = "rwdtinker remote: Port #{port} on host #{ip} "
|
65
|
-
remotehostnotfound = false
|
66
|
-
|
67
|
-
# Rescue the "Address not available' error
|
68
|
-
rescue Errno::EADDRNOTAVAIL
|
69
|
-
puts "Network plugin: Address #{host} is not available to bind."
|
70
|
-
|
71
|
-
# Rescue "permission denied errors
|
72
|
-
rescue Errno::EACCES
|
73
|
-
puts "Network plugin: Access denied when binding interface addresses. Did you try to bind a port under 1024 as a regular user?"
|
74
|
-
|
75
|
-
# Rescue all other errors
|
76
|
-
rescue
|
77
|
-
puts "Network plugin: An error occured."
|
78
|
-
|
79
|
-
# Rescue all other errors
|
80
|
-
end
|
81
|
-
@socket.close
|
82
|
-
|
83
|
-
# Close the socket after use
|
84
|
-
client.close()
|
85
|
-
end
|
3
|
+
require 'socket'
|
4
|
+
|
5
|
+
# Change this line...
|
6
|
+
ip = '127.0.0.1'
|
7
|
+
# And this one...
|
8
|
+
port = $rwdcontrolport1
|
9
|
+
if @a_remoteportinput
|
10
|
+
port = @a_remoteportinput.to_i
|
11
|
+
end
|
12
|
+
|
13
|
+
commandtext = @a_remotecommandinput.to_s
|
14
|
+
remotehostnotfound = true
|
15
|
+
if (commandtext == "stop")
|
16
|
+
begin
|
17
|
+
client = UDPSocket::new()
|
18
|
+
client.send(commandtext, 0, ip, port)
|
19
|
+
@socket = UDPSocket::new()
|
20
|
+
@socket.bind(ip, port)
|
21
|
+
# Rescue the "Address in use" error
|
22
|
+
rescue Errno::EADDRINUSE
|
23
|
+
|
24
|
+
databack, info = client.recv(128)
|
25
|
+
@remotecommandresult = databack
|
26
|
+
@lastremotecommand = "rwdtinker remote:: Port #{port} on host #{ip} ."
|
27
|
+
remotehostnotfound = false
|
28
|
+
|
29
|
+
# Rescue the "Address not available" error
|
30
|
+
rescue Errno::EADDRNOTAVAIL
|
31
|
+
puts "Network plugin: Address #{host} is not available to bind."
|
32
|
+
|
33
|
+
# Rescue "permission denied errors
|
34
|
+
rescue Errno::EACCES
|
35
|
+
puts "Network plugin: Access denied when binding interface addresses. Did you try to bind a port under 1024 as a regular user?"
|
36
|
+
|
37
|
+
# Rescue all other errors
|
38
|
+
rescue
|
39
|
+
puts "Network plugin: An error occured."
|
40
|
+
|
41
|
+
# Rescue all other errors
|
42
|
+
end
|
43
|
+
if remotehostnotfound
|
44
|
+
@remotecommandresult = "Remote Host not running"
|
45
|
+
end
|
46
|
+
@socket.close
|
47
|
+
# Close the socket after use
|
48
|
+
client.close()
|
49
|
+
end
|
86
50
|
|
87
|
-
|
88
|
-
|
89
|
-
|
51
|
+
remotehostnotfound = true
|
52
|
+
if (commandtext == "query")
|
53
|
+
begin
|
54
|
+
client = UDPSocket::new()
|
55
|
+
client.send(commandtext, 0, ip, port)
|
56
|
+
@socket = UDPSocket::new()
|
57
|
+
@socket.bind(ip, port)
|
58
|
+
# Rescue the "Address in use" error
|
59
|
+
rescue Errno::EADDRINUSE
|
60
|
+
|
61
|
+
databack, info = client.recv(128)
|
62
|
+
@remotecommandresult = databack
|
63
|
+
@lastremotecommand = "rwdtinker remote: Port #{port} on host #{ip} "
|
64
|
+
remotehostnotfound = false
|
65
|
+
|
66
|
+
# Rescue the "Address not available' error
|
67
|
+
rescue Errno::EADDRNOTAVAIL
|
68
|
+
puts "Network plugin: Address #{host} is not available to bind."
|
69
|
+
|
70
|
+
# Rescue "permission denied errors
|
71
|
+
rescue Errno::EACCES
|
72
|
+
puts "Network plugin: Access denied when binding interface addresses. Did you try to bind a port under 1024 as a regular user?"
|
73
|
+
|
74
|
+
# Rescue all other errors
|
75
|
+
rescue
|
76
|
+
puts "Network plugin: An error occured."
|
77
|
+
|
78
|
+
# Rescue all other errors
|
79
|
+
end
|
80
|
+
@socket.close
|
81
|
+
|
82
|
+
# Close the socket after use
|
83
|
+
client.close()
|
84
|
+
end
|
85
|
+
|
86
|
+
if remotehostnotfound
|
87
|
+
@remotecommandresult = "Remote Host not running"
|
88
|
+
end
|
90
89
|
end
|
91
90
|
|
92
91
|
# list the remote control options on the screen
|
93
92
|
def showremoteportoptions
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
93
|
+
|
94
|
+
@remoteportoptions = $rwdcontrolports.rwd_options
|
95
|
+
@remotecommandoptions = ["query","stop"].rwd_options
|
96
|
+
end
|
@@ -1,25 +1,19 @@
|
|
1
1
|
# Application RwdTinker orginally (c) 2004 Steven Gibson under GPL.
|
2
2
|
# This application is a framework for writing programs from RubyWebDialogs
|
3
|
-
# http://www.
|
4
|
-
# For more information about RwdTinker see http://www.rubyforge.net/projects/rwdapplications
|
5
|
-
|
3
|
+
# For information see http://www.rubyforge.net/projects/rwdapplications
|
6
4
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
end
|
23
|
-
|
5
|
+
require 'resolv'
|
6
|
+
require 'date'
|
7
|
+
|
8
|
+
# return the platform information
|
9
|
+
def runviewplatform
|
10
|
+
@platformdisplay = "Platform is " + RUBY_PLATFORM + "\n"
|
11
|
+
@platformdisplay = @platformdisplay + "Ruby Version " + VERSION + "\n"
|
12
|
+
@platformdisplay = @platformdisplay + "rwdtinker version " + RwdTinkerVersion + "\n"
|
13
|
+
@platformdisplay = @platformdisplay + "program directory " + $progdir + "\n"
|
14
|
+
@platformdisplay = @platformdisplay + "hostname " + Resolv.getname(Resolv.getaddress("localhost")) + "\n"
|
15
|
+
@platformdisplay = @platformdisplay + "application name " + $rwdapplicationidentity + "\n"
|
16
|
+
@platformdisplay = @platformdisplay + "Date " + Date.today().to_s
|
17
|
+
|
18
|
+
end
|
24
19
|
|
25
|
-
|
@@ -1,24 +1,25 @@
|
|
1
1
|
# code in install rwdtinker applets - now uses ruby.zip module
|
2
|
-
|
3
|
-
|
4
|
-
nametext = "%s" % [@a_installapplet]
|
2
|
+
def installapplet
|
5
3
|
|
6
|
-
|
4
|
+
nametext = "%s" % [@a_installapplet]
|
7
5
|
|
6
|
+
begin # exception trapped block
|
8
7
|
|
9
|
-
require 'extras/zip/zip'
|
10
|
-
fullname = nametext + ".zip"
|
11
|
-
fileName = File.join($zipslocation,fullname)
|
12
8
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
9
|
+
require 'extras/zip/zip'
|
10
|
+
fullname = nametext + ".zip"
|
11
|
+
fileName = File.join($zipslocation,fullname)
|
12
|
+
|
13
|
+
zf = Zip::ZipFile.new(fileName)
|
14
|
+
zf.sort.each {
|
15
|
+
|entry|
|
16
|
+
zf.extract(entry.to_s, entry.to_s)
|
17
|
+
}
|
18
|
+
@installapplettext = Message[:applet_installed]
|
19
|
+
|
20
|
+
rescue
|
21
|
+
@installapplettext = "unzip error - applet may not be installed correctly"
|
22
|
+
end # exception rescue
|
23
|
+
|
24
|
+
end
|
23
25
|
|
24
|
-
end
|
@@ -1,20 +1,21 @@
|
|
1
1
|
# install rwdtinker applet from a long directory location
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
2
|
+
def installgemapplet
|
3
|
+
require 'fileutils'
|
4
|
+
require 'extras/zip/zip'
|
5
|
+
nametext = "%s" % [@a_installapplet]
|
6
|
+
|
7
|
+
begin # exception trapped block
|
8
|
+
fullname = nametext + ".zip"
|
9
|
+
|
10
|
+
zf = Zip::ZipFile.new(fullname)
|
11
|
+
zf.sort.each {
|
12
|
+
|entry|
|
13
|
+
zf.extract(entry.to_s, entry.to_s)
|
14
|
+
}
|
15
|
+
@installapplettext = Message[:applet_installed]
|
16
|
+
|
17
|
+
rescue
|
18
|
+
@installapplettext = "unzip error - applet may not be installed correctly"
|
19
|
+
end # exception rescue
|
20
|
+
end
|
21
|
+
|
@@ -1,19 +1,20 @@
|
|
1
1
|
# download gem of rwdtinker applet
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
2
|
+
def superantcominstallremotegemapplet
|
3
|
+
require 'fileutils'
|
4
|
+
|
5
|
+
tempnametext = "%s" % [@superantcominstallremoteappletinput]
|
6
|
+
temparray = tempnametext.split(/ /)
|
7
|
+
nametext = temparray[0]
|
8
|
+
begin # exception trapped block
|
9
|
+
|
10
|
+
|
11
|
+
commandline = $xpcommand + "gem install " + nametext
|
12
|
+
|
13
|
+
@superantcominstallremotegemappletresult = `#{commandline}`
|
14
|
+
|
15
|
+
rescue
|
16
|
+
@superantcominstallremotegemappletresult = "error during gem install!"
|
17
|
+
end # exception rescue
|
18
|
+
|
19
|
+
end
|
20
|
+
|