From: meejah <meejah@meejah.ca>
Date: Mon, 1 Feb 2016 16:03:07 +0000 (-0700)
Subject: flesh out IQueuedItem
X-Git-Url: https://git.rkrishnan.org/%5B/frontends/%22file:/sub?a=commitdiff_plain;h=b5cc7f6a1cb6a342f3088fd1710b2e31201c73f5;p=tahoe-lafs%2Ftahoe-lafs.git

flesh out IQueuedItem
---

diff --git a/src/allmydata/frontends/magic_folder.py b/src/allmydata/frontends/magic_folder.py
index 8a2b07e1..c3913d35 100644
--- a/src/allmydata/frontends/magic_folder.py
+++ b/src/allmydata/frontends/magic_folder.py
@@ -9,6 +9,8 @@ from twisted.python.failure import Failure
 from twisted.python import runtime
 from twisted.application import service
 
+from zope.interface import Interface, Attribute, implementer
+
 from allmydata.util import fileutil
 from allmydata.interfaces import IDirectoryNode
 from allmydata.util import log
@@ -199,10 +201,24 @@ class QueueMixin(HookMixin):
             raise
 
 
-from zope.interface import Interface, implementer
-
+# this isn't in interfaces.py because it's very specific to QueueMixin
 class IQueuedItem(Interface):
-    pass
+    relpath_u = Attribute("The path this item represents")
+    progress = Attribute("A PercentProgress instance")
+
+    def set_status(self, status, current_time=None):
+        """
+        """
+
+    def status_time(self, state):
+        """
+        Get the time of particular state change, or None
+        """
+
+    def status_history(self):
+        """
+        All status changes, sorted latest -> oldest
+        """
 
 
 @implementer(IQueuedItem)