Class: Qa::Authorities::LinkedData::FindTerm
- Inherits:
-
Object
- Object
- Qa::Authorities::LinkedData::FindTerm
- Defined in:
- lib/qa/authorities/linked_data/find_term.rb
Instance Attribute Summary collapse
-
#term_config ⇒ Object
readonly
Returns the value of attribute term_config.
Instance Method Summary collapse
-
#find(id, language: nil, replacements: {}, subauth: nil, format: nil, jsonld: false, performance_data: false) ⇒ Hash
Find a single term in a linked data authority.
-
#initialize(term_config) ⇒ FindTerm
constructor
A new instance of FindTerm.
Constructor Details
#initialize(term_config) ⇒ FindTerm
Returns a new instance of FindTerm.
14 15 16 |
# File 'lib/qa/authorities/linked_data/find_term.rb', line 14 def initialize(term_config) @term_config = term_config end |
Instance Attribute Details
#term_config ⇒ Object (readonly)
Returns the value of attribute term_config.
18 19 20 |
# File 'lib/qa/authorities/linked_data/find_term.rb', line 18 def term_config @term_config end |
Instance Method Details
#find(id, language: nil, replacements: {}, subauth: nil, format: nil, jsonld: false, performance_data: false) ⇒ Hash
Find a single term in a linked data authority
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/qa/authorities/linked_data/find_term.rb', line 42 def find(id, language: nil, replacements: {}, subauth: nil, format: nil, jsonld: false, performance_data: false) # rubocop:disable Metrics/ParameterLists, Metrics/MethodLength # TODO: When jsonld parameter is removed, the format parameter should default to 'json'. Not making this change now for backward compatibility of the default for jsonld parameter. raise Qa::InvalidLinkedDataAuthority, "Unable to initialize linked data term sub-authority #{subauth}" unless subauth.nil? || (subauth) @language = language_service.preferred_language(user_language: language, authority_language: term_config.term_language) @id = id @performance_data = performance_data @format = format @jsonld = jsonld if @format.blank? if jsonld Qa.deprecation_warning( in_msg: 'Qa::Authorities::LinkedData::FindTerm', msg: "jsonld parameter to find method is deprecated; use `format: 'jsonld'` instead" ) end url = .build_url(action_config: term_config, action: :term, action_request: normalize_id, substitutions: replacements, subauthority: subauth, language: @language) Rails.logger.info "QA Linked Data term url: #{url}" load_graph(url: url) normalize_results end |