ENABLE_DEBUG_TOGGLE update, proper AIDL implementation
Data stats are now shown irrespective of whether ENABLE_DEBUG_TOGGLE is toggled or not. ITorServiceCallback.aidl has been updated to include a new method updateBandwidth(long ,long) to hook the data passed from the service into the GUI.
This commit is contained in:
parent
841d83b3b4
commit
d54e72e094
|
@ -694,14 +694,31 @@ public class Orbot extends Activity implements TorConstants, OnLongClickListener
|
||||||
mHandler.sendMessage(msg);
|
mHandler.sendMessage(msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
public void logMessage(String value) throws RemoteException {
|
public void logMessage(String value) throws RemoteException {
|
||||||
|
|
||||||
Message msg = mHandler.obtainMessage(TorServiceConstants.LOG_MSG);
|
Message msg = mHandler.obtainMessage(TorServiceConstants.LOG_MSG);
|
||||||
msg.getData().putString(HANDLER_TOR_MSG, value);
|
msg.getData().putString(HANDLER_TOR_MSG, value);
|
||||||
mHandler.sendMessage(msg);
|
mHandler.sendMessage(msg);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateBandwidth(long upload, long download)
|
||||||
|
throws RemoteException {
|
||||||
|
|
||||||
|
Message msg = Message.obtain();
|
||||||
|
msg.what = TorServiceConstants.MESSAGE_TRAFFIC_COUNT;
|
||||||
|
|
||||||
|
|
||||||
|
Bundle data = new Bundle();
|
||||||
|
data.putLong("upload", upload);
|
||||||
|
data.putLong("download", download);
|
||||||
|
|
||||||
|
msg.setData(data);
|
||||||
|
mHandler.sendMessage(msg);
|
||||||
|
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,11 @@ oneway interface ITorServiceCallback {
|
||||||
*/
|
*/
|
||||||
void statusChanged(String value);
|
void statusChanged(String value);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Called when the service returns the bandwidth user to display to the user
|
||||||
|
*/
|
||||||
|
void updateBandwidth(long value, long value2);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called when the service has something to add to the log
|
* Called when the service has something to add to the log
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -1122,37 +1122,14 @@ public class TorService extends Service implements TorServiceConstants, TorConst
|
||||||
sb.append("kb written");
|
sb.append("kb written");
|
||||||
|
|
||||||
logNotice(sb.toString());
|
logNotice(sb.toString());
|
||||||
DataCount datacount = new DataCount(written,read);
|
|
||||||
|
|
||||||
Message msg = Message.obtain();
|
|
||||||
msg.what = MESSAGE_TRAFFIC_COUNT;
|
|
||||||
//msg.obj = datacount;
|
|
||||||
Bundle data = new Bundle();
|
|
||||||
data.putLong("upload", datacount.Upload);
|
|
||||||
data.putLong("download", datacount.Download);
|
|
||||||
|
|
||||||
msg.setData(data);
|
|
||||||
|
|
||||||
Orbot.currentInstance.mHandler.sendMessage(msg);
|
|
||||||
|
|
||||||
//sendCallbackStatusMessage(message);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sendCallbackStatusMessage(written, read);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public class DataCount {
|
|
||||||
// data uploaded
|
|
||||||
public long Upload;
|
|
||||||
// data downloaded
|
|
||||||
public long Download;
|
|
||||||
|
|
||||||
|
|
||||||
DataCount(long Upload, long Download){
|
|
||||||
this.Upload = Upload;
|
|
||||||
this.Download = Download;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void circuitStatus(String status, String circID, String path) {
|
public void circuitStatus(String status, String circID, String path) {
|
||||||
|
|
||||||
|
@ -1422,6 +1399,36 @@ public class TorService extends Service implements TorServiceConstants, TorConst
|
||||||
mCallbacks.finishBroadcast();
|
mCallbacks.finishBroadcast();
|
||||||
inCallback = false;
|
inCallback = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private synchronized void sendCallbackStatusMessage (long upload, long download)
|
||||||
|
{
|
||||||
|
|
||||||
|
if (mCallbacks == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Broadcast to all clients the new value.
|
||||||
|
final int N = mCallbacks.beginBroadcast();
|
||||||
|
|
||||||
|
inCallback = true;
|
||||||
|
|
||||||
|
if (N > 0)
|
||||||
|
{
|
||||||
|
for (int i=0; i<N; i++) {
|
||||||
|
try {
|
||||||
|
mCallbacks.getBroadcastItem(i).updateBandwidth(upload, download);
|
||||||
|
|
||||||
|
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
// The RemoteCallbackList will take care of removing
|
||||||
|
// the dead object for us.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
mCallbacks.finishBroadcast();
|
||||||
|
inCallback = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private synchronized void sendCallbackLogMessage (String logMessage)
|
private synchronized void sendCallbackLogMessage (String logMessage)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue