Module: Hybag
- Defined in:
- lib/hybag.rb,
lib/hybag/version.rb,
lib/hybag/baggable.rb,
lib/hybag/ingester.rb,
lib/hybag/validator.rb,
lib/hybag/bag_writer.rb
Defined Under Namespace
Modules: Baggable
Classes: BagWriter, BulkIngester, Ingester, InvalidBaggable, UndiscoverableModelName, Validator
Constant Summary
collapse
- VERSION =
"0.2.0"
Class Method Summary
collapse
Class Method Details
.bulk_directory?(directory) ⇒ Boolean
30
31
32
|
# File 'lib/hybag.rb', line 30
def self.bulk_directory?(directory)
Dir.glob(File.join(directory,"*")).select{|x| File.directory?(x) && File.exist?(File.join(x, "bagit.txt"))}.length > 0
end
|
.bulk_ingest(directory) ⇒ Object
21
22
23
24
25
26
27
28
|
# File 'lib/hybag.rb', line 21
def self.bulk_ingest(directory)
objects = []
Hybag::BulkIngester.new(directory).each do |ingester|
yield(ingester) if block_given?
objects << ingester.ingest
end
return objects
end
|
.ingest(bag) {|ingester| ... } ⇒ Object
13
14
15
16
17
18
19
|
# File 'lib/hybag.rb', line 13
def self.ingest(bag)
return self.bulk_ingest(bag) if self.bulk_directory?(bag)
bag = BagIt::Bag.new(bag.to_s) unless bag.kind_of?(BagIt::Bag)
ingester = Hybag::Ingester.new(bag)
yield(ingester) if block_given?
ingester.ingest
end
|