Class: Rabl::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/rabl/configuration.rb

Overview

Rabl.host

Constant Summary collapse

DEFAULT_XML_OPTIONS =
{ :dasherize  => true, :skip_types => false }

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/rabl/configuration.rb', line 54

def initialize
  @include_json_root                     = true
  @include_child_root                    = true
  @include_msgpack_root                  = true
  @include_plist_root                    = true
  @include_xml_root                      = false
  @include_bson_root                     = true
  @enable_json_callbacks                 = false
  @bson_check_keys                       = false
  @bson_move_id                          = false
  @json_engine                           = nil
  @msgpack_engine                        = nil
  @bson_engine                           = nil
  @plist_engine                          = nil
  @xml_options                           = {}
  @cache_sources                         = false
  @cache_all_output                      = false
  @escape_all_output                     = false
  @view_paths                            = []
  @cache_engine                          = Rabl::CacheEngine.new
  @perform_caching                       = false
  @replace_nil_values_with_empty_strings = false
end

Instance Attribute Details

#bson_check_keysObject

Returns the value of attribute bson_check_keys.



36
37
38
# File 'lib/rabl/configuration.rb', line 36

def bson_check_keys
  @bson_check_keys
end

#bson_engineObject

Returns the Bson encoder/engine to use.

Returns:

  • the Bson encoder/engine to use.



91
92
93
# File 'lib/rabl/configuration.rb', line 91

def bson_engine
  @bson_engine || ::BSON
end

#bson_move_idObject

Returns the value of attribute bson_move_id.



37
38
39
# File 'lib/rabl/configuration.rb', line 37

def bson_move_id
  @bson_move_id
end

#cache_all_outputObject

Returns the value of attribute cache_all_output.



44
45
46
# File 'lib/rabl/configuration.rb', line 44

def cache_all_output
  @cache_all_output
end

#cache_engineObject

Returns the value of attribute cache_engine.



47
48
49
# File 'lib/rabl/configuration.rb', line 47

def cache_engine
  @cache_engine
end

#cache_sourcesObject

Returns the value of attribute cache_sources.



43
44
45
# File 'lib/rabl/configuration.rb', line 43

def cache_sources
  @cache_sources
end

#enable_json_callbacksObject

Returns the value of attribute enable_json_callbacks.



35
36
37
# File 'lib/rabl/configuration.rb', line 35

def enable_json_callbacks
  @enable_json_callbacks
end

#escape_all_outputObject

Returns the value of attribute escape_all_output.



45
46
47
# File 'lib/rabl/configuration.rb', line 45

def escape_all_output
  @escape_all_output
end

#include_bson_rootObject

Returns the value of attribute include_bson_root.



34
35
36
# File 'lib/rabl/configuration.rb', line 34

def include_bson_root
  @include_bson_root
end

#include_child_rootObject

Returns the value of attribute include_child_root.



30
31
32
# File 'lib/rabl/configuration.rb', line 30

def include_child_root
  @include_child_root
end

#include_json_rootObject

Returns the value of attribute include_json_root.



29
30
31
# File 'lib/rabl/configuration.rb', line 29

def include_json_root
  @include_json_root
end

#include_msgpack_rootObject

Returns the value of attribute include_msgpack_root.



31
32
33
# File 'lib/rabl/configuration.rb', line 31

def include_msgpack_root
  @include_msgpack_root
end

#include_plist_rootObject

Returns the value of attribute include_plist_root.



32
33
34
# File 'lib/rabl/configuration.rb', line 32

def include_plist_root
  @include_plist_root
end

#include_xml_rootObject

Returns the value of attribute include_xml_root.



33
34
35
# File 'lib/rabl/configuration.rb', line 33

def include_xml_root
  @include_xml_root
end

#json_engineObject

Returns The JSON engine used to encode Rabl templates into JSON.

Returns:

  • The JSON engine used to encode Rabl templates into JSON



79
80
81
# File 'lib/rabl/configuration.rb', line 79

def json_engine
  @json_engine || (defined?(::Oj) ? ::Oj : ::JSON)
end

#msgpack_engineObject

Returns the MessagePack encoder/engine to use.

Returns:

  • the MessagePack encoder/engine to use.



85
86
87
# File 'lib/rabl/configuration.rb', line 85

def msgpack_engine
  @msgpack_engine || ::MessagePack
end

#perform_cachingObject

Returns the value of attribute perform_caching.



49
50
51
# File 'lib/rabl/configuration.rb', line 49

def perform_caching
  @perform_caching
end

#plist_engineObject

Returns the Plist encoder/engine to use.

Returns:

  • the Plist encoder/engine to use.



97
98
99
# File 'lib/rabl/configuration.rb', line 97

def plist_engine
  @plist_engine || ::Plist::Emit
end

#raise_on_missing_attributeObject

Returns the value of attribute raise_on_missing_attribute.



48
49
50
# File 'lib/rabl/configuration.rb', line 48

def raise_on_missing_attribute
  @raise_on_missing_attribute
end

#replace_nil_values_with_empty_stringsObject

Returns the value of attribute replace_nil_values_with_empty_strings.



50
51
52
# File 'lib/rabl/configuration.rb', line 50

def replace_nil_values_with_empty_strings
  @replace_nil_values_with_empty_strings
end

#view_pathsObject

Returns the value of attribute view_paths.



46
47
48
# File 'lib/rabl/configuration.rb', line 46

def view_paths
  @view_paths
end

#xml_options=(value) ⇒ Object (writeonly)

Sets the attribute xml_options

Parameters:

  • value

    the value to set the attribute xml_options to.



42
43
44
# File 'lib/rabl/configuration.rb', line 42

def xml_options=(value)
  @xml_options = value
end

Instance Method Details

#[](option) ⇒ Object

Allows config options to be read like a hash

Parameters:

  • option (Symbol)

    Key for a given attribute



104
105
106
# File 'lib/rabl/configuration.rb', line 104

def [](option)
  __send__(option)
end

#default_xml_optionsObject

Returns merged default and inputted xml options



109
110
111
# File 'lib/rabl/configuration.rb', line 109

def default_xml_options
  @_default_xml_options ||= @xml_options.reverse_merge(DEFAULT_XML_OPTIONS)
end