Class: Dratools::DdbjResourceClient
- Inherits:
-
Object
- Object
- Dratools::DdbjResourceClient
- Defined in:
- lib/dratools/ddbj_resource_client.rb
Overview
DDBJ resource API を呼び出す薄い HTTP クライアント。
Constant Summary collapse
- DDBJ_RESOURCE_BASE_URL =
'https://ddbj.nig.ac.jp/resource'- RESOURCE_RECORD_EXTENSION =
'.json'- HTTPS_SCHEME =
'https'- HTTP_LOCATION_HEADER =
'location'- USER_AGENT_HEADER =
'User-Agent'- DEFAULT_REDIRECT_LIMIT =
5- DEFAULT_OPEN_TIMEOUT_SECONDS =
10- DEFAULT_READ_TIMEOUT_SECONDS =
30
Instance Method Summary collapse
- #fetch_resource_record(type, accession) ⇒ Object
-
#initialize(base_url: DDBJ_RESOURCE_BASE_URL, open_timeout: DEFAULT_OPEN_TIMEOUT_SECONDS, read_timeout: DEFAULT_READ_TIMEOUT_SECONDS) ⇒ DdbjResourceClient
constructor
A new instance of DdbjResourceClient.
Constructor Details
#initialize(base_url: DDBJ_RESOURCE_BASE_URL, open_timeout: DEFAULT_OPEN_TIMEOUT_SECONDS, read_timeout: DEFAULT_READ_TIMEOUT_SECONDS) ⇒ DdbjResourceClient
Returns a new instance of DdbjResourceClient.
23 24 25 26 27 28 |
# File 'lib/dratools/ddbj_resource_client.rb', line 23 def initialize(base_url: DDBJ_RESOURCE_BASE_URL, open_timeout: DEFAULT_OPEN_TIMEOUT_SECONDS, read_timeout: DEFAULT_READ_TIMEOUT_SECONDS) @base_url = base_url.delete_suffix('/') @open_timeout = open_timeout @read_timeout = read_timeout end |
Instance Method Details
#fetch_resource_record(type, accession) ⇒ Object
30 31 32 |
# File 'lib/dratools/ddbj_resource_client.rb', line 30 def fetch_resource_record(type, accession) fetch_json("#{@base_url}/#{type}/#{accession}#{RESOURCE_RECORD_EXTENSION}") end |