[Nym3-commit] r287 - trunk/nym3/Client

jr at conuropsis.org jr at conuropsis.org
Fri Jun 10 12:18:29 CEST 2005


Author: jr
Date: 2005-06-10 12:18:28 +0200 (Fri, 10 Jun 2005)
New Revision: 287

Modified:
   trunk/nym3/Client/Account.py
   trunk/nym3/Client/Main.py
Log:
-remove a useless access to the synbox in list-mbox
-add list-journal (the way to display the content of an entry must be improved)


Modified: trunk/nym3/Client/Account.py
===================================================================
--- trunk/nym3/Client/Account.py	2005-06-05 23:58:24 UTC (rev 286)
+++ trunk/nym3/Client/Account.py	2005-06-10 10:18:28 UTC (rev 287)
@@ -414,6 +414,11 @@
 	self._load_mbox()
 	return copy.deepcopy(self.mbox)
 
+    def get_journal(self):
+	"""return a copy of the journal"""
+	self._load_journal()
+	return copy.deepcopy(self.journal)
+
     def add_synset(self, midlist, bf, synset):
 	self._load_synbox()
 	t = (midlist, bf, synset)

Modified: trunk/nym3/Client/Main.py
===================================================================
--- trunk/nym3/Client/Main.py	2005-06-05 23:58:24 UTC (rev 286)
+++ trunk/nym3/Client/Main.py	2005-06-10 10:18:28 UTC (rev 287)
@@ -53,6 +53,8 @@
     \tlist-syn\tList already fetched summaries
     \tdump-syn\tDump already fetched summaries
     \tlist-mbox\tList already fetched emails
+    \tlist-journal\tList commands recorded in the journal (sent but not
+    \t\t\tacknowledged yet)
     \tsend-surb\tSend SURBs
     \texport\t\tExport already fetched emails to a file"""
 
@@ -547,7 +549,6 @@
 def list_mbox(ui, config, nickname = None):
     account = get_account_from_nickname(ui, config, nickname,
 	    "No nickname given, abort\nUse -n <nickname>")
-    synbox = account.get_synbox()
     mbox = account.get_mbox()
     secring = decode_secring(config, ui)
     for mid in mbox.keys():
@@ -555,6 +556,30 @@
 	ui.display("%s" % binascii.hexlify(mid))
 	ui.display(Mail.syn_summary(clear))
 
+def journal_time_cmp(a, b):
+    seqnoa, msga, ta = a
+    seqnob, msgb, tb = b
+    return ta < tb
+
+def list_journal(ui, config, nickname = None):
+    account = get_account_from_nickname(ui, config, nickname,
+	    "No nickname given, abort\nUse -n <nickname>")
+    journal = account.get_journal()
+    #TODO do we need encryption?
+    #secring = decode_secring(config, ui)
+    l = []
+    for seqno in journal.keys():
+	#clear = decipher_string(mbox[mid], secring, account['encKeys'])
+	m, t = journal[seqno]
+	l.append((seqno, m, t))
+    l.sort(journal_time_cmp)
+    for i, (s, m, t) in enumerate(l):
+	ui.display("%d %s %s" % (i, binascii.hexlify(s), str(t))
+	#TODO display the content of the command
+	#ui.display()
+
+
+
 def export(ui, config, nickname, output = None, args = []):
     account = get_account_from_nickname(ui, config, nickname,
 	    "No nickname given, abort\nUse -n <nickname>")
@@ -743,6 +768,17 @@
 	list_mbox(ui, config, options.nickname)
 	sys.exit(0)
 
+    if args[1] == "list-journal":
+	parser = OptionParser()
+	parser.add_option("-n", "--nickname", action = "store",
+			    dest = "nickname", help = "The nickname "
+			    "of the account whose journal to list")
+	(options, args) = parser.parse_args(args[2:])
+	ui = CLI()
+	config = Config.Config()
+	list_journal(ui, config, options.nickname)
+	sys.exit(0)
+
     if args[1] == "export":
 	parser = OptionParser()
 	parser.add_option("-n", "--nickname", action = "store",



More information about the Nym3-commit mailing list