Class: Protocol::Media::Map::Builder
- Inherits:
-
Object
- Object
- Protocol::Media::Map::Builder
- Defined in:
- lib/protocol/media/map.rb
Overview
Incrementally constructs an immutable media map.
Instance Method Summary collapse
-
#[]=(media_type, object) ⇒ Object
Associate a concrete media type with an object.
-
#build ⇒ Object
Compile the current registrations into an immutable map.
-
#initialize ⇒ Builder
constructor
Initialize an empty media map builder.
Constructor Details
#initialize ⇒ Builder
Initialize an empty media map builder.
15 16 17 |
# File 'lib/protocol/media/map.rb', line 15 def initialize @index = {} end |
Instance Method Details
#[]=(media_type, object) ⇒ Object
Associate a concrete media type with an object.
23 24 25 26 27 28 29 30 |
# File 'lib/protocol/media/map.rb', line 23 def []=(media_type, object) media_type = Type.for(media_type) # Preserve the first registration as the default for wildcard queries: @index["*/*"] ||= object @index["#{media_type.type}/*"] ||= object @index[media_type.name] = object end |