class Rabl::Configuration

Rabl.host

Constants

DEFAULT_XML_OPTIONS

Attributes

bson_check_keys[RW]
bson_engine[W]
bson_move_id[RW]
cache_all_output[RW]
cache_engine[RW]
cache_sources[RW]
enable_json_callbacks[RW]
escape_all_output[RW]
include_bson_root[RW]
include_child_root[RW]
include_json_root[RW]
include_msgpack_root[RW]
include_plist_root[RW]
include_xml_root[RW]
msgpack_engine[W]
plist_engine[W]
view_paths[RW]
xml_options[W]

Public Instance Methods

[](option) click to toggle source

Allows config options to be read like a hash

@param [Symbol] option Key for a given attribute

# File lib/rabl/configuration.rb, line 98
def [](option)
  __send__(option)
end
bson_engine() click to toggle source

@return the Bson encoder/engine to use.

# File lib/rabl/configuration.rb, line 85
def bson_engine
  @bson_engine || ::BSON
end
default_xml_options() click to toggle source

Returns merged default and inputted xml options

# File lib/rabl/configuration.rb, line 103
def default_xml_options
  @_default_xml_options ||= @xml_options.reverse_merge(DEFAULT_XML_OPTIONS)
end
json_engine() click to toggle source

@return The JSON engine used to encode Rabl templates into JSON

# File lib/rabl/configuration.rb, line 73
def json_engine
  JsonEngine.instance.current_engine
end
json_engine=(engine_name_or_class) click to toggle source

@param [Symbol, Class] engine_name The name of a JSON engine,

or class that responds to %xencode`, to use to encode Rabl templates
into JSON. For more details, see the MultiJson gem.
# File lib/rabl/configuration.rb, line 68
def json_engine=(engine_name_or_class)
  JsonEngine.instance.set(engine_name_or_class)
end
msgpack_engine() click to toggle source

@return the MessagePack encoder/engine to use.

# File lib/rabl/configuration.rb, line 79
def msgpack_engine
  @msgpack_engine || ::MessagePack
end
plist_engine() click to toggle source

@return the Plist encoder/engine to use.

# File lib/rabl/configuration.rb, line 91
def plist_engine
  @plist_engine || ::Plist::Emit
end

Public Class Methods

new() click to toggle source
# File lib/rabl/configuration.rb, line 43
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
end