5cc80a0f24930027dddd82f8b51ec50348d7f1c0
[quanlib.git] / cover.rb
1
2 class Cover
3   def initialize(inputStream, path, mimeType)
4     @data = inputStream.read
5     @path = path
6     @mimeType = mimeType
7   end
8
9   def inspect
10     info = []
11     if nil != @data
12       info.push('size=' + @data.length.to_s)
13     else
14       info.push('empty')
15     end
16     if nil != @path
17       info.push('path="' + @path + '"')
18     end
19     if nil != @mimeType
20       info.push('mimeType="' + @mimeType + '"')
21     end
22     return '(Cover:' + info.join(',') + ')'
23   end
24
25   def read_image(filename)
26     open(filename, 'rb') do |fd|
27       @data = fd.read()
28     end
29   end
30
31   def to_s
32     return inspect
33   end
34
35   def write_image(outputDir, filename)
36     open(outputDir + '/' + filename, 'wb') do |fd|
37       fd.write(@data)
38     end
39     return filename, @mimeType
40   end
41
42   protected
43   def getExt
44     pos = @path.rindex('.')
45     if nil == pos
46       return '.img'
47     end
48     return @path.slice(pos, @path.length)
49   end
50 end
51