Files
Mozilla/mozilla/network/cache/nu/src/CacheStubs.cpp
gagan%netscape.com 2bd31be77d Cache changes, bug fixes, etc.
git-svn-id: svn://10.0.0.236/trunk@16020 18797224-902f-48f8-a5cc-f745e15eee43
1998-12-09 02:43:16 +00:00

536 lines
9.7 KiB
C++

/* -*- 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.0 (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 Communicator client 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.
*/
/* Design and original implementation by Gagan Saksena '98 */
#include "CacheStubs.h"
#include "nsCacheManager.h"
#include "nsDiskModule.h"
#include "nsMemModule.h"
#include "nsCacheTrace.h"
#include "prlog.h"
#define CACHEMGR nsCacheManager::GetInstance()
void
Cache_Init(void)
{
CACHEMGR->Init();
}
void
Cache_Shutdown(void)
{
/* todo- Should the destructor for nsCacheManager object be forced here?*/
}
/* CacheManager functions */
PRBool
CacheManager_Contains(const char* i_url)
{
return CACHEMGR->Contains(i_url);
}
PRInt16
CacheManager_Entries()
{
return CACHEMGR->Entries();
}
void*
CacheManager_GetObject(const char* i_url)
{
return CACHEMGR->GetObj(i_url);
}
void
CacheManager_InfoAsHTML(char* o_Buffer)
{
CACHEMGR->InfoAsHTML(o_Buffer);
}
PRBool
CacheManager_IsOffline(void)
{
return CACHEMGR->IsOffline();
}
void
CacheManager_Offline(PRBool bSet)
{
CACHEMGR->Offline(bSet);
}
PRBool
CacheManager_Remove(const char* i_url)
{
return CACHEMGR->Remove(i_url);
}
PRUint32
CacheManager_WorstCaseTime(void)
{
return CACHEMGR->WorstCaseTime();
}
/* CacheObject functions */
void*
CacheObject_Create(const char* i_url)
{
return new nsCacheObject(i_url);
}
void
CacheObject_Destroy(void* pThis)
{
if (pThis)
{
((nsCacheObject*)pThis)->~nsCacheObject();
pThis = 0;
}
}
const char*
CacheObject_GetAddress(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->Address() : 0;
}
const char*
CacheObject_GetCharset(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->Charset() : 0;
}
const char*
CacheObject_GetContentEncoding(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->ContentEncoding() : 0;
}
PRUint32
CacheObject_GetContentLength(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->ContentLength() : 0;
}
const char*
CacheObject_GetContentType(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->ContentType() : 0;
}
const char*
CacheObject_GetEtag(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->Etag() : 0;
}
PRIntervalTime
CacheObject_GetExpires(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->Expires() : 0;
}
const char*
CacheObject_GetFilename(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->Filename() : 0;
}
PRBool
CacheObject_GetIsCompleted(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->IsCompleted() : PR_TRUE;
}
PRIntervalTime
CacheObject_GetLastAccessed(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->LastAccessed() : 0;
}
PRIntervalTime
CacheObject_GetLastModified(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->LastModified() : 0;
}
PRInt16
CacheObject_GetModule(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->Module() : -1;
}
const char*
CacheObject_GetPageServicesURL(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->PageServicesURL() : 0;
}
const char*
CacheObject_GetPostData(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->PostData() : 0;
}
PRUint32
CacheObject_GetPostDataLen(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->PostDataLen() : 0;
}
PRUint32
CacheObject_GetSize(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->Size() : 0;
}
PRUint32
CacheObject_GetState(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->State() : 0;
}
PRUint32
CacheObject_Hits(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->Hits() : 0;
}
PRBool
CacheObject_IsExpired(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->IsExpired() : PR_FALSE;
}
PRBool
CacheObject_IsPartial(const void* pThis)
{
return pThis ? ((nsCacheObject*)pThis)->IsPartial() : PR_FALSE;
}
PRUint32
CacheObject_Read(const void* pThis, char* o_Buffer, PRUint32 i_Len)
{
return pThis ? ((nsCacheObject*)pThis)->Read(o_Buffer, i_Len) : 0;
}
void
CacheObject_Reset(void* pThis)
{
if (pThis)
((nsCacheObject*)pThis)->Reset();
}
void
CacheObject_SetAddress(void* pThis, const char* i_Address)
{
if (pThis)
((nsCacheObject*)pThis)->Address(i_Address);
}
void
CacheObject_SetCharset(void* pThis, const char* i_Charset)
{
if (pThis)
((nsCacheObject*)pThis)->Charset(i_Charset);
}
void
CacheObject_SetContentEncoding(void* pThis, const char* i_Encoding)
{
if (pThis)
((nsCacheObject*)pThis)->ContentEncoding(i_Encoding);
}
void
CacheObject_SetContentLength(void* pThis, PRUint32 i_ContentLen)
{
if (pThis)
((nsCacheObject*)pThis)->ContentLength(i_ContentLen);
}
void
CacheObject_SetContentType(void* pThis, const char* i_ContentType)
{
if (pThis)
((nsCacheObject*)pThis)->ContentType(i_ContentType);
}
void
CacheObject_SetEtag(void* pThis, const char* i_Etag)
{
if (pThis)
((nsCacheObject*)pThis)->Etag(i_Etag);
}
void
CacheObject_SetExpires(void *pThis, const PRIntervalTime i_Time)
{
if (pThis)
((nsCacheObject*)pThis)->Expires(i_Time);
}
void
CacheObject_SetFilename(void* pThis, const char* i_Filename)
{
if (pThis)
((nsCacheObject*)pThis)->Filename(i_Filename);
}
void
CacheObject_SetIsCompleted(void* pThis, PRBool bCompleted)
{
if (pThis)
((nsCacheObject*)pThis)->IsCompleted(bCompleted);
}
void
CacheObject_SetLastModified(void* pThis, const PRIntervalTime i_Time)
{
if (pThis)
((nsCacheObject*)pThis)->LastModified(i_Time);
}
void
CacheObject_SetModule(void* pThis, const PRInt16 i_Module)
{
if (pThis)
((nsCacheObject*)pThis)->Module(i_Module);
}
void
CacheObject_SetPageServicesURL(void* pThis, const char* i_Url)
{
if (pThis)
((nsCacheObject*)pThis)->PageServicesURL(i_Url);
}
void
CacheObject_SetPostData(void* pThis, const char* i_PostData, const PRUint32 i_Len)
{
if (pThis)
((nsCacheObject*)pThis)->PostData(i_PostData, i_Len);
}
void
CacheObject_SetSize(void* pThis, const PRUint32 i_Size)
{
if (pThis)
((nsCacheObject*)pThis)->Size(i_Size);
}
void
CacheObject_SetState(void* pThis, const PRUint32 i_State)
{
if (pThis)
((nsCacheObject*)pThis)->State(i_State);
}
PRBool
CacheObject_Synch(void* pThis)
{
if (pThis)
{
nsCacheObject* pObj = (nsCacheObject*) pThis;
return CACHEMGR->GetModule(pObj->Module())->AddObject(pObj);
}
return PR_FALSE;
}
PRUint32
CacheObject_Write(void* pThis, const char* i_buffer, const PRUint32 i_length)
{
if (pThis)
{
nsCacheObject* pObj = (nsCacheObject*) pThis;
return pObj->Write(i_buffer, i_length);
}
return 0;
}
/* CachePref functions */
PRUint32
CachePref_GetDiskCacheSize(void)
{
return nsCachePref::GetInstance()->DiskCacheSize();
}
PRBool
CachePref_GetDiskCacheSSL(void)
{
return nsCachePref::GetInstance()->DiskCacheSSL();
}
PRUint32
CachePref_GetMemCacheSize(void)
{
return nsCachePref::GetInstance()->MemCacheSize();
}
void
CachePref_SetDiskCacheSize(const PRUint32 i_Size)
{
nsCachePref::GetInstance()->DiskCacheSize(i_Size);
}
void
CachePref_SetDiskCacheSSL(PRBool bSet)
{
nsCachePref::GetInstance()->DiskCacheSSL(bSet);
}
void
CachePref_SetMemCacheSize(const PRUint32 i_Size)
{
nsCachePref::GetInstance()->MemCacheSize(i_Size);
}
/* CacheTrace functions */
void
CacheTrace_Enable(PRBool bEnable)
{
nsCacheTrace::Enable(bEnable);
}
PRBool
CacheTrace_IsEnabled(void)
{
return nsCacheTrace::IsEnabled();
}
/* DiskModule functions */
#define DISKMOD nsCacheManager::GetInstance()->GetDiskModule()
PRBool
DiskModule_AddObject(void* pObject)
{
return DISKMOD->AddObject((nsCacheObject*)pObject);
}
PRBool
DiskModule_Contains(const char* i_url)
{
return DISKMOD->Contains(i_url);
}
PRUint32
DiskModule_Entries(void)
{
return DISKMOD->Entries();
}
PRUint32
DiskModule_GetSize(void)
{
return DISKMOD->Size();
}
PRUint32
DiskModule_GetSizeInUse(void)
{
return DISKMOD->SizeInUse();
}
PRBool
DiskModule_IsEnabled(void)
{
return DISKMOD->IsEnabled();
}
PRBool
DiskModule_Remove(const char* i_url)
{
return DISKMOD->Remove(i_url);
}
PRBool
DiskModule_RemoveAll(void)
{
return DISKMOD->RemoveAll();
}
void
DiskModule_SetSize(PRUint32 i_Size)
{
DISKMOD->SetSize(i_Size);
}
/* MemModule functions */
#define MEMMOD nsCacheManager::GetInstance()->GetMemModule()
PRBool
MemModule_AddObject(void* pObject)
{
return MEMMOD->AddObject((nsCacheObject*)pObject);
}
PRBool
MemModule_Contains(const char* i_url)
{
return MEMMOD->Contains(i_url);
}
PRUint32
MemModule_Entries(void)
{
return MEMMOD->Entries();
}
PRUint32
MemModule_GetSize(void)
{
return MEMMOD->Size();
}
PRUint32
MemModule_GetSizeInUse(void)
{
return MEMMOD->SizeInUse() ;
}
PRBool
MemModule_IsEnabled(void)
{
return MEMMOD->IsEnabled();
}
PRBool
MemModule_Remove(const char* i_url)
{
return MEMMOD->Remove(i_url);
}
PRBool
MemModule_RemoveAll(void)
{
return MEMMOD->RemoveAll();
}
void
MemModule_SetSize(PRUint32 i_Size)
{
MEMMOD->SetSize(i_Size);
}
#undef MEMMOD
#undef DISKMOD
#undef CACHEMGR