]> git.phdru.name Git - bookmarks_db.git/blob - convert_st.py
Added docstrings, __{version,revision,etc}__ boilerplates.
[bookmarks_db.git] / convert_st.py
1 #! /usr/bin/env python
2 """Convert a bkmk database to a different storage.
3
4 This file is a part of Bookmarks database and Internet robot.
5 """
6
7 __version__ = "$Revision$"[11:-2]
8 __revision__ = "$Id$"[5:-2]
9 __date__ = "$Date$"[7:-2]
10 __author__ = "Oleg Broytman <phd@phdru.name>"
11 __copyright__ = "Copyright (C) 2000-2011 PhiloSoft Design"
12 __license__ = "GNU GPL"
13
14 import sys
15
16
17 def run():
18    from getopt import getopt
19    optlist, args = getopt(sys.argv[1:], "s")
20
21    report_stats = 1
22
23    for _opt, _arg in optlist:
24       if _opt == '-s':
25          report_stats = 0
26    try:
27       del _opt, _arg
28    except NameError:
29       pass
30
31    if len(args) <> 1:
32       sys.stderr.write("convert_st: too many or too few arguments\n")
33       sys.stderr.write("Usage: convert_st [-s] new_storage\n")
34       sys.exit(1)
35
36    from storage import storage, import_storage
37    storage = storage()
38
39    new_storage = import_storage(args[0])
40    new_storage = new_storage()
41
42    if report_stats:
43       sys.stdout.write("Loading %s: " % storage.filename)
44       sys.stdout.flush()
45
46    root_folder = storage.load()
47
48    if report_stats:
49       print "Ok"
50       sys.stdout.write("Converting to %s: " % new_storage.filename)
51       sys.stdout.flush()
52
53    new_storage.store(root_folder)
54
55    if report_stats:
56       print "Ok"
57
58
59 if __name__ == '__main__':
60    run()