Module: Puppet::Network::FormatSupport

Overview

Provides network serialization support when included

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(klass) ⇒ Object


6
7
8
# File 'lib/puppet/network/format_support.rb', line 6

def self.included(klass)
  klass.extend(ClassMethods)
end

Instance Method Details

#mime(format = nil) ⇒ Object


117
118
119
120
121
122
123
124
# File 'lib/puppet/network/format_support.rb', line 117

def mime(format = nil)
  format ||= self.class.default_format

  self.class.get_format(format).mime
rescue => err
  #TRANSLATORS "mime" is a function name and should not be translated
  raise Puppet::Network::FormatHandler::FormatError, _("Could not mime to %{format}: %{err}") % { format: format, err: err }, err.backtrace
end

#render(format = nil) ⇒ Object


108
109
110
111
112
113
114
115
# File 'lib/puppet/network/format_support.rb', line 108

def render(format = nil)
  format ||= self.class.default_format

  self.class.get_format(format).render(self)
rescue => err
  #TRANSLATORS "render" is a function name and should not be translated
  raise Puppet::Network::FormatHandler::FormatError, _("Could not render to %{format}: %{err}") % { format: format, err: err }, err.backtrace
end

#support_format?(name) ⇒ Boolean


126
127
128
# File 'lib/puppet/network/format_support.rb', line 126

def support_format?(name)
  self.class.support_format?(name)
end

#to_data_hash(*args) ⇒ Hash

This method is abstract.

This method may be implemented to return a hash object that is used for serializing. The object returned by this method should contain all the info needed to instantiate it again. If the method exists it will be called from to_msgpack and other serialization methods.


# File 'lib/puppet/network/format_support.rb', line 130


#to_json(*args) ⇒ Object


104
105
106
# File 'lib/puppet/network/format_support.rb', line 104

def to_json(*args)
  Puppet::Util::Json.dump(to_data_hash, *args)
end

#to_msgpack(*args) ⇒ Object


95
96
97
# File 'lib/puppet/network/format_support.rb', line 95

def to_msgpack(*args)
  to_data_hash.to_msgpack(*args)
end

#to_pson(*args) ⇒ Object

@deprecated, use to_json


100
101
102
# File 'lib/puppet/network/format_support.rb', line 100

def to_pson(*args)
  to_data_hash.to_pson(*args)
end