Module: Merb::ResponderMixin::ClassMethods

Defined in:
lib/merb-core/controller/mixins/responder.rb

Instance Method Summary collapse

Instance Method Details

#clear_providesObject

Clear the list of provides.

Returns

Array

An empty Array.



176
177
178
# File 'lib/merb-core/controller/mixins/responder.rb', line 176

def clear_provides
  self.class_provided_formats.clear
end

#does_not_provide(*formats) ⇒ Object

This class should not provide any of this list of formats, despite any. other definitions previously or in superclasses.

Parameters

*formats<Symbol>

Registered mime-types.

Returns

Array

List of formats that remain after removing the ones not to provide.




168
169
170
# File 'lib/merb-core/controller/mixins/responder.rb', line 168

def does_not_provide(*formats)
  self.class_provided_formats -= formats
end

#only_provides(*formats) ⇒ Object

This class should only provide the formats listed here, despite any other definitions previously or in superclasses.

Parameters

*formats<Symbol>

Registered mime-types.

Returns

Array

List of formats passed in.




151
152
153
154
# File 'lib/merb-core/controller/mixins/responder.rb', line 151

def only_provides(*formats)
  clear_provides
  provides(*formats)
end

#provides(*formats) ⇒ Object

Adds symbols representing formats to the controller’s default list of provided_formats. These will apply to every action in the controller, unless modified in the action. If the last argument is a Hash or an Array, these are regarded as arguments to pass to the to_<mime_type> method as needed.

Parameters

*formats<Symbol>

A list of mime-types that the controller should provide.

Returns

Array

List of formats passed in.

Examples

provides :html, :xml



136
137
138
# File 'lib/merb-core/controller/mixins/responder.rb', line 136

def provides(*formats)
  self.class_provided_formats |= formats
end

#reset_providesObject

Reset the list of provides to include only :html.

Returns

Array

[:html].



184
185
186
# File 'lib/merb-core/controller/mixins/responder.rb', line 184

def reset_provides
  only_provides(:html)
end