pleyo.com

/src/trunk2/BAL/Implementations/Facilities/Generic/BCCookieManager.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (C) 2007 Pleyo.  All rights reserved.
00003  *
00004  * Redistribution and use in source and binary forms, with or without
00005  * modification, are permitted provided that the following conditions
00006  * are met:
00007  *
00008  * 1.  Redistributions of source code must retain the above copyright
00009  *     notice, this list of conditions and the following disclaimer.
00010  * 2.  Redistributions in binary form must reproduce the above copyright
00011  *     notice, this list of conditions and the following disclaimer in the
00012  *     documentation and/or other materials provided with the distribution.
00013  * 3.  Neither the name of Pleyo nor the names of
00014  *     its contributors may be used to endorse or promote products derived
00015  *     from this software without specific prior written permission.
00016  *
00017  * THIS SOFTWARE IS PROVIDED BY PLEYO AND ITS CONTRIBUTORS "AS IS" AND ANY
00018  * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
00019  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
00020  * DISCLAIMED. IN NO EVENT SHALL PLEYO OR ITS CONTRIBUTORS BE LIABLE FOR ANY
00021  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
00022  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
00023  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
00024  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
00025  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
00026  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00027  */
00028 
00040 #ifndef BTCOOKIEMANAGER_H
00041 #define BTCOOKIEMANAGER_H
00042 
00043 #include "BICookieJar.h"
00044 #include "BIObserver.h"
00045 #include "PlatformString.h"
00046 #include "StringHash.h"
00047 #include "wtf/HashMap.h"
00048 
00049 class BTCookie;
00050 class BTCookieMap;
00051 
00052 using BAL::BIObserver;
00053 
00058 class BCCookieManager : public BICookieJar, BIObserver {
00059 public:
00060     BCCookieManager();
00061     ~BCCookieManager();
00062 
00063     IMPLEMENT_BICOOKIEJAR;
00064 
00070     int add(const WebCore::String& host, const BTCookie& cookie);
00071 
00072     bool respectsSecurityStandards(const KURL& url, BTCookie& cookie);
00073     
00074     bool thisMapExists(String mapName);
00075 
00082     HashMap<WebCore::String, BTCookieMap*> getMapListForHost(const WebCore::String& host, bool onlyOneMap = false) const;
00083 
00089     void observe(const String&, const String&);
00090     
00095     void saveCookiesToFile();
00096     
00101     void getCookiesFromFile();
00102 
00103 private:
00104     // can't put reference BTCookieMap& in map
00105     HashMap<WebCore::String, BTCookieMap*> m_managerMap;
00106 
00108     unsigned short m_count;
00109 };
00110 
00111 
00112 #endif // BTCOOKIEMANAGER_H

Generated on Wed Nov 21 20:04:15 2007 for Origyn Web Browser by Doxygen 1.5.3

pleyo.com
pleyo.com