Skip to content

Commit

Permalink
SNS ConfirmSubscription and Unsubscribe
Browse files Browse the repository at this point in the history
  • Loading branch information
phiggins authored and geemus committed Jul 19, 2011
1 parent 71b7a44 commit f3f9650
Show file tree
Hide file tree
Showing 5 changed files with 102 additions and 0 deletions.
24 changes: 24 additions & 0 deletions lib/fog/aws/parsers/sns/confirm_subscription.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
module Fog
module Parsers
module AWS
module SNS

class ConfirmSubscription < Fog::Parsers::Base

def reset
@response = {}
end

def end_element(name)
case name
when 'SubscriptionArn', 'RequestId'
@response[name] = @value
end
end

end

end
end
end
end
24 changes: 24 additions & 0 deletions lib/fog/aws/parsers/sns/unsubscribe.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
module Fog
module Parsers
module AWS
module SNS

class Unsubscribe < 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
26 changes: 26 additions & 0 deletions lib/fog/aws/requests/sns/confirm_subscription.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
module Fog
module AWS
class SNS
class Real

require 'fog/aws/parsers/sns/confirm_subscription'

def confirm_subscription(options = {})
request({
'Action' => 'ConfirmSubscription',
:parser => Fog::Parsers::AWS::SNS::ConfirmSubscription.new
}.merge!(options))
end

end

class Mock

def confirm_subscription(options = {})
Fog::Mock.not_implemented
end

end
end
end
end
26 changes: 26 additions & 0 deletions lib/fog/aws/requests/sns/unsubscribe.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
module Fog
module AWS
class SNS
class Real

require 'fog/aws/parsers/sns/unsubscribe'

def unsubscribe(options = {})
request({
'Action' => 'Unsubscribe',
:parser => Fog::Parsers::AWS::SNS::Unsubscribe.new
}.merge!(options))
end

end

class Mock

def unsubscribe(options = {})
Fog::Mock.not_implemented
end

end
end
end
end
2 changes: 2 additions & 0 deletions lib/fog/aws/sns.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ class SNS < Fog::Service

request_path 'fog/aws/requests/sns'
request :add_permission
request :confirm_subscription
request :create_topic
request :delete_topic
request :get_topic_attributes
Expand All @@ -17,6 +18,7 @@ class SNS < Fog::Service
request :remove_permission
request :set_topic_attributes
request :subscribe
request :unsubscribe

class Mock

Expand Down

0 comments on commit f3f9650

Please sign in to comment.