Class: Occi::Core::Renderers::BaseRenderer Abstract
- Inherits:
-
Object
- Object
- Occi::Core::Renderers::BaseRenderer
- Includes:
- Yell::Loggable
- Defined in:
- lib/occi/core/renderers/base_renderer.rb
Overview
Not for direct use.
Implementes components common to all rendereres. It is not intended for direct use.
Direct Known Subclasses
Class Method Summary collapse
-
.formats ⇒ Array
Returns a list of formats supported by this renderer.
-
.known ⇒ Array
Returns a frozen Hash providing mapping information between supported types and supported serializers.
-
.known_serializers ⇒ Array
Returns the list of known (and supported) serializer classes.
-
.known_types ⇒ Array
Returns the list of known (and supported) types for serialization.
-
.render(object, options) ⇒ String
Renders the given ‘object` into a rendering in `options`.
-
.renderer? ⇒ TrueClass, FalseClass
Indicates whether this class is a renderer candidate.
Class Method Details
.formats ⇒ Array
Returns a list of formats supported by this renderer. Formats are compliant with method naming restrictions and String-like.
24 25 26 |
# File 'lib/occi/core/renderers/base_renderer.rb', line 24 def formats [] end |
.known ⇒ Array
Returns a frozen Hash providing mapping information between supported types and supported serializers.
66 67 68 |
# File 'lib/occi/core/renderers/base_renderer.rb', line 66 def known {} end |
.known_serializers ⇒ Array
Returns the list of known (and supported) serializer classes. Every element in the list is a fully namespaced classes.
58 59 60 |
# File 'lib/occi/core/renderers/base_renderer.rb', line 58 def known_serializers known.values end |
.known_types ⇒ Array
Returns the list of known (and supported) types for serialization. Every element in the list is a string representing a fully namespaced class name.
50 51 52 |
# File 'lib/occi/core/renderers/base_renderer.rb', line 50 def known_types known.keys end |
.render(object, options) ⇒ String
Renders the given ‘object` into a rendering in `options`.
34 35 36 37 38 39 40 41 42 43 |
# File 'lib/occi/core/renderers/base_renderer.rb', line 34 def render(object, ) logger.debug { "#{self} rendering #{object.inspect} with #{.inspect}" } candidate = rendering_candidate(object) unless candidate raise Occi::Core::Errors::RenderingError, "#{object.class} cannot be " \ "rendered to #{[:format]}" end known[candidate].new(object, ).render end |
.renderer? ⇒ TrueClass, FalseClass
Indicates whether this class is a renderer candidate.
15 16 17 |
# File 'lib/occi/core/renderers/base_renderer.rb', line 15 def renderer? false end |