diff options
Diffstat (limited to 'avahi-utils/avahi/ServiceTypeDatabase.py.in')
-rw-r--r-- | avahi-utils/avahi/ServiceTypeDatabase.py.in | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/avahi-utils/avahi/ServiceTypeDatabase.py.in b/avahi-utils/avahi/ServiceTypeDatabase.py.in deleted file mode 100644 index 9caeebd..0000000 --- a/avahi-utils/avahi/ServiceTypeDatabase.py.in +++ /dev/null @@ -1,97 +0,0 @@ -#!@PYTHON@ -# -*-python-*- -# $Id$ - -# This file is part of avahi. -# -# avahi is free software; you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as -# published by the Free Software Foundation; either version 2 of the -# License, or (at your option) any later version. -# -# avahi 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 Lesser General Public -# License along with avahi; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 -# USA. - -import gdbm -import locale - -locale.setlocale(locale.LC_ALL, '') - -class ServiceTypeDatabase: - - def __init__(self, filename = "@pkgdatadir@/service-types.db"): - - self.db = gdbm.open(filename, "r") - - l = locale.getlocale(locale.LC_MESSAGES) - - self.suffixes = () - - if not l[0] is None: - - if not l[1] is None: - self.suffixes += (l[0] + "@" + l[1], ) - - self.suffixes += (l[0], ) - - i = l[0].find("_") - - if i >= 0: - - k = l[0][:i] - - if not l[1] is None: - self.suffixes += (k + "@" + l[1], ) - - self.suffixes += (k, ) - - - self.suffixes = tuple(map(lambda x: "["+x+"]", self.suffixes)) + ("", ) - - def __getitem__(self, key): - - for suffix in self.suffixes: - try: - return self.db[key + suffix] - except KeyError: - pass - - raise KeyError() - - def has_key(self, key): - - for suffix in self.suffixes: - - if self.db.has_key(key + suffix): - return True - - return False - - def __contains__(self, item): - - for suffix in self.suffixes: - - if item+suffix in self.db: - return True - - return False - - - -if __name__ == "__main__": - - b = ServiceTypeDatabase() - - print b["_http._tcp"] - print b["_ftp._tcp"] - print b["_webdav._tcp"] - print b["_webdavs._tcp"] - - print b["gurki._tcp"] |