Class: MiniTarball::Header
- Inherits:
-
Object
- Object
- MiniTarball::Header
- Defined in:
- lib/mini_tarball/header.rb
Constant Summary collapse
- BLOCK_SIZE =
Size of each block in the tar file in bytes
512
- TYPE_REGULAR =
bytes
"0"
- TYPE_LONG_LINK =
"L"
- FIELDS =
rubocop:disable Layout/HashAlignment
{ name: { length: 100, type: :chars }, mode: { length: 8, type: :number }, uid: { length: 8, type: :number }, gid: { length: 8, type: :number }, size: { length: 12, type: :number }, mtime: { length: 12, type: :number }, checksum: { length: 8, type: :checksum }, typeflag: { length: 1, type: :chars }, linkname: { length: 100, type: :chars }, magic: { length: 6, type: :chars }, version: { length: 2, type: :chars }, uname: { length: 32, type: :chars }, gname: { length: 32, type: :chars }, devmajor: { length: 8, type: :number }, devminor: { length: 8, type: :number }, prefix: { length: 155, type: :chars } }
Instance Method Summary collapse
-
#initialize(name:, mode: 0, uid: nil, gid: nil, size: 0, mtime: 0, typeflag: TYPE_REGULAR, linkname: "", uname: nil, gname: nil) ⇒ Header
constructor
rubocop:enable Layout/HashAlignment.
- #value_of(key) ⇒ Object
Constructor Details
#initialize(name:, mode: 0, uid: nil, gid: nil, size: 0, mtime: 0, typeflag: TYPE_REGULAR, linkname: "", uname: nil, gname: nil) ⇒ Header
rubocop:enable Layout/HashAlignment
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/mini_tarball/header.rb', line 32 def initialize(name:, mode: 0, uid: nil, gid: nil, size: 0, mtime: 0, typeflag: TYPE_REGULAR, linkname: "", uname: nil, gname: nil) @values = { name: name, mode: mode, uid: uid, gid: gid, size: size, mtime: mtime.to_i, checksum: nil, typeflag: typeflag, linkname: linkname, magic: "ustar ", version: " ", uname: uname, gname: gname, devmajor: nil, devminor: nil, prefix: "" } end |
Instance Method Details
#value_of(key) ⇒ Object
53 54 55 |
# File 'lib/mini_tarball/header.rb', line 53 def value_of(key) @values[key] end |