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



1648
1649
1650
# File 'lib/carddb/collection.rb', line 1648

def access_mode
  data['accessMode']
end

#account_idObject



1608
1609
1610
# File 'lib/carddb/collection.rb', line 1608

def 
  data['accountId']
end

#api_application_idObject



1612
1613
1614
# File 'lib/carddb/collection.rb', line 1612

def api_application_id
  data['apiApplicationId']
end

#archived?Boolean

Returns:

  • (Boolean)


1660
1661
1662
# File 'lib/carddb/collection.rb', line 1660

def archived?
  state == 'ARCHIVED'
end

#archived_atObject



1668
1669
1670
# File 'lib/carddb/collection.rb', line 1668

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

#created_atObject



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

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

#created_by_account_idObject



1600
1601
1602
# File 'lib/carddb/collection.rb', line 1600

def 
  data['createdByAccountId']
end

#created_by_api_application_idObject



1604
1605
1606
# File 'lib/carddb/collection.rb', line 1604

def created_by_api_application_id
  data['createdByApiApplicationId']
end

#deleted?Boolean

Returns:

  • (Boolean)


1664
1665
1666
# File 'lib/carddb/collection.rb', line 1664

def deleted?
  state == 'DELETED'
end

#deleted_atObject



1672
1673
1674
# File 'lib/carddb/collection.rb', line 1672

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

#descriptionObject



1636
1637
1638
# File 'lib/carddb/collection.rb', line 1636

def description
  data['description']
end

#discoverabilityObject



1652
1653
1654
# File 'lib/carddb/collection.rb', line 1652

def discoverability
  data['discoverability']
end

#draft_revisionObject



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

def draft_revision
  data['draftRevision']
end

#draft_updated_atObject



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

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

#draft_updated_by_account_idObject



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

def 
  data['draftUpdatedByAccountId']
end

#draft_updated_by_api_application_idObject



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

def draft_updated_by_api_application_id
  data['draftUpdatedByApiApplicationId']
end

#entriesObject



1704
1705
1706
# File 'lib/carddb/collection.rb', line 1704

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

#environmentObject



1596
1597
1598
# File 'lib/carddb/collection.rb', line 1596

def environment
  data['environment']
end

#external_refObject



1684
1685
1686
# File 'lib/carddb/collection.rb', line 1684

def external_ref
  data['externalRef']
end

#external_ref_api_application_idObject



1680
1681
1682
# File 'lib/carddb/collection.rb', line 1680

def external_ref_api_application_id
  data['externalRefApiApplicationId']
end

#external_subject_refObject



1688
1689
1690
# File 'lib/carddb/collection.rb', line 1688

def external_subject_ref
  data['externalSubjectRef']
end

#format_keyObject



1640
1641
1642
# File 'lib/carddb/collection.rb', line 1640

def format_key
  data['formatKey']
end

#gameObject



1620
1621
1622
# File 'lib/carddb/collection.rb', line 1620

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

#game_idObject



1616
1617
1618
# File 'lib/carddb/collection.rb', line 1616

def game_id
  data['gameId']
end

#has_unpublished_changes?Boolean

Returns:

  • (Boolean)


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

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

#idObject



1580
1581
1582
# File 'lib/carddb/collection.rb', line 1580

def id
  data['id']
end

#identifierObject



1628
1629
1630
# File 'lib/carddb/collection.rb', line 1628

def identifier
  data['identifier']
end

#latest_published_versionObject



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

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

#metadataObject



1700
1701
1702
# File 'lib/carddb/collection.rb', line 1700

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

#owner_account_idObject



1588
1589
1590
# File 'lib/carddb/collection.rb', line 1588

def 
  data['ownerAccountId']
end

#owner_api_application_idObject



1592
1593
1594
# File 'lib/carddb/collection.rb', line 1592

def owner_api_application_id
  data['ownerApiApplicationId']
end

#owner_typeObject



1584
1585
1586
# File 'lib/carddb/collection.rb', line 1584

def owner_type
  data['ownerType']
end

#published_atObject



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

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

#ruleset_idObject



1692
1693
1694
# File 'lib/carddb/collection.rb', line 1692

def ruleset_id
  data['rulesetId']
end

#section_definitionsObject



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

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

#slugObject



1624
1625
1626
# File 'lib/carddb/collection.rb', line 1624

def slug
  data['slug']
end

#source_urlObject



1696
1697
1698
# File 'lib/carddb/collection.rb', line 1696

def source_url
  data['sourceUrl']
end

#stateObject



1656
1657
1658
# File 'lib/carddb/collection.rb', line 1656

def state
  data['state']
end

#titleObject



1632
1633
1634
# File 'lib/carddb/collection.rb', line 1632

def title
  data['title']
end

#unpublished_atObject



1676
1677
1678
# File 'lib/carddb/collection.rb', line 1676

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

#updated_atObject



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

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

#visibilityObject



1644
1645
1646
# File 'lib/carddb/collection.rb', line 1644

def visibility
  data['visibility']
end