class Raykit::SourceImports

def self.load(filename)

def self.load(filename)
    sourceImports = SourceImports.new([])
    array=JSON.parse(IO.read(filename))
    array.each{|hash|
        sourceImport = SourceImport.new(hash['remote'],hash['source'],hash['glob'],hash['target'],hash['commit'])
        sourceImports << sourceImport
    }
    sourceImports
end

def copy

def copy
    self.each{|si|
        si.copy
    }
end

def initialize(urls)

def initialize(urls)
    urls.each{|url|
        self << SourceImport.new(url,'src','**/*.cs','dep','')
    }
end

def save(filename)

def save(filename)
    File.open(filename,'w'){|f|
        f.write(JSON.pretty_generate(self))
    }
end

def targets_exist?

def targets_exist?
    self.each{|si|
        return false if(!Dir.exist?(si.target))
    }
    true
end

def update

def update
    self.each{|si|
        si.update
    }
end