Class: Omnizip::Formats::Rar::Models::RarVolume

Inherits:
Object
  • Object
show all
Defined in:
lib/omnizip/formats/rar/models/rar_volume.rb

Overview

Represents a RAR volume in a multi-volume set

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path, volume_number = 0) ⇒ RarVolume

Initialize RAR volume

Parameters:

  • path (String)

    Path to volume file

  • volume_number (Integer) (defaults to: 0)

    Volume number (0-based)



16
17
18
19
20
21
22
23
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 16

def initialize(path, volume_number = 0)
  @path = path
  @volume_number = volume_number
  @is_first = false
  @is_last = false
  @size = nil
  @archive_flags = 0
end

Instance Attribute Details

#archive_flagsObject

Returns the value of attribute archive_flags.



9
10
11
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 9

def archive_flags
  @archive_flags
end

#is_firstObject

Returns the value of attribute is_first.



9
10
11
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 9

def is_first
  @is_first
end

#is_lastObject

Returns the value of attribute is_last.



9
10
11
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 9

def is_last
  @is_last
end

#pathObject

Returns the value of attribute path.



9
10
11
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 9

def path
  @path
end

#sizeObject

Returns the value of attribute size.



9
10
11
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 9

def size
  @size
end

#volume_numberObject

Returns the value of attribute volume_number.



9
10
11
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 9

def volume_number
  @volume_number
end

Instance Method Details

#exist?Boolean

Check if file exists

Returns:

  • (Boolean)

    true if volume file exists



49
50
51
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 49

def exist?
  File.exist?(@path)
end

#file_sizeInteger

Get volume file size

Returns:

  • (Integer)

    File size in bytes



42
43
44
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 42

def file_size
  @file_size ||= File.size(@path)
end

#first?Boolean

Check if this is the first volume

Returns:

  • (Boolean)

    true if first volume



28
29
30
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 28

def first?
  @is_first
end

#last?Boolean

Check if this is the last volume

Returns:

  • (Boolean)

    true if last volume



35
36
37
# File 'lib/omnizip/formats/rar/models/rar_volume.rb', line 35

def last?
  @is_last
end