Sha256: 6270c54fadb40734139fc174cdc45f51085cadbe3db4271048b964a08fbd0350

Contents?: true

Size: 1.45 KB

Versions: 7

Compression:

Stored size: 1.45 KB

Contents

class Quandl::Command::Tasks::Superset < Quandl::Command::Task
  
  autoload_quandl_client
  authenticated_users_only!
  
  description "Define a superset"
  syntax %{quandl superset command [file]

  COMMANDS:
    
    superset new
    superset list
    superset upload [file]
    superset download [code]
    superset delete [code] }

  def execute
    # fire a subcommand if specified
    return self.send(args.shift) if args.first.present? && self.respond_to?(args.first)
    # otherwise default to upload
    upload
  end

  def new
    info Quandl::Client::Superset.example.to_qdf
  end

  def list
    Quandl::Client::Superset.owner('myself').each_in_page do |superset|
      present(superset)
    end
  end
  
  def upload
    Quandl::Format::Superset.foreach( file_or_stdin ) do |superset|
      # execute in parallel
      background_job do
        # upload the superset
        superset.save if superset.respond_to?(:valid?) && superset.valid?
        # present the result
        present(superset)
      end
    end
  end
  
  def download
    each_line_in_background( args_or_stdin ) do |code|
      # find superset
      dataset = Quandl::Client::Superset.find( code )
      # present
      present dataset, output_format: :qdf
    end
  end
  
  def delete
    each_line_in_background( args_or_stdin ) do |code|
      # find
      dataset = Quandl::Client::Dataset.find( code )
      # destroy
      dataset.destroy
      # present
      present dataset
    end
  end
 
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
quandl-0.4.4 lib/quandl/command/tasks/superset.rb
quandl-0.4.3 lib/quandl/command/tasks/superset.rb
quandl-0.4.2 lib/quandl/command/tasks/superset.rb
quandl-0.4.1 lib/quandl/command/tasks/superset.rb
quandl-0.4.0 lib/quandl/command/tasks/superset.rb
quandl-0.3.7 lib/quandl/command/tasks/superset.rb
quandl-0.3.6 lib/quandl/command/tasks/superset.rb