Class: Taxonifi::Lumper::Clump
- Inherits:
-
Object
- Object
- Taxonifi::Lumper::Clump
- Defined in:
- lib/taxonifi/lumper/clump.rb
Instance Attribute Summary collapse
-
#annonymous_collection_index ⇒ Object
Returns the value of attribute annonymous_collection_index.
-
#collections ⇒ Object
Returns the value of attribute collections.
-
#csv ⇒ Object
Returns the value of attribute csv.
Class Method Summary collapse
Instance Method Summary collapse
- #add_collection(name = nil, collection = nil) ⇒ Object
- #add_csv(csv) ⇒ Object
- #add_name_collection(options) ⇒ Object
- #add_ref_collection(options) ⇒ Object
- #get_from_csv(options = {}) ⇒ Object
- #increment_annonymous_collection_index ⇒ Object
-
#initialize(csv = nil) ⇒ Clump
constructor
A new instance of Clump.
- #link(collection1, collection2, link_method) ⇒ Object
- #next_available_collection_name ⇒ Object
- #remove_csv ⇒ Object
Constructor Details
#initialize(csv = nil) ⇒ Clump
Returns a new instance of Clump.
13 14 15 16 17 18 |
# File 'lib/taxonifi/lumper/clump.rb', line 13 def initialize(csv = nil) @collections = {} @annonymous_collection_index = 0 @csv = csv if !csv.nil? @csv ||= nil end |
Instance Attribute Details
#annonymous_collection_index ⇒ Object
Returns the value of attribute annonymous_collection_index.
10 11 12 |
# File 'lib/taxonifi/lumper/clump.rb', line 10 def annonymous_collection_index @annonymous_collection_index end |
#collections ⇒ Object
Returns the value of attribute collections.
9 10 11 |
# File 'lib/taxonifi/lumper/clump.rb', line 9 def collections @collections end |
#csv ⇒ Object
Returns the value of attribute csv.
11 12 13 |
# File 'lib/taxonifi/lumper/clump.rb', line 11 def csv @csv end |
Class Method Details
.link_name_collection_and_ref_collection(options = {}) ⇒ Object
98 99 100 101 102 103 104 |
# File 'lib/taxonifi/lumper/clump.rb', line 98 def self.link_name_collection_and_ref_collection( = {}) opt = { :nc => Taxonifi::Model::NameCollection.new, :rc => Taxonifi::Model::RefCollection.new, :by => :row_number } end |
Instance Method Details
#add_collection(name = nil, collection = nil) ⇒ Object
87 88 89 90 91 |
# File 'lib/taxonifi/lumper/clump.rb', line 87 def add_collection(name = nil, collection = nil) return false if (name.nil? || collection.nil?) return false if @collections.keys.include?(name) @collections.merge!(name => collection) end |
#add_csv(csv) ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/taxonifi/lumper/clump.rb', line 20 def add_csv(csv) if @csv.nil? @csv = csv else return false end end |
#add_name_collection(options) ⇒ Object
75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/taxonifi/lumper/clump.rb', line 75 def add_name_collection() opts = { :name => next_available_collection_name }.merge!() if add_collection(opts[:name],Taxonifi::Model::NameCollection.new(opts)) increment_annonymous_collection_index if opts[:name] == next_available_collection_name true else false end end |
#add_ref_collection(options) ⇒ Object
63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/taxonifi/lumper/clump.rb', line 63 def add_ref_collection() opts = { :name => next_available_collection_name }.merge!() if add_collection(opts[:name],Taxonifi::Model::RefCollection.new(opts)) increment_annonymous_collection_index if (opts[:name] == next_available_collection_name) true else false end end |
#get_from_csv(options = {}) ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/taxonifi/lumper/clump.rb', line 37 def get_from_csv( = {}) opts = { collection: :name }.merge!() raise if @csv.nil? raise if not Taxonifi::Model::Collection.subclass_prefixes.include?(opts[:collection].to_s) case opts[:collection] when :name add_name_collection(opts) when :ref add_ref_collection(opts) else raise end end |
#increment_annonymous_collection_index ⇒ Object
58 59 60 61 |
# File 'lib/taxonifi/lumper/clump.rb', line 58 def increment_annonymous_collection_index @annonymous_collection_index += 1 true end |
#link(collection1, collection2, link_method) ⇒ Object
94 95 96 |
# File 'lib/taxonifi/lumper/clump.rb', line 94 def link(collection1, collection2, link_method) end |
#next_available_collection_name ⇒ Object
54 55 56 |
# File 'lib/taxonifi/lumper/clump.rb', line 54 def next_available_collection_name "collection#{annonymous_collection_index}" end |
#remove_csv ⇒ Object
28 29 30 31 32 33 34 35 |
# File 'lib/taxonifi/lumper/clump.rb', line 28 def remove_csv if !@csv.nil? @csv = nil true else false end end |