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



857
858
859
# File 'lib/carddb/collection.rb', line 857

def access_mode
  data['accessMode']
end

#account_idObject



817
818
819
# File 'lib/carddb/collection.rb', line 817

def 
  data['accountId']
end

#api_application_idObject



821
822
823
# File 'lib/carddb/collection.rb', line 821

def api_application_id
  data['apiApplicationId']
end

#archived?Boolean

Returns:

  • (Boolean)


869
870
871
# File 'lib/carddb/collection.rb', line 869

def archived?
  state == 'ARCHIVED'
end

#archived_atObject



877
878
879
# File 'lib/carddb/collection.rb', line 877

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

#created_atObject



951
952
953
# File 'lib/carddb/collection.rb', line 951

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

#created_by_account_idObject



809
810
811
# File 'lib/carddb/collection.rb', line 809

def 
  data['createdByAccountId']
end

#created_by_api_application_idObject



813
814
815
# File 'lib/carddb/collection.rb', line 813

def created_by_api_application_id
  data['createdByApiApplicationId']
end

#deleted?Boolean

Returns:

  • (Boolean)


873
874
875
# File 'lib/carddb/collection.rb', line 873

def deleted?
  state == 'DELETED'
end

#deleted_atObject



881
882
883
# File 'lib/carddb/collection.rb', line 881

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

#descriptionObject



845
846
847
# File 'lib/carddb/collection.rb', line 845

def description
  data['description']
end

#discoverabilityObject



861
862
863
# File 'lib/carddb/collection.rb', line 861

def discoverability
  data['discoverability']
end

#draft_revisionObject



931
932
933
# File 'lib/carddb/collection.rb', line 931

def draft_revision
  data['draftRevision']
end

#draft_updated_atObject



935
936
937
# File 'lib/carddb/collection.rb', line 935

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

#draft_updated_by_account_idObject



939
940
941
# File 'lib/carddb/collection.rb', line 939

def 
  data['draftUpdatedByAccountId']
end

#draft_updated_by_api_application_idObject



943
944
945
# File 'lib/carddb/collection.rb', line 943

def draft_updated_by_api_application_id
  data['draftUpdatedByApiApplicationId']
end

#entriesObject



913
914
915
# File 'lib/carddb/collection.rb', line 913

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

#environmentObject



805
806
807
# File 'lib/carddb/collection.rb', line 805

def environment
  data['environment']
end

#external_refObject



893
894
895
# File 'lib/carddb/collection.rb', line 893

def external_ref
  data['externalRef']
end

#external_ref_api_application_idObject



889
890
891
# File 'lib/carddb/collection.rb', line 889

def external_ref_api_application_id
  data['externalRefApiApplicationId']
end

#external_subject_refObject



897
898
899
# File 'lib/carddb/collection.rb', line 897

def external_subject_ref
  data['externalSubjectRef']
end

#format_keyObject



849
850
851
# File 'lib/carddb/collection.rb', line 849

def format_key
  data['formatKey']
end

#gameObject



829
830
831
# File 'lib/carddb/collection.rb', line 829

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

#game_idObject



825
826
827
# File 'lib/carddb/collection.rb', line 825

def game_id
  data['gameId']
end

#has_unpublished_changes?Boolean

Returns:

  • (Boolean)


947
948
949
# File 'lib/carddb/collection.rb', line 947

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

#idObject



789
790
791
# File 'lib/carddb/collection.rb', line 789

def id
  data['id']
end

#identifierObject



837
838
839
# File 'lib/carddb/collection.rb', line 837

def identifier
  data['identifier']
end

#latest_published_versionObject



923
924
925
# File 'lib/carddb/collection.rb', line 923

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

#metadataObject



909
910
911
# File 'lib/carddb/collection.rb', line 909

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

#owner_account_idObject



797
798
799
# File 'lib/carddb/collection.rb', line 797

def 
  data['ownerAccountId']
end

#owner_api_application_idObject



801
802
803
# File 'lib/carddb/collection.rb', line 801

def owner_api_application_id
  data['ownerApiApplicationId']
end

#owner_typeObject



793
794
795
# File 'lib/carddb/collection.rb', line 793

def owner_type
  data['ownerType']
end

#published_atObject



927
928
929
# File 'lib/carddb/collection.rb', line 927

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

#ruleset_idObject



901
902
903
# File 'lib/carddb/collection.rb', line 901

def ruleset_id
  data['rulesetId']
end

#section_definitionsObject



917
918
919
920
921
# File 'lib/carddb/collection.rb', line 917

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

#slugObject



833
834
835
# File 'lib/carddb/collection.rb', line 833

def slug
  data['slug']
end

#source_urlObject



905
906
907
# File 'lib/carddb/collection.rb', line 905

def source_url
  data['sourceUrl']
end

#stateObject



865
866
867
# File 'lib/carddb/collection.rb', line 865

def state
  data['state']
end

#titleObject



841
842
843
# File 'lib/carddb/collection.rb', line 841

def title
  data['title']
end

#unpublished_atObject



885
886
887
# File 'lib/carddb/collection.rb', line 885

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

#updated_atObject



955
956
957
# File 'lib/carddb/collection.rb', line 955

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

#visibilityObject



853
854
855
# File 'lib/carddb/collection.rb', line 853

def visibility
  data['visibility']
end