Class: CardDB::Deck

Inherits:
Resource show all
Defined in:
lib/carddb/collection.rb

Overview

Wrapper for hosted Deck objects

Instance Attribute Summary

Attributes inherited from Resource

#client, #data

Instance Method Summary collapse

Methods inherited from Resource

#[], #initialize, #key?, #to_h, #to_json

Constructor Details

This class inherits a constructor from CardDB::Resource

Instance Method Details

#access_modeObject



1698
1699
1700
# File 'lib/carddb/collection.rb', line 1698

def access_mode
  data['accessMode']
end

#account_idObject



1658
1659
1660
# File 'lib/carddb/collection.rb', line 1658

def 
  data['accountId']
end

#api_application_idObject



1662
1663
1664
# File 'lib/carddb/collection.rb', line 1662

def api_application_id
  data['apiApplicationId']
end

#archived?Boolean

Returns:

  • (Boolean)


1710
1711
1712
# File 'lib/carddb/collection.rb', line 1710

def archived?
  state == 'ARCHIVED'
end

#archived_atObject



1718
1719
1720
# File 'lib/carddb/collection.rb', line 1718

def archived_at
  parse_time(data['archivedAt'])
end

#created_atObject



1792
1793
1794
# File 'lib/carddb/collection.rb', line 1792

def created_at
  parse_time(data['createdAt'])
end

#created_by_account_idObject



1650
1651
1652
# File 'lib/carddb/collection.rb', line 1650

def 
  data['createdByAccountId']
end

#created_by_api_application_idObject



1654
1655
1656
# File 'lib/carddb/collection.rb', line 1654

def created_by_api_application_id
  data['createdByApiApplicationId']
end

#deleted?Boolean

Returns:

  • (Boolean)


1714
1715
1716
# File 'lib/carddb/collection.rb', line 1714

def deleted?
  state == 'DELETED'
end

#deleted_atObject



1722
1723
1724
# File 'lib/carddb/collection.rb', line 1722

def deleted_at
  parse_time(data['deletedAt'])
end

#descriptionObject



1686
1687
1688
# File 'lib/carddb/collection.rb', line 1686

def description
  data['description']
end

#discoverabilityObject



1702
1703
1704
# File 'lib/carddb/collection.rb', line 1702

def discoverability
  data['discoverability']
end

#draft_revisionObject



1772
1773
1774
# File 'lib/carddb/collection.rb', line 1772

def draft_revision
  data['draftRevision']
end

#draft_updated_atObject



1776
1777
1778
# File 'lib/carddb/collection.rb', line 1776

def draft_updated_at
  parse_time(data['draftUpdatedAt'])
end

#draft_updated_by_account_idObject



1780
1781
1782
# File 'lib/carddb/collection.rb', line 1780

def 
  data['draftUpdatedByAccountId']
end

#draft_updated_by_api_application_idObject



1784
1785
1786
# File 'lib/carddb/collection.rb', line 1784

def draft_updated_by_api_application_id
  data['draftUpdatedByApiApplicationId']
end

#entriesObject



1754
1755
1756
# File 'lib/carddb/collection.rb', line 1754

def entries
  @entries ||= (data['entries'] || []).map { |entry| DeckEntry.new(entry, client: client) }
end

#environmentObject



1646
1647
1648
# File 'lib/carddb/collection.rb', line 1646

def environment
  data['environment']
end

#external_refObject



1734
1735
1736
# File 'lib/carddb/collection.rb', line 1734

def external_ref
  data['externalRef']
end

#external_ref_api_application_idObject



1730
1731
1732
# File 'lib/carddb/collection.rb', line 1730

def external_ref_api_application_id
  data['externalRefApiApplicationId']
end

#external_subject_refObject



1738
1739
1740
# File 'lib/carddb/collection.rb', line 1738

def external_subject_ref
  data['externalSubjectRef']
end

#format_keyObject



1690
1691
1692
# File 'lib/carddb/collection.rb', line 1690

def format_key
  data['formatKey']
end

#gameObject



1670
1671
1672
# File 'lib/carddb/collection.rb', line 1670

def game
  @game ||= data['game'] ? Game.new(data['game'], client: client) : nil
end

#game_idObject



1666
1667
1668
# File 'lib/carddb/collection.rb', line 1666

def game_id
  data['gameId']
end

#has_unpublished_changes?Boolean

Returns:

  • (Boolean)


1788
1789
1790
# File 'lib/carddb/collection.rb', line 1788

def has_unpublished_changes?
  !!data['hasUnpublishedChanges']
end

#idObject



1630
1631
1632
# File 'lib/carddb/collection.rb', line 1630

def id
  data['id']
end

#identifierObject



1678
1679
1680
# File 'lib/carddb/collection.rb', line 1678

def identifier
  data['identifier']
end

#latest_published_versionObject



1764
1765
1766
# File 'lib/carddb/collection.rb', line 1764

def latest_published_version
  @latest_published_version ||= data['latestPublishedVersion'] ? DeckVersion.new(data['latestPublishedVersion'], client: client) : nil
end

#metadataObject



1750
1751
1752
# File 'lib/carddb/collection.rb', line 1750

def 
  data['metadata'] || {}
end

#owner_account_idObject



1638
1639
1640
# File 'lib/carddb/collection.rb', line 1638

def 
  data['ownerAccountId']
end

#owner_api_application_idObject



1642
1643
1644
# File 'lib/carddb/collection.rb', line 1642

def owner_api_application_id
  data['ownerApiApplicationId']
end

#owner_typeObject



1634
1635
1636
# File 'lib/carddb/collection.rb', line 1634

def owner_type
  data['ownerType']
end

#published_atObject



1768
1769
1770
# File 'lib/carddb/collection.rb', line 1768

def published_at
  parse_time(data['publishedAt'])
end

#ruleset_idObject



1742
1743
1744
# File 'lib/carddb/collection.rb', line 1742

def ruleset_id
  data['rulesetId']
end

#section_definitionsObject



1758
1759
1760
1761
1762
# File 'lib/carddb/collection.rb', line 1758

def section_definitions
  @section_definitions ||= (data['sectionDefinitions'] || []).map do |definition|
    DeckSectionDefinition.new(definition, client: client)
  end
end

#slugObject



1674
1675
1676
# File 'lib/carddb/collection.rb', line 1674

def slug
  data['slug']
end

#source_urlObject



1746
1747
1748
# File 'lib/carddb/collection.rb', line 1746

def source_url
  data['sourceUrl']
end

#stateObject



1706
1707
1708
# File 'lib/carddb/collection.rb', line 1706

def state
  data['state']
end

#titleObject



1682
1683
1684
# File 'lib/carddb/collection.rb', line 1682

def title
  data['title']
end

#unpublished_atObject



1726
1727
1728
# File 'lib/carddb/collection.rb', line 1726

def unpublished_at
  parse_time(data['unpublishedAt'])
end

#updated_atObject



1796
1797
1798
# File 'lib/carddb/collection.rb', line 1796

def updated_at
  parse_time(data['updatedAt'])
end

#visibilityObject



1694
1695
1696
# File 'lib/carddb/collection.rb', line 1694

def visibility
  data['visibility']
end