Class: OsslRsa::FileOp
- Inherits:
-
Object
- Object
- OsslRsa::FileOp
- Defined in:
- lib/ossl_rsa/file_op.rb
Overview
File process class.
Constant Summary collapse
- PRIVATE_FILE =
private file.
"private"
- PUBLIC_FILE =
public file.
"public"
- PEM_EXTENSION =
pem extension.
".pem"
- DER_EXTENSION =
der extension.
".der"
Class Method Summary collapse
-
.create_file_name(file_name, add_now = false) ⇒ String
create file name.
-
.create_file_path(dir_path, mode, add_now = false) ⇒ Hash
create save file path.
-
.get_write_mode(mode) ⇒ String
get file write mode.
-
.puts(file_path, write_mode, key_pair) ⇒ Object
write to file.
-
.save(dir_path, key_pair, mode, add_now = false) ⇒ Hash
save file private and public key.
-
.save_file(key_pair, file_path_pair, mode) ⇒ Hash
save file private and public key.
-
.save_one_file(file_path, key_pair, mode) ⇒ Object
save one file.
-
.write(file_path, write_mode, key) ⇒ Object
write to file.
Class Method Details
.create_file_name(file_name, add_now = false) ⇒ String
create file name.
96 97 98 99 100 101 102 103 104 105 106 |
# File 'lib/ossl_rsa/file_op.rb', line 96 def self.create_file_name(file_name, add_now=false) # if add_now = false, return file_name return file_name unless add_now # add date string. if add_now file_name = "#{file_name}_#{DateTime.now.strftime('%Y%m%d%H%M%S')}" end file_name end |
.create_file_path(dir_path, mode, add_now = false) ⇒ Hash
create save file path.
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/ossl_rsa/file_op.rb', line 75 def self.create_file_path(dir_path, mode, add_now=false) # create file path. private_path = create_file_name(PRIVATE_FILE, add_now) public_path = create_file_name(PUBLIC_FILE, add_now) file_path_pair = nil # add extension. if mode == PEM file_path_pair = { private: File.join(dir_path, "#{private_path}#{PEM_EXTENSION}"), public: File.join(dir_path, "#{public_path}#{PEM_EXTENSION}")} elsif mode == DER file_path_pair = { private: File.join(dir_path, "#{private_path}#{DER_EXTENSION}"), public: File.join(dir_path, "#{public_path}#{DER_EXTENSION}")} end file_path_pair end |
.get_write_mode(mode) ⇒ String
get file write mode.
111 112 113 114 115 116 117 |
# File 'lib/ossl_rsa/file_op.rb', line 111 def self.get_write_mode(mode) # if pem, return w mode. return "w" if mode == PEM "wb" end |
.puts(file_path, write_mode, key_pair) ⇒ Object
write to file.
123 124 125 126 127 128 129 |
# File 'lib/ossl_rsa/file_op.rb', line 123 def self.puts(file_path, write_mode, key_pair) # write to file. File.open(file_path, write_mode) do |file| file.puts(key_pair[:private], key_pair[:public]) end end |
.save(dir_path, key_pair, mode, add_now = false) ⇒ Hash
save file private and public key.
24 25 26 27 28 29 30 |
# File 'lib/ossl_rsa/file_op.rb', line 24 def self.save(dir_path, key_pair, mode, add_now=false) file_path_pair = create_file_path(dir_path, mode, add_now) # save file. save_file(key_pair, file_path_pair, mode) end |
.save_file(key_pair, file_path_pair, mode) ⇒ Hash
save file private and public key.
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
# File 'lib/ossl_rsa/file_op.rb', line 49 def self.save_file(key_pair, file_path_pair, mode) save_path_pair = file_path_pair write_mode = get_write_mode(mode) # save file. unless key_pair[:private].nil? write(save_path_pair[:private], write_mode, key_pair[:private]) else save_path_pair[:private] = nil end unless key_pair[:public].nil? write(save_path_pair[:public], write_mode, key_pair[:public]) else save_path_pair[:public] = nil end save_path_pair end |
.save_one_file(file_path, key_pair, mode) ⇒ Object
save one file.
36 37 38 39 40 41 42 |
# File 'lib/ossl_rsa/file_op.rb', line 36 def self.save_one_file(file_path, key_pair, mode) write_mode = get_write_mode(mode) # save file. puts(file_path, write_mode, key_pair) end |
.write(file_path, write_mode, key) ⇒ Object
write to file.
135 136 137 138 139 140 141 |
# File 'lib/ossl_rsa/file_op.rb', line 135 def self.write(file_path, write_mode, key) # write to file. File.open(file_path, write_mode) do |file| file.write(key) end end |