Module: CardDB
- Defined in:
- lib/carddb.rb,
lib/carddb/batch.rb,
lib/carddb/cache.rb,
lib/carddb/client.rb,
lib/carddb/errors.rb,
lib/carddb/version.rb,
lib/carddb/collection.rb,
lib/carddb/connection.rb,
lib/carddb/configuration.rb,
lib/carddb/query_builder.rb,
lib/carddb/filter_builder.rb,
lib/carddb/resources/base.rb,
lib/carddb/resources/decks.rb,
lib/carddb/resources/games.rb,
lib/carddb/resources/rules.rb,
lib/carddb/resources/records.rb,
lib/carddb/resources/datasets.rb,
lib/carddb/resources/publishers.rb
Overview
CardDB Ruby client library.
A Ruby client for the CardDB GraphQL API, providing search and fetch operations for card game data.
Defined Under Namespace
Modules: CacheSupport, FilterOperators, QueryBuilder, Resources Classes: AuthenticationError, Batch, BatchProxy, Client, Collection, Configuration, Connection, ConnectionError, Dataset, DatasetSchema, Deck, DeckEntry, Error, FieldInfo, FilterBuilder, Game, GraphQLError, LinkFieldInfo, MemoryCache, NotFoundError, PageInfo, Publisher, RateLimitError, Record, ResolvedLink, Resource, RestrictedError, ServerError, TimeoutError, ValidationError
Constant Summary collapse
- VERSION =
'0.2.0'
Class Attribute Summary collapse
-
.configuration ⇒ Configuration
Get the global configuration.
Class Method Summary collapse
-
.batch {|Batch| ... } ⇒ Array
Execute multiple queries in a single batch request.
-
.configure {|Configuration| ... } ⇒ Configuration
Configure the CardDB client globally.
-
.datasets ⇒ Resources::Datasets
Access the Datasets resource via the default client.
-
.decks ⇒ Resources::Decks
Access the Decks resource via the default client.
-
.default_client ⇒ Client
Get the default client instance (uses global configuration).
-
.games ⇒ Resources::Games
Access the Games resource via the default client.
-
.me ⇒ Hash?
Get information about the current API key.
-
.publishers ⇒ Resources::Publishers
Access the Publishers resource via the default client.
-
.rate_limit_info ⇒ Hash?
Get the last rate limit info from the most recent request.
-
.records ⇒ Resources::Records
Access the Records resource via the default client.
-
.reset_configuration! ⇒ Configuration
Reset the global configuration to defaults.
-
.rules ⇒ Resources::Rules
Access the Rules resource via the default client.
Class Attribute Details
.configuration ⇒ Configuration
Get the global configuration.
48 49 50 |
# File 'lib/carddb.rb', line 48 def configuration @configuration ||= Configuration.new end |
Class Method Details
.batch {|Batch| ... } ⇒ Array
Execute multiple queries in a single batch request.
156 157 158 |
# File 'lib/carddb.rb', line 156 def batch(&block) default_client.batch(&block) end |
.configure {|Configuration| ... } ⇒ Configuration
Configure the CardDB client globally.
62 63 64 65 66 67 |
# File 'lib/carddb.rb', line 62 def configure # Reset the cached client so it picks up new configuration @default_client = nil yield(configuration) configuration end |
.datasets ⇒ Resources::Datasets
Access the Datasets resource via the default client.
102 103 104 |
# File 'lib/carddb.rb', line 102 def datasets default_client.datasets end |
.decks ⇒ Resources::Decks
Access the Decks resource via the default client.
116 117 118 |
# File 'lib/carddb.rb', line 116 def decks default_client.decks end |
.default_client ⇒ Client
Get the default client instance (uses global configuration).
81 82 83 |
# File 'lib/carddb.rb', line 81 def default_client @default_client ||= Client.new(config: configuration) end |
.games ⇒ Resources::Games
Access the Games resource via the default client.
95 96 97 |
# File 'lib/carddb.rb', line 95 def games default_client.games end |
.me ⇒ Hash?
Get information about the current API key.
130 131 132 |
# File 'lib/carddb.rb', line 130 def me default_client.me end |
.publishers ⇒ Resources::Publishers
Access the Publishers resource via the default client.
88 89 90 |
# File 'lib/carddb.rb', line 88 def publishers default_client.publishers end |
.rate_limit_info ⇒ Hash?
Get the last rate limit info from the most recent request.
137 138 139 |
# File 'lib/carddb.rb', line 137 def rate_limit_info Thread.current[:carddb_rate_limit] end |
.records ⇒ Resources::Records
Access the Records resource via the default client.
109 110 111 |
# File 'lib/carddb.rb', line 109 def records default_client.records end |
.reset_configuration! ⇒ Configuration
Reset the global configuration to defaults.
72 73 74 75 76 |
# File 'lib/carddb.rb', line 72 def reset_configuration! @configuration = Configuration.new @default_client = nil configuration end |
.rules ⇒ Resources::Rules
Access the Rules resource via the default client.
123 124 125 |
# File 'lib/carddb.rb', line 123 def rules default_client.rules end |