# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA.
-import gdbm
+import @DBM@
import locale
+import re
locale.setlocale(locale.LC_ALL, '')
class ServiceTypeDatabase:
- def __init__(self, filename = "@pkgdatadir@/service-types.db"):
+ def __init__(self, filename = "@pkglibdir@/service-types.db"):
- self.db = gdbm.open(filename, "r")
+ self.db = @DBM@.open(filename, "r")
l = locale.getlocale(locale.LC_MESSAGES)
raise KeyError()
+ def items(self):
+
+ items = []
+ @FIRST_KEY@
+ @CHECK_KEY@
+ if re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+', key) and not re.search('_[a-zA-Z0-9-]+\._[a-zA-Z0-9-]+\[.*\]', key):
+ localized_service_name = self[key]
+ items.append((key, localized_service_name))
+ @NEXT_KEY@
+ return items
+
def has_key(self, key):
for suffix in self.suffixes:
if __name__ == "__main__":
b = ServiceTypeDatabase()
+ print b.items()
print b["_http._tcp"]
print b["_ftp._tcp"]