Module: Magnum::Payload
- Defined in:
- lib/magnum/payload.rb,
lib/magnum/payload/base.rb,
lib/magnum/payload/errors.rb,
lib/magnum/payload/version.rb
Defined Under Namespace
Modules: MessageParser
Classes: Base, Beanstalk, Bitbucket, Custom, Error, Github, Gitlab, Gitslice, ParseError, PayloadError
Constant Summary
collapse
- SOURCES =
%w(custom github gitlab gitslice bitbucket beanstalk)
- VERSION =
"0.3.4"
Class Method Summary
collapse
Class Method Details
.parse(source, payload) ⇒ Object
21
22
23
24
25
26
27
28
|
# File 'lib/magnum/payload.rb', line 21
def self.parse(source, payload)
unless valid_source?(source)
raise PayloadError, "Invalid payload type: #{source}"
end
klass = Magnum::Payload.const_get(source.to_s.capitalize)
klass.new(payload)
end
|
.valid_source?(source) ⇒ Boolean
17
18
19
|
# File 'lib/magnum/payload.rb', line 17
def self.valid_source?(source)
SOURCES.include?(source.to_s)
end
|