ftp_paradise 1.4.5 → 1.5.3

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.

Potentially problematic release.


This version of ftp_paradise might be problematic. Click here for more details.

Files changed (102) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +152 -28
  3. data/bin/{iftp → ftp_paradise_shell} +1 -1
  4. data/doc/README.gen +97 -15
  5. data/doc/todo/{TODO_FOR_FTP_PARADISE_PROJECT.md → todo_for_the_ftp_paradise_project.md} +0 -0
  6. data/ftp_paradise.gemspec +30 -39
  7. data/lib/ftp_paradise/base/base.rb +375 -0
  8. data/lib/ftp_paradise/colours/colours.rb +27 -27
  9. data/lib/ftp_paradise/colours/use_colours.rb +6 -1
  10. data/lib/ftp_paradise/configuration/configuration.rb +7 -4
  11. data/lib/ftp_paradise/connection/README.md +0 -0
  12. data/lib/ftp_paradise/connection/connection.rb +2782 -15
  13. data/lib/ftp_paradise/constants/constants.rb +91 -5
  14. data/lib/ftp_paradise/entry/entry.rb +42 -5
  15. data/lib/ftp_paradise/{connection → gui/gtk3/ftp_client}/constants.rb +33 -21
  16. data/lib/ftp_paradise/gui/{shared_code/ftp_paradise/ftp_paradise_module.rb → gtk3/ftp_client/ftp_client.rb} +658 -170
  17. data/lib/ftp_paradise/gui/gtk3/ftp_client/misc.rb +27 -0
  18. data/lib/ftp_paradise/project/project.rb +11 -15
  19. data/lib/ftp_paradise/requires/require_class_connection.rb +7 -0
  20. data/lib/ftp_paradise/requires/require_net_ftp.rb +7 -0
  21. data/lib/ftp_paradise/requires/require_the_ftp_paradise_project.rb +4 -3
  22. data/lib/ftp_paradise/requires/require_the_ftp_paradise_project_with_the_GUI_bindings.rb +1 -1
  23. data/lib/ftp_paradise/requires/require_the_toplevel_methods.rb +1 -0
  24. data/lib/ftp_paradise/{interactive_ftp → shell}/menu.rb +554 -448
  25. data/lib/ftp_paradise/shell/shell.rb +2321 -0
  26. data/lib/ftp_paradise/toplevel_methods/connect.rb +3 -0
  27. data/lib/ftp_paradise/toplevel_methods/dataset.rb +111 -0
  28. data/lib/ftp_paradise/toplevel_methods/file_related_actions.rb +4 -3
  29. data/lib/ftp_paradise/toplevel_methods/ftp_object.rb +6 -5
  30. data/lib/ftp_paradise/toplevel_methods/login_name.rb +6 -4
  31. data/lib/ftp_paradise/toplevel_methods/misc.rb +19 -0
  32. data/lib/ftp_paradise/toplevel_methods/opn.rb +1 -1
  33. data/lib/ftp_paradise/toplevel_methods/password.rb +4 -2
  34. data/lib/ftp_paradise/toplevel_methods/port.rb +4 -1
  35. data/lib/ftp_paradise/toplevel_methods/remote_url.rb +11 -5
  36. data/lib/ftp_paradise/toplevel_methods/upload_and_download.rb +1 -0
  37. data/lib/ftp_paradise/version/version.rb +6 -1
  38. data/lib/ftp_paradise/www/web_interface.cgi +1 -1
  39. data/lib/ftp_paradise/yaml/automatically_connect_on_startup_of_the_interactive_ftp_shell.yml +0 -0
  40. data/lib/ftp_paradise/yaml/debug.yml +0 -0
  41. data/lib/ftp_paradise/yaml/open_in_default_editor.yml +0 -0
  42. data/lib/ftp_paradise/yaml/show_full_names.yml +0 -0
  43. data/lib/ftp_paradise/yaml/use_colours.yml +0 -0
  44. data/test/testing_minimal_pure_net_ftp_example_to_connect.rb +13 -3
  45. metadata +52 -126
  46. data/lib/ftp_paradise/base/cliner.rb +0 -23
  47. data/lib/ftp_paradise/base/colours.rb +0 -83
  48. data/lib/ftp_paradise/base/prototype.rb +0 -171
  49. data/lib/ftp_paradise/base/reset.rb +0 -29
  50. data/lib/ftp_paradise/connection/data.rb +0 -164
  51. data/lib/ftp_paradise/connection/debug.rb +0 -78
  52. data/lib/ftp_paradise/connection/directory_handling.rb +0 -271
  53. data/lib/ftp_paradise/connection/do_login.rb +0 -108
  54. data/lib/ftp_paradise/connection/download.rb +0 -86
  55. data/lib/ftp_paradise/connection/file_handling.rb +0 -174
  56. data/lib/ftp_paradise/connection/ftp_object.rb +0 -21
  57. data/lib/ftp_paradise/connection/initialize.rb +0 -88
  58. data/lib/ftp_paradise/connection/initialize_a_new_net_ftp_object_with_this_url.rb +0 -20
  59. data/lib/ftp_paradise/connection/is_connected.rb +0 -46
  60. data/lib/ftp_paradise/connection/misc.rb +0 -474
  61. data/lib/ftp_paradise/connection/notify.rb +0 -71
  62. data/lib/ftp_paradise/connection/password.rb +0 -47
  63. data/lib/ftp_paradise/connection/port.rb +0 -33
  64. data/lib/ftp_paradise/connection/remote_pwd.rb +0 -72
  65. data/lib/ftp_paradise/connection/remote_url.rb +0 -164
  66. data/lib/ftp_paradise/connection/remove.rb +0 -143
  67. data/lib/ftp_paradise/connection/reset.rb +0 -78
  68. data/lib/ftp_paradise/connection/run.rb +0 -18
  69. data/lib/ftp_paradise/connection/set_array_available_hosts.rb +0 -27
  70. data/lib/ftp_paradise/connection/set_input.rb +0 -18
  71. data/lib/ftp_paradise/connection/show.rb +0 -153
  72. data/lib/ftp_paradise/connection/sync_ftp_object_onto_the_main_namespace.rb +0 -24
  73. data/lib/ftp_paradise/connection/transfer_mode.rb +0 -163
  74. data/lib/ftp_paradise/connection/upload.rb +0 -253
  75. data/lib/ftp_paradise/connection/use_default_dataset.rb +0 -40
  76. data/lib/ftp_paradise/connection/username.rb +0 -42
  77. data/lib/ftp_paradise/constants/misc.rb +0 -57
  78. data/lib/ftp_paradise/constants/namespace.rb +0 -14
  79. data/lib/ftp_paradise/constants/newline.rb +0 -14
  80. data/lib/ftp_paradise/constants/roebe.rb +0 -31
  81. data/lib/ftp_paradise/constants/roebe_ftp_constants.rb +0 -233
  82. data/lib/ftp_paradise/gui/gtk2/ftp_paradise.rb +0 -34
  83. data/lib/ftp_paradise/gui/gtk3/ftp_paradise.rb +0 -34
  84. data/lib/ftp_paradise/interactive_ftp/constants.rb +0 -103
  85. data/lib/ftp_paradise/interactive_ftp/directory_handling.rb +0 -216
  86. data/lib/ftp_paradise/interactive_ftp/help.rb +0 -50
  87. data/lib/ftp_paradise/interactive_ftp/initialize.rb +0 -27
  88. data/lib/ftp_paradise/interactive_ftp/interactive_ftp.rb +0 -998
  89. data/lib/ftp_paradise/interactive_ftp/main_loop.rb +0 -51
  90. data/lib/ftp_paradise/interactive_ftp/misc.rb +0 -208
  91. data/lib/ftp_paradise/interactive_ftp/mode.rb +0 -124
  92. data/lib/ftp_paradise/interactive_ftp/readline.rb +0 -113
  93. data/lib/ftp_paradise/interactive_ftp/remove.rb +0 -97
  94. data/lib/ftp_paradise/interactive_ftp/reset.rb +0 -90
  95. data/lib/ftp_paradise/interactive_ftp/run.rb +0 -22
  96. data/lib/ftp_paradise/interactive_ftp/show.rb +0 -184
  97. data/lib/ftp_paradise/interactive_ftp/upload.rb +0 -90
  98. data/lib/ftp_paradise/interactive_ftp/user_input.rb +0 -53
  99. data/lib/ftp_paradise/toplevel_methods/can_connect_to_remote_site.rb +0 -28
  100. data/lib/ftp_paradise/toplevel_methods/clear_user_dataset.rb +0 -28
  101. data/lib/ftp_paradise/toplevel_methods/data.rb +0 -31
  102. data/lib/ftp_paradise/toplevel_methods/determine_user_dataset_from_this_hash.rb +0 -37
