1
0
Fork 0
mirror of https://github.com/fog/fog.git synced 2022-11-09 13:51:43 -05:00

SNS CreateTopic and DeleteTopic

This commit is contained in:
phiggins 2011-02-02 23:26:28 -08:00 committed by geemus
parent 2870fdea56
commit e92ca191d7
5 changed files with 102 additions and 0 deletions

View file

@ -0,0 +1,24 @@
module Fog
module Parsers
module AWS
module SNS
class CreateTopic < Fog::Parsers::Base
def reset
@response = {}
end
def end_element(name)
case name
when 'TopicArn', 'RequestId'
@response[name] = @value
end
end
end
end
end
end
end

View file

@ -0,0 +1,24 @@
module Fog
module Parsers
module AWS
module SNS
class DeleteTopic < Fog::Parsers::Base
def reset
@response = {}
end
def end_element(name)
case name
when 'RequestId'
@response[name] = @value
end
end
end
end
end
end
end

View file

@ -0,0 +1,26 @@
module Fog
module AWS
class SNS
class Real
require 'fog/aws/parsers/sns/create_topic'
def create_topic(options = {})
request({
'Action' => 'CreateTopic',
:parser => Fog::Parsers::AWS::SNS::CreateTopic.new
}.merge!(options))
end
end
class Mock
def create_topic(options = {})
Fog::Mock.not_implemented
end
end
end
end
end

View file

@ -0,0 +1,26 @@
module Fog
module AWS
class SNS
class Real
require 'fog/aws/parsers/sns/delete_topic'
def delete_topic(options = {})
request({
'Action' => 'DeleteTopic',
:parser => Fog::Parsers::AWS::SNS::DeleteTopic.new
}.merge!(options))
end
end
class Mock
def delete_topic(options = {})
Fog::Mock.not_implemented
end
end
end
end
end

View file

@ -6,6 +6,8 @@ module Fog
recognizes :host, :path, :port, :scheme, :persistent
request_path 'fog/aws/requests/sns'
request :create_topic
request :delete_topic
request :get_topic_attributes
request :list_subscriptions
request :list_subscriptions_by_topic