Class: MCPClient::Auth::ResourceMetadata

Inherits:
Object
  • Object
show all
Defined in:
lib/mcp_client/auth.rb

Overview

Protected resource metadata for authorization server discovery

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(resource:, authorization_servers:) ⇒ ResourceMetadata

Returns a new instance of ResourceMetadata.

Parameters:

  • resource (String)

    Resource server identifier

  • authorization_servers (Array<String>)

    List of authorization server URLs



261
262
263
264
# File 'lib/mcp_client/auth.rb', line 261

def initialize(resource:, authorization_servers:)
  @resource = resource
  @authorization_servers = authorization_servers
end

Instance Attribute Details

#authorization_serversObject (readonly)

Returns the value of attribute authorization_servers.



257
258
259
# File 'lib/mcp_client/auth.rb', line 257

def authorization_servers
  @authorization_servers
end

#resourceObject (readonly)

Returns the value of attribute resource.



257
258
259
# File 'lib/mcp_client/auth.rb', line 257

def resource
  @resource
end

Class Method Details

.from_h(data) ⇒ ResourceMetadata

Create resource metadata from hash

Parameters:

  • data (Hash)

    Resource metadata

Returns:



278
279
280
281
282
283
# File 'lib/mcp_client/auth.rb', line 278

def self.from_h(data)
  new(
    resource: data[:resource] || data['resource'],
    authorization_servers: data[:authorization_servers] || data['authorization_servers']
  )
end

Instance Method Details

#to_hHash

Convert to hash

Returns:

  • (Hash)

    Hash representation



268
269
270
271
272
273
# File 'lib/mcp_client/auth.rb', line 268

def to_h
  {
    resource: @resource,
    authorization_servers: @authorization_servers
  }
end