Sha256: 47098be52d19a645342b7543c4a41b7c665ed8c3324d601a7895f4c03b70cd78

Contents?: true

Size: 747 Bytes

Versions: 3

Compression:

Stored size: 747 Bytes

Contents

module TaskHelper
  class Database < Base
    data_member :name, :dtypes_count, :entities_count, :properties_count

    def self.all
      get(route: 'apps.json')['databases'].map { |d| new d }
    end

    def self.find_by_name(name)
      find_by(name: name)
    end

    def self.find_by(search)
      if response = get(route: 'apps/search.json', params: search)
        new response['database'] if response['database']
      end
    end

    def self.find(id)
      if response = get(route: "apps/#{id}.json")
        new response['database'] if response['database']
      end
    end

    def forms
      @forms ||= Form.get(route: "apps/#{id}/entities.json")['forms']
        .map { |form| Form.new(form, database: self) }
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
task_helper-0.0.3 lib/task_helper/database.rb
task_helper-0.0.2 lib/task_helper/database.rb
task_helper-0.0.1 lib/task_helper/database.rb