diff --git a/api/current.xml b/api/current.xml index 99949cf2b679c..37736e355f064 100644 --- a/api/current.xml +++ b/api/current.xml @@ -90859,6 +90859,19 @@ + + + + - - - - - - - - - - RFC 822, + * RFC 850, + * RFC 1036, + * RFC 1123 and + * ANSI + * C's asctime(). + * + * @return the number of milliseconds since Jan. 1, 1970, midnight GMT. + * @throws IllegalArgumentException if {@code dateString} is not a date or + * of an unsupported format. + */ + public static long parseDate(String dateString) { + return HttpDateTime.parse(dateString); + } } diff --git a/core/java/android/webkit/CacheManager.java b/core/java/android/webkit/CacheManager.java index d19805e6a8c8c..d5058b0e0f8e1 100644 --- a/core/java/android/webkit/CacheManager.java +++ b/core/java/android/webkit/CacheManager.java @@ -17,8 +17,8 @@ package android.webkit; import android.content.Context; +import android.net.http.AndroidHttpClient; import android.net.http.Headers; -import android.net.http.HttpDateTime; import android.os.FileUtils; import android.util.Log; import java.io.File; @@ -716,7 +716,7 @@ public final class CacheManager { ret.expiresString = headers.getExpires(); if (ret.expiresString != null) { try { - ret.expires = HttpDateTime.parse(ret.expiresString); + ret.expires = AndroidHttpClient.parseDate(ret.expiresString); } catch (IllegalArgumentException ex) { // Take care of the special "-1" and "0" cases if ("-1".equals(ret.expiresString) @@ -831,7 +831,7 @@ public final class CacheManager { // 24 * 60 * 60 * 1000 long lastmod = System.currentTimeMillis() + 86400000; try { - lastmod = HttpDateTime.parse(ret.lastModified); + lastmod = AndroidHttpClient.parseDate(ret.lastModified); } catch (IllegalArgumentException ex) { Log.e(LOGTAG, "illegal lastModified: " + ret.lastModified); } diff --git a/core/java/android/webkit/CookieManager.java b/core/java/android/webkit/CookieManager.java index 758a1529c0bd4..ac20791c29eaa 100644 --- a/core/java/android/webkit/CookieManager.java +++ b/core/java/android/webkit/CookieManager.java @@ -18,7 +18,7 @@ package android.webkit; import android.net.ParseException; import android.net.WebAddress; -import android.net.http.HttpDateTime; +import android.net.http.AndroidHttpClient; import android.util.Log; @@ -939,7 +939,7 @@ public final class CookieManager { } if (name.equals(EXPIRES)) { try { - cookie.expires = HttpDateTime.parse(value); + cookie.expires = AndroidHttpClient.parseDate(value); } catch (IllegalArgumentException ex) { Log.e(LOGTAG, "illegal format for expires: " + value); diff --git a/core/java/android/net/http/HttpDateTime.java b/core/java/com/android/internal/http/HttpDateTime.java similarity index 98% rename from core/java/android/net/http/HttpDateTime.java rename to core/java/com/android/internal/http/HttpDateTime.java index c7a31ee150bf3..8ebd4aaf1ac0d 100644 --- a/core/java/android/net/http/HttpDateTime.java +++ b/core/java/com/android/internal/http/HttpDateTime.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package android.net.http; +package com.android.internal.http; import android.text.format.Time; @@ -82,7 +82,7 @@ public final class HttpDateTime { int second; } - public static Long parse(String timeString) + public static long parse(String timeString) throws IllegalArgumentException { int date = 1; diff --git a/preloaded-classes b/preloaded-classes index 54c73039ba5f2..8114562b07839 100644 --- a/preloaded-classes +++ b/preloaded-classes @@ -313,7 +313,7 @@ android.net.http.AndroidHttpClientConnection android.net.http.EventHandler android.net.http.Headers android.net.http.HttpsConnection -android.net.http.HttpDateTime +com.android.internal.http.HttpDateTime android.net.http.Request android.net.http.RequestQueue android.net.http.SslCertificate