Skip to content

Commit 26e1a02

Browse files
author
Wink Saville
committed
Add additional debug for time zone handling.
Change-Id: Ie46bba7e0ef7737a865f7efadbf963c2d14e488f
1 parent ff0e8cd commit 26e1a02

File tree

5 files changed

+44
-24
lines changed

5 files changed

+44
-24
lines changed

core/java/android/util/TimeUtils.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import java.io.IOException;
2727
import java.io.PrintWriter;
2828
import java.util.ArrayList;
29+
import java.util.Calendar;
2930
import java.util.Collection;
3031
import java.util.TimeZone;
3132
import java.util.Date;
@@ -381,4 +382,22 @@ public static void formatDuration(long time, long now, PrintWriter pw) {
381382
}
382383
formatDuration(time-now, pw, 0);
383384
}
385+
386+
/**
387+
* Convert a System.currentTimeMillis() value to a time of day value like
388+
* that printed in logs. MM-DD HH:MM:SS.MMM
389+
*
390+
* @param millis since the epoch (1/1/1970)
391+
* @return String representation of the time.
392+
* @hide
393+
*/
394+
public static String logTimeOfDay(long millis) {
395+
Calendar c = Calendar.getInstance();
396+
if (millis >= 0) {
397+
c.setTimeInMillis(millis);
398+
return String.format("%tm-%td %tH:%tM:%tS.%tL", c, c, c, c, c, c);
399+
} else {
400+
return Long.toString(millis);
401+
}
402+
}
384403
}

telephony/java/com/android/internal/telephony/DataConnection.java

Lines changed: 3 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
import android.os.Message;
3232
import android.os.SystemProperties;
3333
import android.text.TextUtils;
34+
import android.util.TimeUtils;
3435

3536
import java.io.FileDescriptor;
3637
import java.io.PrintWriter;
@@ -1224,21 +1225,6 @@ protected String getMessageInfo(Message msg) {
12241225
return info;
12251226
}
12261227

1227-
/**
1228-
* Convert a System.currentTimeMillis() value to a time of day value.
1229-
*
1230-
* @param millis since the epoch (1/1/1970)
1231-
* @return String representation of the time.
1232-
*/
1233-
private String timeMillisToTimeOfDay(long millis) {
1234-
Calendar c = Calendar.getInstance();
1235-
if (millis >= 0) {
1236-
c.setTimeInMillis(millis);
1237-
return String.format("%tm-%td %tH:%tM:%tS.%tL", c, c, c, c, c, c);
1238-
} else {
1239-
return Long.toString(millis);
1240-
}
1241-
}
12421228
/**
12431229
* Dump the current state.
12441230
*
@@ -1263,8 +1249,8 @@ public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
12631249
pw.println(" mLinkProperties=" + mLinkProperties);
12641250
pw.flush();
12651251
pw.println(" mCapabilities=" + mCapabilities);
1266-
pw.println(" createTime=" + timeMillisToTimeOfDay(createTime));
1267-
pw.println(" lastFailTime=" + timeMillisToTimeOfDay(lastFailTime));
1252+
pw.println(" createTime=" + TimeUtils.logTimeOfDay(createTime));
1253+
pw.println(" lastFailTime=" + TimeUtils.logTimeOfDay(lastFailTime));
12681254
pw.println(" lastFailCause=" + lastFailCause);
12691255
pw.flush();
12701256
pw.println(" mRetryOverride=" + mRetryOverride);

telephony/java/com/android/internal/telephony/ServiceStateTracker.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import android.os.RegistrantList;
2424
import android.telephony.ServiceState;
2525
import android.telephony.SignalStrength;
26+
import android.util.TimeUtils;
2627

2728
import java.io.FileDescriptor;
2829
import java.io.PrintWriter;
@@ -507,13 +508,15 @@ protected boolean shouldFixTimeZoneNow(PhoneBase phoneBase, String operatorNumer
507508
// Determine retVal
508509
boolean retVal = ((iccCardExist && (mcc != prevMcc)) || needToFixTimeZone);
509510
if (DBG) {
511+
long ctm = System.currentTimeMillis();
510512
log("shouldFixTimeZoneNow: retVal=" + retVal +
511513
" iccCard=" + iccCard +
512514
" iccCard.state=" + (iccCard == null ? "null" : iccCard.getState().toString()) +
513515
" iccCardExist=" + iccCardExist +
514516
" operatorNumeric=" + operatorNumeric + " mcc=" + mcc +
515517
" prevOperatorNumeric=" + prevOperatorNumeric + " prevMcc=" + prevMcc +
516-
" needToFixTimeZone=" + needToFixTimeZone);
518+
" needToFixTimeZone=" + needToFixTimeZone +
519+
" ltod=" + TimeUtils.logTimeOfDay(ctm));
517520
}
518521
return retVal;
519522
}

telephony/java/com/android/internal/telephony/cdma/CdmaServiceStateTracker.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -878,13 +878,19 @@ protected void fixTimeZone(String isoCountryCode) {
878878
// For NITZ string without time zone,
879879
// need adjust time to reflect default time zone setting
880880
zone = TimeZone.getDefault();
881-
long tzOffset;
882-
tzOffset = zone.getOffset(System.currentTimeMillis());
881+
long ctm = System.currentTimeMillis();
882+
long tzOffset = zone.getOffset(ctm);
883+
if (DBG) {
884+
log("fixTimeZone: tzOffset=" + tzOffset + " ltod=" + TimeUtils.logTimeOfDay(ctm));
885+
}
883886
if (getAutoTime()) {
884-
setAndBroadcastNetworkSetTime(System.currentTimeMillis() - tzOffset);
887+
long adj = ctm - tzOffset;
888+
if (DBG) log("fixTimeZone: adj ltod=" + TimeUtils.logTimeOfDay(adj));
889+
setAndBroadcastNetworkSetTime(adj);
885890
} else {
886891
// Adjust the saved NITZ time to account for tzOffset.
887892
mSavedTime = mSavedTime - tzOffset;
893+
if (DBG) log("fixTimeZone: adj mSavedTime=" + mSavedTime);
888894
}
889895
if (DBG) log("fixTimeZone: using default TimeZone");
890896
} else if (isoCountryCode.equals("")) {

telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -923,10 +923,16 @@ private void pollStateDone() {
923923
zone = TimeZone.getDefault();
924924
// For NITZ string without timezone,
925925
// need adjust time to reflect default timezone setting
926-
long tzOffset;
927-
tzOffset = zone.getOffset(System.currentTimeMillis());
926+
long ctm = System.currentTimeMillis();
927+
long tzOffset = zone.getOffset(ctm);
928+
if (DBG) {
929+
log("pollStateDone: tzOffset=" + tzOffset + " ltod=" +
930+
TimeUtils.logTimeOfDay(ctm));
931+
}
928932
if (getAutoTime()) {
929-
setAndBroadcastNetworkSetTime(System.currentTimeMillis() - tzOffset);
933+
long adj = ctm - tzOffset;
934+
if (DBG) log("pollStateDone: adj ltod=" + TimeUtils.logTimeOfDay(adj));
935+
setAndBroadcastNetworkSetTime(adj);
930936
} else {
931937
// Adjust the saved NITZ time to account for tzOffset.
932938
mSavedTime = mSavedTime - tzOffset;

0 commit comments

Comments
 (0)