diff options
Diffstat (limited to 'src/sugar/tutorius/uam/__init__.py')
-rw-r--r-- | src/sugar/tutorius/uam/__init__.py | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/src/sugar/tutorius/uam/__init__.py b/src/sugar/tutorius/uam/__init__.py deleted file mode 100644 index 7cf5671..0000000 --- a/src/sugar/tutorius/uam/__init__.py +++ /dev/null @@ -1,88 +0,0 @@ -# Copyright (C) 2009, Tutorius.org -# Copyright (C) 2009, Vincent Vinet <vince.vinet@gmail.com> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -""" -Universal Addressing Mechanism module - -Allows addressing Events, signals, widgets, etc for supported platforms -""" - -from urllib2 import urlparse - -import gtkparser -import gobjectparser - - -SCHEME="tap" #Tutorius Adressing Protocol - -__parsers = { - gtkparser.SCHEME:gtkparser.parse_gtk, - gobjectparser.SCHEME:gobjectparser.parse_gobject, -} - -def __add_to_urlparse(name): - #Add to uses_netloc - if not name in urlparse.uses_netloc: - urlparse.uses_netloc.append(name) - - #Add to uses_relative - if not name in urlparse.uses_relative: - urlparse.uses_relative.append(name) - -# #Add to uses_params -# if not name in urlparse.uses_params: -# urlparse.uses_params.append(name) - - #Add to uses_query - if not name in urlparse.uses_query: - urlparse.uses_query.append(name) - - #Add to uses_frament - if not name in urlparse.uses_fragment: - urlparse.uses_fragment.append(name) - - -#Add schemes to urlparse -__add_to_urlparse(SCHEME) - -for subscheme in [".".join([SCHEME,s]) for s in __parsers]: - __add_to_urlparse(subscheme) - - -class SchemeError(Exception): - def __init__(self, message): - Exception.__init__(self, message) - self.message = message - - -def parse_uri(uri): - res = urlparse.urlparse(uri) - - scheme = res.scheme.split(".")[0] - subscheme = ".".join(res.scheme.split(".")[1:]) - if not scheme == SCHEME: - raise SchemeError("Scheme %s not supported" % scheme) - - if subscheme != "" and not subscheme in __parsers: - raise SchemeError("SubScheme %s not supported" % subscheme) - - if subscheme: - return __parsers[subscheme](res) - - return res - - - |