lib/gitrb/blob.rb in gitrb-0.1.8 vs lib/gitrb/blob.rb in gitrb-0.1.9

- old
+ new

@@ -1,16 +1,43 @@ module Gitrb # This class stores the raw string data of a blob class Blob < GitObject - attr_accessor :data, :mode + attr_reader :data, :mode # Initialize a Blob def initialize(options = {}) super(options) @data = options[:data] @mode = options[:mode] || 0100644 + @modified = true if !id + end + + def modified? + @modified + end + + # Set mode + def mode=(mode) + if mode != @mode + @mode = mode + @modified = true + end + end + + # Set data + def data=(data) + if data != @data + @data = data + @modified = true + end + end + + # Set new repository (modified flag is reset) + def id=(id) + @modified = false + super end def type :blob end