/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- * * The contents of this file are subject to the Netscape Public * License Version 1.1 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.mozilla.org/NPL/ * * Software distributed under the License is distributed on an "AS * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. * * The Original Code is mozilla.org code. * * The Initial Developer of the Original Code is Netscape * Communications Corporation. Portions created by Netscape are * Copyright (C) 1998 Netscape Communications Corporation. All * Rights Reserved. * * Contributor(s): */ #ifndef NETCACHE_H #define NETCACHE_H #include "mkgeturl.h" PR_BEGIN_EXTERN_C /* Initialization */ extern void NET_CacheInit(void); /* Shutdown */ extern void NET_CleanupCache(void); /* create an HTML stream and push a bunch of HTML about * the cache */ extern void NET_DisplayCacheInfoAsHTML(ActiveEntry * cur_entry); /* create an HTML stream and push a bunch of HTML about * the memory cache - TODO consolidate these two into one function! - Gagan */ extern void NET_DisplayMemCacheInfoAsHTML(ActiveEntry * cur_entry); extern int NET_FindURLInCache(URL_Struct * URL_s, MWContext *ctxt); #ifdef NU_CACHE extern void NET_InitNuCacheProtocol(void); #else extern void NET_InitMemCacProtocol(void); #endif /* Will go away later */ extern PRBool NET_IsCacheTraceOn(void); /* return TRUE if the URL is in the cache and * is a partial cache file - TODO- only used in HTTP- cleanup - Gagan */ extern PRBool NET_IsPartialCacheFile(URL_Struct *URL_s); #ifdef NU_CACHE /* return TRUE if the URL exists somewhere in the cache */ extern PRBool NET_IsURLInCache(const URL_Struct *URL_s); #endif /* Update cache entry on a 304 return*/ extern void NET_RefreshCacheFileExpiration(URL_Struct * URL_s); /* remove a URL from the cache */ extern void NET_RemoveURLFromCache(URL_Struct *URL_s); /* Removed in NU_Cache, SAR should go through new api. - Gagan */ #ifndef NU_CACHE extern void NET_OpenExtCacheFAT(MWContext *ctxt, char * cache_name, char * instructions); extern void CACHE_CloseAllOpenSARCache(); extern void CACHE_OpenAllSARCache(); extern int NET_FindURLInMemCache(URL_Struct * URL_s, MWContext *ctxt); /* lookup routine * * builds a key and looks for it in the database. Returns an access * method and sets a filename in the URL struct if found */ extern int NET_FindURLInExtCache(URL_Struct * URL_s, MWContext *ctxt); #endif PR_END_EXTERN_C #endif /* NETCACHE_H */