@@ -1,163 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'ftp_paradise/connection/transfer_mode.rb'
6
- # =========================================================================== #
7
- module FtpParadise
8
-
9
- class Connection
10
-
11
- # ========================================================================= #
12
- # === set_passive_mode
13
- #
14
- # Use this when modifying the passive setting.
15
- # ========================================================================= #
16
- def set_passive_mode
17
- set_transfer_mode :ascii
18
- ftp_object?.passive = true if ftp_object?
19
- end; alias set_passive set_passive_mode # === set_passive
20
-
21
- # ========================================================================= #
22
- # === set_default_transfer_mode
23
- # ========================================================================= #
24
- def set_default_transfer_mode(
25
- be_verbose = :be_quiet
26
- )
27
- set_transfer_mode(DEFAULT_TRANSFER_MODE, be_verbose)
28
- end
29
-
30
- # ========================================================================= #
31
- # === set_transfer_mode
32
- #
33
- # This method will set to either one of two different possibles modes:
34
- #
35
- # (1) :ascii
36
- # (2) :binary
37
- # (3) :passive
38
- #
39
- # Note that :passive "mode" is ascii, with an additional invocation to
40
- # change the transfer mode to .passive.
41
- #
42
- # It will also change passive mode. The argument :default will default
43
- # to the more commonly used ASCII mode.
44
- #
45
- # When would you want to use ASCII mode?
46
- #
47
- # Use ascii mode for:
48
- #
49
- # txt, rtf, html, php
50
- #
51
- # Use binary mode for:
52
- #
53
- # images, videos and similar.
54
- #
55
- # ========================================================================= #
56
- def set_transfer_mode(
57
- i = DEFAULT_TRANSFER_MODE, # Will usually default to :ascii
58
- be_verbose = be_verbose?
59
- )
60
- case be_verbose
61
- when :be_verbose
62
- be_verbose = true
63
- when :be_quiet
64
- be_verbose = false
65
- end
66
- i = :ascii if i == :default
67
- case i
68
- # ======================================================================= #
69
- # === :ascii
70
- # ======================================================================= #
71
- when :ascii
72
- notify_the_user_about(i, __method__) if be_verbose
73
- @internal_hash[:transfer_mode] = :ascii
74
- ftp_object?.binary = false if ftp_object?
75
- # ======================================================================= #
76
- # === :binary
77
- # ======================================================================= #
78
- when :binary
79
- notify_the_user_about(i, __method__) if be_verbose
80
- @internal_hash[:transfer_mode] = :binary
81
- # ======================================================================= #
82
- # === :passive
83
- # ======================================================================= #
84
- when :passive,
85
- :pass
86
- notify_the_user_about(i, __method__) if be_verbose
87
- @internal_hash[:transfer_mode] = :ascii
88
- ftp_object?.passive = true if ftp_object?
89
- else
90
- opnn; e swarn('Not found the following mode: ')+
91
- sfancy(i.to_s)
92
- end
93
- end; alias mode_to_use= set_transfer_mode # === mode_to_use=
94
- alias set_mode set_transfer_mode # === set_mode
95
-
96
- # ========================================================================= #
97
- # === report_transfer_mode_in_use
98
- # ========================================================================= #
99
- def report_transfer_mode_in_use
100
- e "Transfer mode: #{sfancy(transfer_mode?.to_s)}"
101
- end
102
-
103
- # ========================================================================= #
104
- # === set_active
105
- # ========================================================================= #
106
- def set_active
107
- ftp_object?.passive = false
108
- end
109
-
110
- # ========================================================================= #
111
- # === passive_transfer?
112
- # ========================================================================= #
113
- def passive_transfer?
114
- ftp_object?.passive
115
- end; alias passive? passive_transfer? # === passive?
116
-
117
- # ========================================================================= #
118
- # === transfer_mode?
119
- #
120
- # This method will return the currently used transfer_mode. This mode
121
- # can be either :binary, or :ascii. By default it will be :binary.
122
- #
123
- # The transfer mode can be :binary or :text. :ascii is an alias to
124
- # :text.
125
- # ========================================================================= #
126
- def transfer_mode?
127
- @internal_hash[:transfer_mode]
128
- end; alias transfer_mode transfer_mode? # === transfer_mode
129
- alias mode? transfer_mode? # === mode?
130
- alias type transfer_mode? # === type
131
- alias type? transfer_mode? # === type?
132
-
133
- # ========================================================================= #
134
- # === set_ascii
135
- #
136
- # Easier wrapper method.
137
- # ========================================================================= #
138
- def set_ascii
139
- set_transfer_mode :ascii
140
- end; alias set_ascii_mode set_ascii # === set_ascii_mode
141
-
142
- # ========================================================================= #
143
- # === binary?
144
- #
145
- # When this is true, then then all FTP-transfers will be performed in
146
- # binary mode.
147
- #
148
- # Deaults to true.
149
- # ========================================================================= #
150
- def binary?
151
- ftp_object?.binary
152
- end; alias binary binary? # === binary
153
-
154
- # ========================================================================= #
155
- # === set_binary_mode
156
- # ========================================================================= #
157
- def set_binary_mode
158
- set_transfer_mode :binary
159
- ftp_object?.binary = true
160
- end; alias set_binary set_binary_mode # === set_binary
161
- alias set_to_binary_mode set_binary_mode # === set_to_binary_mode
162
-
163
- end; end
@@ -1,253 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'ftp_paradise/connection/upload.rb'
6
- # =========================================================================== #
7
- module FtpParadise
8
-
9
- class Connection
10
-
11
- require 'ftp_paradise/connection/remote_pwd.rb'
12
- require 'ftp_paradise/connection/is_connected.rb'
13
-
14
- # ========================================================================= #
15
- # === upload_binary_file
16
- #
17
- # Use this method to upload a binary file to a remote host.
18
- #
19
- # The first argument `i` is the file that we wish to upload.
20
- #
21
- # The method will make use of the method .putbinaryfile().
22
- #
23
- # Documentation for that file can be found here:
24
- #
25
- # https://ruby-doc.org/stdlib/libdoc/net/ftp/rdoc/Net/FTP.html#method-i-putbinaryfile
26
- #
27
- # ========================================================================= #
28
- def upload_binary_file(
29
- i,
30
- be_verbose = be_verbose?
31
- )
32
- be_verbose = false if be_verbose == :be_silent
33
- if i.is_a? Array
34
- i.each {|entry| upload_binary_file(entry, be_verbose) }
35
- else
36
- i = i.strip.delete(N) # Added Feb 2014.
37
- if be_verbose
38
- notify_the_user_about(i, __method__)
39
- end
40
- begin
41
- # =================================================================== #
42
- # Next we will delegate towards the @ftp_object:
43
- # =================================================================== #
44
- ftp_object?.putbinaryfile(i) # We will use the method .putbinaryfile()
45
- @internal_hash[:uploaded_these_files] << i
46
- if be_verbose
47
- remote_path = rds(remote_path?+'/'+File.basename(i))
48
- e 'Done uploading! The remote path is: '
49
- e " #{simp(remote_path)}"
50
- report_finished_uploading_of_this_file(i)
51
- end
52
- rescue Exception => error
53
- e 'An error happened as we tried to use the method '+simp('upload_binary()')+'.'
54
- e 'The method we used was: '+simp('ftp?.putbinaryfile(i)')
55
- e 'We will feedback this error now (of class '+sfancy(error.class.to_s)+'):'
56
- pp error
57
- end
58
- end
59
- end; alias upload_binary upload_binary_file # === upload_binary
60
- alias upload_this_binary_file upload_binary_file # === upload_this_binary_file()
61
-
62
- # ========================================================================= #
63
- # === upload_file
64
- #
65
- # This method will distinguish between a binary file or a text file,
66
- # based on the transfer mode in use. The default is to work on a
67
- # text file.
68
- # ========================================================================= #
69
- def upload_file(
70
- i,
71
- be_verbose = be_verbose?
72
- )
73
- if File.exist? i
74
- case transfer_mode?
75
- # ===================================================================== #
76
- # === :ascii
77
- # ===================================================================== #
78
- when :ascii,
79
- :text,
80
- :default
81
- upload_this_text_file(i, be_verbose)
82
- # ===================================================================== #
83
- # === :binary
84
- # ===================================================================== #
85
- when :binary
86
- upload_this_binary_file(i, be_verbose)
87
- end
88
- update_raw_listing(:be_quiet)
89
- else
90
- opnn; e "No file called `#{sfile(i)}` appears to exist locally."
91
- end
92
- end; alias upload_this_file upload_file # === upload_this_file
93
-
94
- # ========================================================================= #
95
- # === upload (upload tag)
96
- #
97
- # This method can upload binary files, text files and whole directories.
98
- # Based on that check, the method body will behave differently, and
99
- # delegate to other methods such as upload_directory() or upload_file().
100
- #
101
- # A single file (as String) can be uploaded, or an Array of files. The
102
- # upload activity will transfer the file or the files onto the remote host.
103
- #
104
- # The second argument specifies whether the method will be verbose and
105
- # report back to the user, or whether the method will be quiet,
106
- # defaulting to the return value of the method `be_verbose?`.
107
- # ========================================================================= #
108
- def upload(
109
- i,
110
- be_verbose = be_verbose?
111
- )
112
- be_verbose = false if be_verbose == :be_silent
113
- if i.is_a? Array
114
- i.each {|entry| upload(entry, be_verbose) }
115
- else
116
- if i == '*' # Here we want to upload all files.
117
- i = get_all_local_files
118
- upload(i, be_verbose)
119
- else
120
- # =================================================================== #
121
- # === Handle upload of directories first
122
- # =================================================================== #
123
- if File.directory? i
124
- upload_directory(i, be_verbose)
125
- # =================================================================== #
126
- # === Handle uploading of files next
127
- # =================================================================== #
128
- else
129
- upload_file(i, be_verbose)
130
- end
131
- end
132
- end
133
- end
134
-
135
- # ========================================================================= #
136
- # === uploaded_these_files?
137
- # ========================================================================= #
138
- def uploaded_these_files?
139
- @internal_hash[:uploaded_these_files]
140
- end
141
-
142
- # ========================================================================= #
143
- # === report_finished_uploading_of_this_file
144
- #
145
- # Report that we have finished uploading a file.
146
- #
147
- # We should also denote the leading http part.
148
- # ========================================================================= #
149
- def report_finished_uploading_of_this_file(i)
150
- if is_connected?
151
- remote_path = "http://#{rds(remote_path?+File.basename(i))}"
152
- opnn; e "Done uploading `#{sfile(i)}` to `"\
153
- "#{sdir(remote_path)}`!"
154
- end
155
- end
156
-
157
- # ========================================================================= #
158
- # === puttextfile
159
- #
160
- # This method will transfer a localfile to the remote server in
161
- # ASCII (text) mode. The result will be stored in "remotefile".
162
- #
163
- # If a callback or an associated block is supplied, calls it, passing
164
- # in the transmitted data one line at a time.
165
- # ========================================================================= #
166
- def puttextfile(
167
- local_file, remotefile = File.basename(local_file)
168
- )
169
- begin
170
- ftp_object?.puttextfile(local_file)
171
- @internal_hash[:uploaded_these_files] << local_file
172
- rescue Net::FTPPermError => error
173
- opnn; e swarn('Can not upload `')+sfile(local_file)+swarn('`.')
174
- opnn; e swarn('Reason provided to this method was:')
175
- opnn; e " → #{sfancy(error.to_s)}"
176
- rescue Exception => error
177
- opnn; e "An error happened in the method #{__method__}"
178
- pp error
179
- end
180
- end
181
-
182
- # ========================================================================= #
183
- # === upload_this_text_file
184
- #
185
- # This method can be used to upload one or several text files.
186
- #
187
- # The first argument should be an Array or a String, denoting the
188
- # name/path of the local text file that you wish to upload.
189
- # ========================================================================= #
190
- def upload_this_text_file(
191
- i,
192
- be_verbose = be_verbose?
193
- )
194
- be_verbose = false if be_verbose == :be_silent
195
- if i.is_a? Array
196
- i.each {|entry| upload_this_text_file(entry, be_verbose) }
197
- else
198
- i = i.strip.delete(N) # Added in February 2014.
199
- case i
200
- when :default
201
- ENV['MISC'].to_s+'/SITEMAP.cgi' # <- Makes only sense for text-files anyway.
202
- end
203
- case be_verbose
204
- when :be_quiet
205
- be_verbose = false
206
- end
207
- if be_verbose
208
- notify_the_user_about(i, __method__)
209
- end
210
- puttextfile(i) # <- Delegate towards the method puttextfile().
211
- report_finished_uploading_of_this_file(i) if be_verbose
212
- end
213
- end
214
-
215
- # ========================================================================= #
216
- # === upload_this_directory
217
- #
218
- # This method can be used to upload a local directory to a remote host.
219
- #
220
- # If the first input argument is an Array, then the method will call
221
- # itself recursively. This allows us to transfer several directories
222
- # in one go.
223
- #
224
- # If the input is a (local and existing) directory, then this method
225
- # will also have to create a remote directory, then chdir into it,
226
- # and then upload the content of that local directory to the remote
227
- # host.
228
- # ========================================================================= #
229
- def upload_this_directory(
230
- i,
231
- be_verbose = be_verbose?
232
- )
233
- if i.is_a? Array
234
- i.each {|entry| upload_this_directory(i, be_verbose) }
235
- else
236
- if File.directory? i
237
- unless this_remote_directory_exists?(i)
238
- remote_create_directory(i, be_verbose)
239
- end
240
- change_local_directory(i)
241
- change_remote_directory(i)
242
- report_remote_directory
243
- content = return_directory_content(i) # Last but not least, copy all files to that dir.
244
- content.each {|this_file| upload(this_file) }
245
- else
246
- opnn; e "The given input `#{sfancy(i)}` is not a directory."
247
- opnn; e 'This method can only upload directories.'
248
- end
249
- end
250
- end; alias upload_directory upload_this_directory # === upload_directory
251
- alias upload_these_directories upload_this_directory # === upload_these_directories
252
-
253
- end; end
@@ -1,40 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'ftp_paradise/connection/use_default_dataset.rb'
6
- # =========================================================================== #
7
- module FtpParadise
8
-
9
- class Connection # === FtpParadise::Connection
10
-
11
- require 'ftp_paradise/toplevel_methods/determine_user_dataset_from_this_hash.rb'
12
-
13
- require 'ftp_paradise/connection/do_login.rb'
14
-
15
- # ========================================================================= #
16
- # === use_default_dataset
17
- #
18
- # This method will just take the default dataset for my FTP connections,
19
- # hence the "File.exist?" check.
20
- #
21
- # Additionally we will initialize the default net-ftp object.
22
- # ========================================================================= #
23
- def use_default_dataset(
24
- i = 'shevy' # ← This is the default.
25
- )
26
- if File.exist? FILE_ROEBE_FTP
27
- dataset = YAML.load_file(FILE_ROEBE_FTP)
28
- # ===================================================================== #
29
- # Default to what the user provided to the method.
30
- # ===================================================================== #
31
- use_this_dataset = dataset[i]
32
- # ===================================================================== #
33
- # Set remote-url, username and password through the following method:
34
- # ===================================================================== #
35
- FtpParadise.determine_user_dataset_from_this_hash(use_this_dataset)
36
- do_login
37
- end
38
- end
39
-
40
- end; end
@@ -1,42 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'ftp_paradise/connection/username.rb'
6
- # =========================================================================== #
7
- module FtpParadise
8
-
9
- class Connection
10
-
11
- require 'ftp_paradise/toplevel_methods/login_name.rb'
12
-
13
- # ========================================================================= #
14
- # === set_username
15
- #
16
- # Set the username that you wish to use here. If the input is nil, a
17
- # default name will be used instead.
18
- # ========================================================================= #
19
- def set_username(
20
- i = DEFAULT_USER_NAME
21
- )
22
- i = i.first if i.is_a? Array
23
- i = DEFAULT_USER_NAME if i.nil?
24
- # ======================================================================= #
25
- # The username will be stored on the toplevel-module.
26
- # ======================================================================= #
27
- FtpParadise.set_username(i)
28
- end; alias set_user_name set_username # === set_user_name
29
- alias login_name= set_username # === login_name?
30
- alias set_name set_username # === set_name
31
- alias set_user set_username # === set_user
32
- alias set_login_name set_username # === set_login_name
33
- alias user_name= set_username # === user_name?
34
-
35
- # ========================================================================= #
36
- # === username?
37
- # ========================================================================= #
38
- def username?
39
- FtpParadise.username?.to_s
40
- end; alias user_name? username? # === user_name?
41
-
42
- end; end
@@ -1,57 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen-string-literal: true
4
- # =========================================================================== #
5
- # require 'ftp_paradise/constants/misc.rb'
6
- # =========================================================================== #
7
- module FtpParadise
8
-
9
- require 'ftp_paradise/project/project.rb'
10
-
11
- # ========================================================================= #
12
- # === SHALL_WE_DEBUG
13
- # ========================================================================= #
14
- SHALL_WE_DEBUG = false
15
-
16
- # ========================================================================= #
17
- # === ARRAY_HELP_OPTIONS
18
- #
19
- # This Array is only required in the interactive variant though.
20
- # ========================================================================= #
21
- ARRAY_HELP_OPTIONS = %w(
22
- HELP --help help hel he h hlep
23
- ) # ,'?'
24
-
25
- # ========================================================================= #
26
- # === ARRAY_BINARY_FILES
27
- #
28
- # Just note down the extension names.
29
- # ========================================================================= #
30
- ARRAY_BINARY_FILES = %w(
31
- pdf
32
- docx
33
- odt
34
- doc
35
- )
36
-
37
- # ========================================================================= #
38
- # === ARRAY_VALID_OPTIONS_FOR_EXITING_THE_SHELL
39
- # ========================================================================= #
40
- ARRAY_VALID_OPTIONS_FOR_EXITING_THE_SHELL = %w(
41
- q
42
- quit
43
- exit
44
- break
45
- )
46
-
47
- # ========================================================================= #
48
- # === FtpParadise::FILE_AUTOMATICALLY_CONNECT_ON_STARTUP_OF_THE_INTERACTIVE_FTP_SHELL
49
- # ========================================================================= #
50
- FILE_AUTOMATICALLY_CONNECT_ON_STARTUP_OF_THE_INTERACTIVE_FTP_SHELL =
51
- "#{PROJECT_YAML_DIRECTORY}automatically_connect_on_startup_of_the_interactive_ftp_shell.yml"
52
-
53
- end
54
-
55
- if __FILE__ == $PROGRAM_NAME
56
- puts FtpParadise::FILE_AUTOMATICALLY_CONNECT_ON_STARTUP_OF_THE_INTERACTIVE_FTP_SHELL
57
- end
@@ -1,14 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'ftp_paradise/constants/namespace.rb'
6
- # =========================================================================== #
7
- module FtpParadise
8
-
9
- # ========================================================================= #
10
- # === NAMESPACE
11
- # ========================================================================= #
12
- NAMESPACE = inspect
13
-
14
- end
@@ -1,14 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen-string-literal: true
4
- # =========================================================================== #
5
- # require 'ftp_paradise/constants/newline.rb'
6
- # =========================================================================== #
7
- module FtpParadise
8
-
9
- # ========================================================================= #
10
- # === N
11
- # ========================================================================= #
12
- N = "\n"
13
-
14
- end
@@ -1,31 +0,0 @@
1
- #!/usr/bin/ruby -w
2
- # Encoding: UTF-8
3
- # frozen_string_literal: true
4
- # =========================================================================== #
5
- # require 'ftp_paradise/constants/roebe.rb'
6
- # FILE_ROEBE_FTP
7
- # HOME_DIRECTOY_OF_USER_X
8
- # =========================================================================== #
9
- module FtpParadise
10
-
11
- # =========================================================================== #
12
- # === HOME_DIRECTORY_OF_USER_X
13
- #
14
- # This is also only useful on my home setup.
15
- # =========================================================================== #
16
- HOME_DIRECTORY_OF_USER_X = '/home/x/'
17
-
18
- # =========================================================================== #
19
- # === FILE_ROEBE_FTP
20
- #
21
- # In theory you could change this if you use a similar .yml file.
22
- #
23
- # This will, on my home directory, expand to:
24
- #
25
- # /home/x/DATA/PC/OS/LINUX/FTP/YAML/roebe_ftp.yml
26
- #
27
- # =========================================================================== #
28
- FILE_ROEBE_FTP =
29
- "#{HOME_DIRECTORY_OF_USER_X}DATA/PC/OS/LINUX/FTP/YAML/roebe_ftp.yml"
30
-
31
- end