summaryrefslogtreecommitdiff
path: root/python/acquire.cc
diff options
context:
space:
mode:
authorJulian Andres Klode <jak@debian.org>2009-07-16 18:23:46 +0200
committerJulian Andres Klode <jak@debian.org>2009-07-16 18:23:46 +0200
commitc7e8d9705d8b3570c00ed072b0957beb4a47397e (patch)
treed7037e1f220820b21994e97927482567ba1ff16e /python/acquire.cc
parentef106396218522fce5856744741c7b3f87261cc2 (diff)
downloadpython-apt-c7e8d9705d8b3570c00ed072b0957beb4a47397e.tar.gz
python/acquire.cc: Add AcquireItem.mode
Diffstat (limited to 'python/acquire.cc')
-rw-r--r--python/acquire.cc15
1 files changed, 14 insertions, 1 deletions
diff --git a/python/acquire.cc b/python/acquire.cc
index 25b10b06..e2fd3181 100644
--- a/python/acquire.cc
+++ b/python/acquire.cc
@@ -24,7 +24,18 @@ struct PyAcquireObject : public CppPyObject<pkgAcquire*> {
static PyObject *acquireworker_get_current_item(PyObject *self, void *closure)
{
- return PyAcquireItemDesc_FromCpp((GetCpp<pkgAcquire::Worker*>(self)->CurrentItem),false,self);
+ pkgAcquire::Worker *worker = GetCpp<pkgAcquire::Worker*>(self);
+
+ if (worker->CurrentItem == NULL) {
+ Py_RETURN_NONE;
+ }
+
+ PyAcquireObject *PyCache = (PyAcquireObject *)GetOwner<pkgAcquire::Worker*>(self);
+
+ pkgAcquire::Item *Item = worker->CurrentItem->Owner;
+ PyObject *PyItem = PyAcquireItem_FromCpp(Item,false,PyCache);
+ PyCache->items.push_back((PyAcquireItemObject *)PyItem);
+ return PyAcquireItemDesc_FromCpp(worker->CurrentItem,false,PyItem);
}
static PyObject *acquireworker_get_status(PyObject *self, void *closure)
@@ -188,6 +199,7 @@ MkGet(AcquireItemGetDestFile,Safe_FromString(Itm->DestFile.c_str()));
MkGet(AcquireItemGetErrorText,Safe_FromString(Itm->ErrorText.c_str()));
MkGet(AcquireItemGetFileSize,Py_BuildValue("i",Itm->FileSize));
MkGet(AcquireItemGetID,Py_BuildValue("i",Itm));
+MkGet(AcquireItemGetMode,Py_BuildValue("s",Itm->Mode));
MkGet(AcquireItemGetIsTrusted,Py_BuildValue("i",Itm->IsTrusted()));
MkGet(AcquireItemGetLocal,Py_BuildValue("i",Itm->Local));
MkGet(AcquireItemGetStatus,Py_BuildValue("i",Itm->Status));
@@ -207,6 +219,7 @@ static PyGetSetDef AcquireItemGetSet[] = {
{"error_text",AcquireItemGetErrorText},
{"filesize",AcquireItemGetFileSize},
{"id",AcquireItemGetID},
+ {"mode",AcquireItemGetMode},
{"is_trusted",AcquireItemGetIsTrusted},
{"local",AcquireItemGetLocal},
{"status",AcquireItemGetStatus},