[chirp_devel] [PATCH 2 of 2] [RFC] Make RadioReference push status during the fetch
Dan Smith
Thu Apr 12 15:52:55 PDT 2012
# HG changeset patch
# User Dan Smith <dsmith at danplanet.com>
# Date 1334271166 25200
# Node ID a90fe5ace23ad6a26d79063c471912e504354cb8
# Parent 61f7edad8abd2c570a5f4d57a520183acd3ca93c
[RFC] Make RadioReference push status during the fetch
Since we're walking a bunch of data, this helps the user not wonder if
things are actually happening behind the scenes.
Tom, this should give you something to start with and hopefully improve
a little.
Bug #00
diff -r 61f7edad8abd -r a90fe5ace23a chirp/radioreference.py
--- a/chirp/radioreference.py Thu Apr 12 15:51:47 2012 -0700
+++ b/chirp/radioreference.py Thu Apr 12 15:52:46 2012 -0700
@@ -30,7 +30,7 @@
"P25" : "P25",
}
-class RadioReferenceRadio(chirp_common.Radio):
+class RadioReferenceRadio(chirp_common.NetworkSourceRadio):
VENDOR = "Radio Reference LLC"
MODEL = "RadioReference.com"
@@ -61,15 +61,27 @@
zipcode = self._client.service.getZipcodeInfo(self._zip, self._auth)
county = self._client.service.getCountyInfo(zipcode.ctid, self._auth)
+
+ status = chirp_common.Status()
+ status.max = len(county.cats) + len(county.agencyList)
+
for cat in county.cats:
+ status.msg = "Fetching category %s" % cat.cName
+ status.cur += 1
+ self.status_fn(status)
print "Fetching category:", cat.cName
for subcat in cat.subcats:
print "\t", subcat.scName
result = self._client.service.getSubcatFreqs(subcat.scid, self._auth)
self._freqs += result
for agency in county.agencyList:
+ status.cur += 1
+
agency = self._client.service.getAgencyInfo(agency.aid, self._auth)
for cat in agency.cats:
+ status.msg = "Fetching agency %s" % cat.cName
+ self.status_fn(status)
+
print "Fetching category:", cat.cName
for subcat in cat.subcats:
print "\t", subcat.scName
@@ -153,4 +165,4 @@
print rrr.get_memory(0)
if __name__ == "__main__":
- main()
\ No newline at end of file
+ main()
More information about the chirp_devel
mailing list