class Capsium::Package::Storage
Attributes
datasets
[R]
Array[Dataset]
path
[R]
String
Public Class Methods
(String path) → void
Source
# File lib/capsium/package/storage.rb, line 14 def initialize(path) @path = path @dir = File.dirname(path) @config = if File.exist?(path) StorageConfig.from_json(File.read(path)) else StorageConfig.new end @datasets = load_datasets end
Public Instance Methods
() → Hash[String, DatasetConfig]
Source
# File lib/capsium/package/storage.rb, line 25 def data_sets @config.data_sets end
(String name) → Dataset?
Source
# File lib/capsium/package/storage.rb, line 35 def dataset(name) @datasets.find { |dataset| dataset.name == name } end
() → Array[String]
Source
# File lib/capsium/package/storage.rb, line 39 def dataset_names data_sets.keys.sort end
() → bool
Source
# File lib/capsium/package/storage.rb, line 43 def empty? data_sets.empty? end
() → Array[Dataset]
Source
# File lib/capsium/package/storage.rb, line 29 def load_datasets data_sets.map do |name, dataset_config| dataset_config.to_dataset(name, @dir) end end
(?String output_path) → void
Source
# File lib/capsium/package/storage.rb, line 47 def save_to_file(output_path = @path) File.write(output_path, to_json) end