Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1670)

Unified Diff: boto/sns/__init__.py

Issue 8386013: Merging in latest boto. (Closed) Base URL: svn://svn.chromium.org/boto
Patch Set: Redoing vendor drop by deleting and then merging. Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « boto/ses/connection.py ('k') | boto/sns/connection.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: boto/sns/__init__.py
diff --git a/boto/sns/__init__.py b/boto/sns/__init__.py
index 9c5a7d747c7583131ba78e1bbecfcff96839ebb1..c74866128b0cf8930393ef5c28a17f812c065d49 100644
--- a/boto/sns/__init__.py
+++ b/boto/sns/__init__.py
@@ -23,3 +23,62 @@
# this is here for backward compatibility
# originally, the SNSConnection class was defined here
from connection import SNSConnection
+from boto.regioninfo import RegionInfo
+
+def regions():
+ """
+ Get all available regions for the SNS service.
+
+ :rtype: list
+ :return: A list of :class:`boto.regioninfo.RegionInfo` instances
+ """
+ return [RegionInfo(name='us-east-1',
+ endpoint='sns.us-east-1.amazonaws.com',
+ connection_cls=SNSConnection),
+ RegionInfo(name='eu-west-1',
+ endpoint='sns.eu-west-1.amazonaws.com',
+ connection_cls=SNSConnection),
+ RegionInfo(name='us-west-1',
+ endpoint='sns.us-west-1.amazonaws.com',
+ connection_cls=SNSConnection),
+ RegionInfo(name='ap-northeast-1',
+ endpoint='sns.ap-northeast-1.amazonaws.com',
+ connection_cls=SNSConnection),
+ RegionInfo(name='ap-southeast-1',
+ endpoint='sns.ap-southeast-1.amazonaws.com',
+ connection_cls=SNSConnection),
+ ]
+
+def connect_to_region(region_name, **kw_params):
+ """
+ Given a valid region name, return a
+ :class:`boto.sns.connection.SNSConnection`.
+
+ :type: str
+ :param region_name: The name of the region to connect to.
+
+ :rtype: :class:`boto.sns.connection.SNSConnection` or ``None``
+ :return: A connection to the given region, or None if an invalid region
+ name is given
+ """
+ for region in regions():
+ if region.name == region_name:
+ return region.connect(**kw_params)
+ return None
+
+def get_region(region_name, **kw_params):
+ """
+ Find and return a :class:`boto.regioninfo.RegionInfo` object
+ given a region name.
+
+ :type: str
+ :param: The name of the region.
+
+ :rtype: :class:`boto.regioninfo.RegionInfo`
+ :return: The RegionInfo object for the given region or None if
+ an invalid region name is provided.
+ """
+ for region in regions(**kw_params):
+ if region.name == region_name:
+ return region
+ return None
« no previous file with comments | « boto/ses/connection.py ('k') | boto/sns/connection.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698