Merge "Type check before casting from CookieHandler to CookieManager" into oc-dr1-dev

This commit is contained in:
Sungsoo Lim
2017-07-19 22:41:02 +00:00
committed by Android (Google) Code Review
2 changed files with 27 additions and 22 deletions

View File

@@ -61,9 +61,9 @@ public class MediaHTTPConnection extends IMediaHTTPConnection.Stub {
private final static int MAX_REDIRECTS = 20;
public MediaHTTPConnection() {
CookieManager cookieManager = (CookieManager)CookieHandler.getDefault();
if (cookieManager == null) {
Log.w(TAG, "MediaHTTPConnection: Unexpected. No CookieManager found.");
CookieHandler cookieHandler = CookieHandler.getDefault();
if (cookieHandler == null) {
Log.w(TAG, "MediaHTTPConnection: Unexpected. No CookieHandler found.");
}
native_setup();

View File

@@ -41,34 +41,40 @@ public class MediaHTTPService extends IMediaHTTPService.Stub {
synchronized (mCookieStoreInitialized) {
// Only need to do it once for all connections
if ( !mCookieStoreInitialized ) {
CookieManager cookieManager = (CookieManager)CookieHandler.getDefault();
if (cookieManager == null) {
cookieManager = new CookieManager();
CookieHandler.setDefault(cookieManager);
Log.v(TAG, "makeHTTPConnection: CookieManager created: " + cookieManager);
}
else {
Log.v(TAG, "makeHTTPConnection: CookieManager(" + cookieManager + ") exists.");
CookieHandler cookieHandler = CookieHandler.getDefault();
if (cookieHandler == null) {
cookieHandler = new CookieManager();
CookieHandler.setDefault(cookieHandler);
Log.v(TAG, "makeHTTPConnection: CookieManager created: " + cookieHandler);
} else {
Log.v(TAG, "makeHTTPConnection: CookieHandler (" + cookieHandler + ") exists.");
}
// Applying the bootstrapping cookies
if ( mCookies != null ) {
CookieStore store = cookieManager.getCookieStore();
for ( HttpCookie cookie : mCookies ) {
try {
store.add(null, cookie);
} catch ( Exception e ) {
Log.v(TAG, "makeHTTPConnection: CookieStore.add" + e);
if ( cookieHandler instanceof CookieManager ) {
CookieManager cookieManager = (CookieManager)cookieHandler;
CookieStore store = cookieManager.getCookieStore();
for ( HttpCookie cookie : mCookies ) {
try {
store.add(null, cookie);
} catch ( Exception e ) {
Log.v(TAG, "makeHTTPConnection: CookieStore.add" + e);
}
//for extended debugging when needed
//Log.v(TAG, "MediaHTTPConnection adding Cookie[" + cookie.getName() +
// "]: " + cookie);
}
//for extended debugging when needed
//Log.v(TAG, "MediaHTTPConnection adding Cookie[" + cookie.getName() +
// "]: " + cookie);
} else {
Log.w(TAG, "makeHTTPConnection: The installed CookieHandler is not a "
+ "CookieManager. Cant add the provided cookies to the cookie "
+ "store.");
}
} // mCookies
mCookieStoreInitialized = true;
Log.v(TAG, "makeHTTPConnection(" + this + "): cookieManager: " + cookieManager +
Log.v(TAG, "makeHTTPConnection(" + this + "): cookieHandler: " + cookieHandler +
" Cookies: " + mCookies);
} // mCookieStoreInitialized
} // synchronized
@@ -92,5 +98,4 @@ public class MediaHTTPService extends IMediaHTTPService.Stub {
return null;
}
}