lib/quandl/format/dataset/attributes.rb in quandl_format-0.2.7 vs lib/quandl/format/dataset/attributes.rb in quandl_format-0.2.8
- old
+ new
@@ -60,12 +60,10 @@
def data=(rows)
rows = rows.to_table if rows.respond_to?(:to_table)
@data = Quandl::Data.new(rows).to_date
self.column_names = @data.headers if @data.headers.present?
- data_row_count_should_match_column_count!
- data_rows_should_have_equal_columns!
@data
end
def column_names
@column_names ||= []
@@ -84,40 +82,11 @@
end
def attributes
self.class.attribute_names.inject({}){|m,k| m[k] = self.send(k) unless self.send(k).nil?; m }
end
-
- protected
- def data_rows_should_have_equal_columns!
- return if data.blank?
- row_count = data[0].count
- data.each_with_index do |row, index|
- raise_row_column_mismatch!(row, index) unless row.count == row_count
- end
- end
-
- def data_row_count_should_match_column_count!
- return if column_names.blank?
- column_count = column_names.count
- data.each_with_index do |row, index|
- raise_column_count_mismatch!(row, index) unless row.count == column_count
- end
- end
-
-
private
-
- def raise_row_column_mismatch!(row, index)
- m = "Unexpected number of points in this row '#{row}'. Expected #{data[0].count} but found #{row.count} based on #{data[0]}"
- raise Quandl::Error::ColumnCountMismatch.new( row: row, line: index, context: 'data_rows_should_have_equal_columns!' ), m
- end
-
- def raise_column_count_mismatch!(row, index)
- m = "Unexpected number of points in this row '#{row}'. Expected #{column_names.count} but found #{row.count} based on #{column_names}"
- raise Quandl::Error::ColumnCountMismatch.new( row: row, line: index+1, context: 'data_row_count_should_match_column_count!' ), m
- end
def raise_unknown_attribute_error!(key)
m = "Unknown Field '#{key}' valid fields are: #{self.class.meta_attribute_names.join(', ')}"
raise Quandl::Error::UnknownAttribute, m
end
\ No newline at end of file