Class: ResoTransport::Metadata

Inherits:
BaseMetadata show all
Defined in:
lib/reso_transport/metadata.rb

Constant Summary

Constants inherited from BaseMetadata

BaseMetadata::MIME_TYPES

Instance Attribute Summary

Attributes inherited from BaseMetadata

#client

Instance Method Summary collapse

Methods inherited from BaseMetadata

#cache, #cache_file, #classname, #data, #parser, #prefix, #raw, #request

Constructor Details

#initialize(client) ⇒ Metadata

Returns a new instance of Metadata.



5
6
7
8
9
# File 'lib/reso_transport/metadata.rb', line 5

def initialize(client)
  super client
  @prefix = 'md'
  @classname = self.class.name
end

Instance Method Details

#datasystem?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/reso_transport/metadata.rb', line 19

def datasystem?
  parser.datasystem?
end

#entity_setsObject



11
12
13
# File 'lib/reso_transport/metadata.rb', line 11

def entity_sets
  parser.entity_sets
end

#responseObject



23
24
25
26
27
28
29
30
# File 'lib/reso_transport/metadata.rb', line 23

def response
  @response ||= client.connection.get('$metadata') do |req|
    req.headers['Accept'] = MIME_TYPES[client.vendor.fetch(:metadata_format, :xml).to_sym]
    @request = req
  end
rescue Faraday::ConnectionFailed
  raise NoResponse.new(request, nil, '$metadata')
end

#schemasObject



15
16
17
# File 'lib/reso_transport/metadata.rb', line 15

def schemas
  parser.schemas
end