Back to index

lightning-sunbird  0.9+nobinonly
Classes | Defines | Typedefs | Functions | Variables
nsComponentManager.cpp File Reference
#include <stdlib.h>
#include "nscore.h"
#include "nsISupports.h"
#include "nspr.h"
#include "nsCRT.h"
#include "nsAutoLock.h"
#include "nsCOMPtr.h"
#include "nsComponentManager.h"
#include "nsDirectoryService.h"
#include "nsDirectoryServiceDefs.h"
#include "nsCategoryManager.h"
#include "nsCategoryManagerUtils.h"
#include "nsIComponentLoader.h"
#include "nsIEnumerator.h"
#include "nsIInterfaceInfoManager.h"
#include "nsIModule.h"
#include "nsIObserverService.h"
#include "nsISimpleEnumerator.h"
#include "nsXPCOM.h"
#include "nsXPCOMPrivate.h"
#include "nsISupportsPrimitives.h"
#include "nsLocalFile.h"
#include "nsNativeComponentLoader.h"
#include "nsReadableUtils.h"
#include "nsString.h"
#include "nsXPIDLString.h"
#include "prcmon.h"
#include "xptinfo.h"
#include "nsInt64.h"
#include "nsManifestLineReader.h"
#include "prlog.h"

Go to the source code of this file.

Classes

class  PLDHashTableEnumeratorImpl
struct  PLDHashTableEnumeratorImpl::Closure
struct  PersistentWriterArgs
struct  UnregisterConditions

Defines

#define PL_ARENA_CONST_ALIGN_MASK   7
#define NS_CM_BLOCK_SIZE   (1024 * 8)
#define NS_LOADER_DATA_ALLOC_STEP   6
#define BIG_REGISTRY_BUFLEN   (512*1024)
#define NS_EMPTY_IID
#define UID_STRING_LENGTH   39
#define PERSISTENT_REGISTRY_VERSION_MINOR   5
#define PERSISTENT_REGISTRY_VERSION_MAJOR   0

Typedefs

typedef NS_CALLBACKEnumeratorConverter )(PLDHashTable *table, const PLDHashEntryHdr *hdr, void *data, nsISupports **retval)

Functions

 NS_DEFINE_CID (kEmptyCID, NS_EMPTY_IID)
 NS_DEFINE_CID (kCategoryManagerCID, NS_CATEGORYMANAGER_CID)
static void GetIDString (const nsID &aCID, char buf[UID_STRING_LENGTH])
char * ArenaStrndup (const char *s, PRUint32 len, PLArenaPool *arena)
char * ArenaStrdup (const char *s, PLArenaPool *arena)
PRBool PR_CALLBACK nsFactoryEntry_Destroy (nsHashKey *aKey, void *aData, void *closure)
 factory_GetKey (PLDHashTable *aTable, PLDHashEntryHdr *aHdr)
 factory_HashKey (PLDHashTable *aTable, const void *aKey)
 factory_MatchEntry (PLDHashTable *aTable, const PLDHashEntryHdr *aHdr, const void *aKey)
 factory_ClearEntry (PLDHashTable *aTable, PLDHashEntryHdr *aHdr)
 contractID_ClearEntry (PLDHashTable *aTable, PLDHashEntryHdr *aHdr)
 NS_IMPL_ISUPPORTS3 (PLDHashTableEnumeratorImpl, nsIBidirectionalEnumerator, nsIEnumerator, nsISimpleEnumerator) PLDHashTableEnumeratorImpl
NS_IMETHODIMP PL_NewDHashTableEnumerator (PLDHashTable *table, EnumeratorConverter converter, void *converterData, PLDHashTableEnumeratorImpl **retval)
static NS_IMETHODIMP ConvertFactoryEntryToCID (PLDHashTable *table, const PLDHashEntryHdr *hdr, void *data, nsISupports **retval)
static NS_IMETHODIMP ConvertContractIDKeyToString (PLDHashTable *table, const PLDHashEntryHdr *hdr, void *data, nsISupports **retval)
static nsresult GetLocationFromDirectoryService (const char *prop, nsIFile **aDirectory)
PRIntn PR_CALLBACK AutoRegEntryDestroy (nsHashKey *aKey, void *aData, void *aClosure)
 NS_IMPL_THREADSAFE_ISUPPORTS8 (nsComponentManagerImpl, nsIComponentManager, nsIServiceManager, nsISupportsWeakReference, nsIInterfaceRequestor, nsIComponentRegistrar, nsIServiceManagerObsolete, nsIComponentManagerObsolete, nsIComponentLoaderManager) nsresult nsComponentManagerImpl
static PRBool ReadSectionHeader (nsManifestLineReader &reader, const char *token)
 ContractIDWriter (PLDHashTable *table, PLDHashEntryHdr *hdr, PRUint32 number, void *arg)
 ClassIDWriter (PLDHashTable *table, PLDHashEntryHdr *hdr, PRUint32 number, void *arg)
PRIntn PR_CALLBACK AutoRegEntryWriter (nsHashKey *aKey, void *aData, void *aClosure)
static PLDHashOperator PR_CALLBACK FreeServiceFactoryEntryEnumerate (PLDHashTable *aTable, PLDHashEntryHdr *aHdr, PRUint32 aNumber, void *aData)
static PLDHashOperator PR_CALLBACK FreeServiceContractIDEntryEnumerate (PLDHashTable *aTable, PLDHashEntryHdr *aHdr, PRUint32 aNumber, void *aData)
static nsresult MakeRegistryName (const char *aDllName, const char *prefix, char **regName)
static PLDHashOperator PR_CALLBACK DeleteFoundCIDs (PLDHashTable *aTable, PLDHashEntryHdr *aHdr, PRUint32 aNumber, void *aData)
NS_COM nsresult NS_GetComponentManager (nsIComponentManager **result)
 Public Method to access to the component manager.
NS_COM nsresult NS_GetServiceManager (nsIServiceManager **result)
 Public Method to access to the service manager.
NS_COM nsresult NS_GetComponentRegistrar (nsIComponentRegistrar **result)
 Public Method to access to the component registration manager.
nsresult NS_GetComponentLoaderManager (nsIComponentLoaderManager **result)

Variables

NS_COM PRLogModuleInfonsComponentManagerLog = nsnull
const char classIDKeyName [] = "classID"
const char classesKeyName [] = "contractID"
const char componentLoadersKeyName [] = "componentLoaders"
const char componentsKeyName [] = "components"
const char xpcomComponentsKeyName [] = "software/mozilla/XPCOM/components"
const char xpcomKeyName [] = "software/mozilla/XPCOM"
const char classIDValueName [] = "ClassID"
const char classNameValueName [] = "ClassName"
const char componentCountValueName [] = "ComponentsCount"
const char componentTypeValueName [] = "ComponentType"
const char contractIDValueName [] = "ContractID"
const char fileSizeValueName [] = "FileSize"
const char inprocServerValueName [] = "InprocServer"
const char lastModValueName [] = "LastModTimeStamp"
const char nativeComponentType [] = "application/x-mozilla-native"
const char staticComponentType [] = "application/x-mozilla-static"
const char versionValueName [] = "VersionString"
static const char XPCOM_ABSCOMPONENT_PREFIX [] = "abs:"
static const char XPCOM_RELCOMPONENT_PREFIX [] = "rel:"
static const char XPCOM_GRECOMPONENT_PREFIX [] = "gre:"
static const char gIDFormat [] = "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}"
PRBool gXPCOMShuttingDown
static const PLDHashTableOps factory_DHashTableOps
static const PLDHashTableOps contractID_DHashTableOps

Class Documentation

struct PLDHashTableEnumeratorImpl::Closure

Definition at line 454 of file nsComponentManager.cpp.

Collaboration diagram for PLDHashTableEnumeratorImpl::Closure:
Class Members
EnumeratorConverter converter
void * data
PLDHashTableEnumeratorImpl * impl
PRBool succeeded
struct PersistentWriterArgs

Definition at line 1319 of file nsComponentManager.cpp.

Collaboration diagram for PersistentWriterArgs:
Class Members
PRFileDesc * mFD
nsLoaderdata * mLoaderData
struct UnregisterConditions

Definition at line 2960 of file nsComponentManager.cpp.

Collaboration diagram for UnregisterConditions:
Class Members
const nsCID * cid
nsIFactory * factory
const char * regName

Define Documentation

#define BIG_REGISTRY_BUFLEN   (512*1024)

Definition at line 112 of file nsComponentManager.cpp.

#define NS_CM_BLOCK_SIZE   (1024 * 8)

Definition at line 59 of file nsComponentManager.cpp.

Value:
{                                                    \
    0x00000000,                                      \
    0x0000,                                          \
    0x0000,                                          \
    {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} \
}

Definition at line 143 of file nsComponentManager.cpp.

Definition at line 107 of file nsComponentManager.cpp.

Definition at line 963 of file nsComponentManager.cpp.

Definition at line 962 of file nsComponentManager.cpp.

Definition at line 58 of file nsComponentManager.cpp.

Definition at line 154 of file nsComponentManager.cpp.


Typedef Documentation

Definition at line 426 of file nsComponentManager.cpp.


Function Documentation

char* ArenaStrdup ( const char *  s,
PLArenaPool arena 
)

Definition at line 272 of file nsComponentManager.cpp.

{
    return ArenaStrndup(s, strlen(s), arena);
}

Here is the call graph for this function:

Here is the caller graph for this function:

char* ArenaStrndup ( const char *  s,
PRUint32  len,
PLArenaPool arena 
)

Definition at line 261 of file nsComponentManager.cpp.

{
    void *mem;
    // Include trailing null in the len
    PL_ARENA_ALLOCATE(mem, arena, len+1);
    if (mem)
        memcpy(mem, s, len+1);
    return NS_STATIC_CAST(char *, mem);
}

Here is the call graph for this function:

Here is the caller graph for this function:

PRIntn PR_CALLBACK AutoRegEntryDestroy ( nsHashKey *  aKey,
void aData,
void aClosure 
)

Definition at line 855 of file nsComponentManager.cpp.

{
    delete (AutoRegEntry*)aData;
    return kHashEnumerateNext;
}

Here is the caller graph for this function:

PRIntn PR_CALLBACK AutoRegEntryWriter ( nsHashKey *  aKey,
void aData,
void aClosure 
)

Definition at line 1403 of file nsComponentManager.cpp.

{
    PRFileDesc* fd = (PRFileDesc*) aClosure;
    AutoRegEntry* entry = (AutoRegEntry*) aData;

    const char* extraData = entry->GetOptionalData();
    const char *fmt;
    if (extraData)
        fmt = "%s,%lld,%s\n";
    else
        fmt = "%s,%lld\n";
    PR_fprintf(fd, fmt, entry->GetName().get(), entry->GetDate(), extraData);

    return PR_TRUE;
}

Here is the call graph for this function:

Here is the caller graph for this function:

ClassIDWriter ( PLDHashTable table,
PLDHashEntryHdr hdr,
PRUint32  number,
void arg 
)

Definition at line 1350 of file nsComponentManager.cpp.

{
    nsFactoryEntry *factoryEntry = ((nsFactoryTableEntry*)hdr)->mFactoryEntry;
    PRFileDesc* fd = ((PersistentWriterArgs*)arg)->mFD;
    nsLoaderdata *loaderData = ((PersistentWriterArgs*)arg)->mLoaderData;

    // for now, we only save out the top most parent.
    while (factoryEntry->mParent)
        factoryEntry = factoryEntry->mParent;

    if (factoryEntry->mTypeIndex < 0) {
        return PL_DHASH_NEXT;
    }

    char cidString[UID_STRING_LENGTH];
    GetIDString(factoryEntry->mCid, cidString);

    char *contractID = nsnull, *className = nsnull;

    nsCOMPtr<nsIClassInfo> classInfo = do_QueryInterface(factoryEntry->mFactory);
    if (classInfo)
    {
        classInfo->GetContractID(&contractID);
        classInfo->GetClassDescription(&className);
    }

    const char * loaderName = nsnull;
    if (factoryEntry->mTypeIndex)
        loaderName = loaderData[factoryEntry->mTypeIndex].type;

    char* location = factoryEntry->mLocation;

    // cid,contract_id,type,class_name,inproc_server
    PR_fprintf(fd,
               "%s,%s,%s,%s,%s\n",
               cidString,
               (contractID ? contractID : ""),
               (loaderName ? loaderName : ""),
               (className  ? className  : ""),
               (location   ? location   : ""));

    if (contractID)
        PR_Free(contractID);
    if (className)
        PR_Free(className);

    return PL_DHASH_NEXT;
}

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 333 of file nsComponentManager.cpp.

{
    nsContractIDTableEntry* entry = NS_STATIC_CAST(nsContractIDTableEntry*, aHdr);
    if (entry->mFactoryEntry->mTypeIndex == NS_COMPONENT_TYPE_SERVICE_ONLY &&
        entry->mFactoryEntry->mCid.Equals(kEmptyCID)) {
        // this object is owned by the hash.
        // nsFactoryEntry is arena allocated. So we dont delete it.
        // We call the destructor by hand.
        entry->mFactoryEntry->~nsFactoryEntry();
    }

    // contractIDs are arena allocated. No need to free them.

    PL_DHashClearEntryStub(aTable, aHdr);
}

Here is the call graph for this function:

ContractIDWriter ( PLDHashTable table,
PLDHashEntryHdr hdr,
PRUint32  number,
void arg 
)

Definition at line 1326 of file nsComponentManager.cpp.

{
    char *contractID   = ((nsContractIDTableEntry*)hdr)->mContractID;
    nsFactoryEntry *factoryEntry = ((nsContractIDTableEntry*)hdr)->mFactoryEntry;

    // for now, we only save out the top most parent.
    while (factoryEntry->mParent)
        factoryEntry = factoryEntry->mParent;

    if (factoryEntry->mTypeIndex < 0)
        return PL_DHASH_NEXT;

    PRFileDesc* fd = ((PersistentWriterArgs*)arg)->mFD;

    char cidString[UID_STRING_LENGTH];
    GetIDString(factoryEntry->mCid, cidString);
    PR_fprintf(fd, "%s,%s\n", contractID, cidString); // what if this fails?
    return PL_DHASH_NEXT;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static NS_IMETHODIMP ConvertContractIDKeyToString ( PLDHashTable table,
const PLDHashEntryHdr hdr,
void data,
nsISupports **  retval 
) [static]

Definition at line 665 of file nsComponentManager.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

static NS_IMETHODIMP ConvertFactoryEntryToCID ( PLDHashTable table,
const PLDHashEntryHdr hdr,
void data,
nsISupports **  retval 
) [static]

Definition at line 635 of file nsComponentManager.cpp.

{
    nsresult rv;
    nsCOMPtr<nsISupportsID> wrapper;

    nsComponentManagerImpl *cm = NS_STATIC_CAST(nsComponentManagerImpl *, data);

    rv = cm->CreateInstanceByContractID(NS_SUPPORTS_ID_CONTRACTID, nsnull,
           NS_GET_IID(nsISupportsID), getter_AddRefs(wrapper));

    NS_ENSURE_SUCCESS(rv, rv);

    const nsFactoryTableEntry *entry =
        NS_REINTERPRET_CAST(const nsFactoryTableEntry *, hdr);
    if (entry) {
        nsFactoryEntry *fe = entry->mFactoryEntry;

        wrapper->SetData(&fe->mCid);
        *retval = wrapper;
        NS_ADDREF(*retval);
        return NS_OK;
    }
    *retval = nsnull;

    return rv;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static PLDHashOperator PR_CALLBACK DeleteFoundCIDs ( PLDHashTable aTable,
PLDHashEntryHdr aHdr,
PRUint32  aNumber,
void aData 
) [static]

Definition at line 2968 of file nsComponentManager.cpp.

{
    nsContractIDTableEntry* entry = NS_STATIC_CAST(nsContractIDTableEntry*, aHdr);

    if (!entry->mFactoryEntry)
        return PL_DHASH_NEXT;

    UnregisterConditions* data = (UnregisterConditions*)aData;

    nsFactoryEntry* factoryEntry = entry->mFactoryEntry;
    if (data->cid->Equals(factoryEntry->mCid) &&
        ((data->regName && !PL_strcasecmp(factoryEntry->mLocation, data->regName)) ||
         (data->factory && data->factory == factoryEntry->mFactory.get())))
        return PL_DHASH_REMOVE;

    return PL_DHASH_NEXT;
}

Here is the call graph for this function:

Here is the caller graph for this function:

factory_ClearEntry ( PLDHashTable aTable,
PLDHashEntryHdr aHdr 
)

Definition at line 312 of file nsComponentManager.cpp.

{
    nsFactoryTableEntry* entry = NS_STATIC_CAST(nsFactoryTableEntry*, aHdr);
    // nsFactoryEntry is arena allocated. So we dont delete it.
    // We call the destructor by hand.
    entry->mFactoryEntry->~nsFactoryEntry();
    PL_DHashClearEntryStub(aTable, aHdr);
}

Here is the call graph for this function:

factory_GetKey ( PLDHashTable aTable,
PLDHashEntryHdr aHdr 
)

Definition at line 285 of file nsComponentManager.cpp.

factory_HashKey ( PLDHashTable aTable,
const void aKey 
)

Definition at line 293 of file nsComponentManager.cpp.

{
    const nsCID *cidp = NS_REINTERPRET_CAST(const nsCID*, aKey);

    return cidp->m0;
}
factory_MatchEntry ( PLDHashTable aTable,
const PLDHashEntryHdr aHdr,
const void aKey 
)

Definition at line 301 of file nsComponentManager.cpp.

{
    const nsFactoryTableEntry* entry =
        NS_STATIC_CAST(const nsFactoryTableEntry*, aHdr);
    const nsCID *cidp = NS_REINTERPRET_CAST(const nsCID*, aKey);

    return (entry->mFactoryEntry->mCid).Equals(*cidp);
}
static PLDHashOperator PR_CALLBACK FreeServiceContractIDEntryEnumerate ( PLDHashTable aTable,
PLDHashEntryHdr aHdr,
PRUint32  aNumber,
void aData 
) [static]

Definition at line 2017 of file nsComponentManager.cpp.

Here is the caller graph for this function:

static PLDHashOperator PR_CALLBACK FreeServiceFactoryEntryEnumerate ( PLDHashTable aTable,
PLDHashEntryHdr aHdr,
PRUint32  aNumber,
void aData 
) [static]

Definition at line 2000 of file nsComponentManager.cpp.

{
    nsFactoryTableEntry* entry = NS_STATIC_CAST(nsFactoryTableEntry*, aHdr);

    if (!entry->mFactoryEntry)
        return PL_DHASH_NEXT;

    nsFactoryEntry* factoryEntry = entry->mFactoryEntry;
    factoryEntry->mServiceObject = nsnull;
    return PL_DHASH_NEXT;
}

Here is the caller graph for this function:

static void GetIDString ( const nsID aCID,
char  buf[UID_STRING_LENGTH] 
) [static]

Definition at line 159 of file nsComponentManager.cpp.

{
    PR_snprintf(buf, UID_STRING_LENGTH, gIDFormat,
                aCID.m0, (PRUint32) aCID.m1, (PRUint32) aCID.m2,
                (PRUint32) aCID.m3[0], (PRUint32) aCID.m3[1],
                (PRUint32) aCID.m3[2], (PRUint32) aCID.m3[3],
                (PRUint32) aCID.m3[4], (PRUint32) aCID.m3[5],
                (PRUint32) aCID.m3[6], (PRUint32) aCID.m3[7]);
}

Here is the call graph for this function:

Here is the caller graph for this function:

static nsresult GetLocationFromDirectoryService ( const char *  prop,
nsIFile **  aDirectory 
) [static]

Definition at line 690 of file nsComponentManager.cpp.

{
    nsCOMPtr<nsIProperties> directoryService;
    nsDirectoryService::Create(nsnull,
                               NS_GET_IID(nsIProperties),
                               getter_AddRefs(directoryService));

    if (!directoryService)
        return NS_ERROR_FAILURE;

    return directoryService->Get(prop,
                                 NS_GET_IID(nsIFile),
                                 (void**)aDirectory);
}

Here is the call graph for this function:

Here is the caller graph for this function:

static nsresult MakeRegistryName ( const char *  aDllName,
const char *  prefix,
char **  regName 
) [static]

Definition at line 2482 of file nsComponentManager.cpp.

{
    char *registryName;

    PRUint32 len = strlen(prefix);

    PRUint32 registryNameLen = strlen(aDllName) + len;
    registryName = (char *)nsMemory::Alloc(registryNameLen + 1);

    // from here on it, we want len sans terminating NUL

    if (!registryName)
        return NS_ERROR_OUT_OF_MEMORY;

    memcpy(registryName, prefix, len);
    strcpy(registryName + len, aDllName);
    registryName[registryNameLen] = '\0';
    *regName = registryName;

#ifdef DEBUG_shaver_off
    fprintf(stderr, "MakeRegistryName(%s, %s, &[%s])\n",
            aDllName, prefix, *regName);
#endif

    return NS_OK;
}

Here is the call graph for this function:

NS_DEFINE_CID ( kEmptyCID  ,
NS_EMPTY_IID   
)
NS_DEFINE_CID ( kCategoryManagerCID  ,
NS_CATEGORYMANAGER_CID   
)

Definition at line 3768 of file nsComponentManager.cpp.

Here is the call graph for this function:

Public Method to access to the component manager.

FROZEN

Parameters:
resultInterface pointer to the service
Returns:
NS_OK for success; other error codes indicate a failure during initialisation.

Definition at line 3707 of file nsComponentManager.cpp.

Here is the call graph for this function:

Public Method to access to the component registration manager.

FROZEN

Parameters:
resultInterface pointer to the service
Returns:
NS_OK for success; other error codes indicate a failure during initialisation.

Definition at line 3745 of file nsComponentManager.cpp.

Here is the call graph for this function:

Public Method to access to the service manager.

FROZEN

Parameters:
resultInterface pointer to the service manager
Returns:
NS_OK for success; other error codes indicate a failure during initialisation.

Definition at line 3724 of file nsComponentManager.cpp.

Here is the call graph for this function:

Definition at line 504 of file nsComponentManager.cpp.

{
    (void) ReleaseElements();

    // Destroy the Lock
    if (mMonitor)
        nsAutoMonitor::DestroyMonitor(mMonitor);
}

Definition at line 938 of file nsComponentManager.cpp.

{
    NS_WARNING("This isn't supported");
    // fall through to QI as anything QIable is a superset of what can be
    // got via the GetInterface()
    return  QueryInterface(uuid, result);
}
PRBool PR_CALLBACK nsFactoryEntry_Destroy ( nsHashKey *  aKey,
void aData,
void closure 
)
NS_IMETHODIMP PL_NewDHashTableEnumerator ( PLDHashTable table,
EnumeratorConverter  converter,
void converterData,
PLDHashTableEnumeratorImpl **  retval 
)

Definition at line 530 of file nsComponentManager.cpp.

{
    PLDHashTableEnumeratorImpl *impl =
        new PLDHashTableEnumeratorImpl(table, converter, converterData);

    if (!impl)
        return NS_ERROR_OUT_OF_MEMORY;

    NS_ADDREF(impl);

    if (impl->Count() == -1) {
        // conversion failed
        NS_RELEASE(impl);
        return NS_ERROR_FAILURE;
    }

    *retval = impl;
    return NS_OK;
}

Here is the call graph for this function:

Here is the caller graph for this function:

static PRBool ReadSectionHeader ( nsManifestLineReader reader,
const char *  token 
) [static]

Definition at line 1001 of file nsComponentManager.cpp.

{
    while (1)
    {
        if (*reader.LinePtr() == '[')
        {
            char* p = reader.LinePtr() + (reader.LineLength() - 1);
            if (*p != ']')
                break;
            *p = 0;

            char* values[1];
            int lengths[1];
            if (2 != reader.ParseLine(values, lengths, 1))
                break;

            // ignore the leading '['
            if (0 != PL_strcmp(values[0]+1, token))
                break;

            return PR_TRUE;
        }

        if (!reader.NextLine())
            break;
    }
    return PR_FALSE;
}

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

const char classesKeyName[] = "contractID"

Definition at line 116 of file nsComponentManager.cpp.

const char classIDKeyName[] = "classID"

Definition at line 115 of file nsComponentManager.cpp.

const char classIDValueName[] = "ClassID"

Definition at line 123 of file nsComponentManager.cpp.

const char classNameValueName[] = "ClassName"

Definition at line 124 of file nsComponentManager.cpp.

const char componentCountValueName[] = "ComponentsCount"

Definition at line 125 of file nsComponentManager.cpp.

const char componentLoadersKeyName[] = "componentLoaders"

Definition at line 117 of file nsComponentManager.cpp.

const char componentsKeyName[] = "components"

Definition at line 118 of file nsComponentManager.cpp.

const char componentTypeValueName[] = "ComponentType"

Definition at line 126 of file nsComponentManager.cpp.

const char contractIDValueName[] = "ContractID"

Definition at line 127 of file nsComponentManager.cpp.

const char fileSizeValueName[] = "FileSize"

Definition at line 128 of file nsComponentManager.cpp.

const char gIDFormat[] = "{%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}" [static]

Definition at line 139 of file nsComponentManager.cpp.

Definition at line 306 of file nsXPComInit.cpp.

const char inprocServerValueName[] = "InprocServer"

Definition at line 129 of file nsComponentManager.cpp.

const char lastModValueName[] = "LastModTimeStamp"

Definition at line 130 of file nsComponentManager.cpp.

const char nativeComponentType[] = "application/x-mozilla-native"

Definition at line 131 of file nsComponentManager.cpp.

Definition at line 98 of file nsComponentManager.cpp.

const char staticComponentType[] = "application/x-mozilla-static"

Definition at line 132 of file nsComponentManager.cpp.

const char versionValueName[] = "VersionString"

Definition at line 133 of file nsComponentManager.cpp.

const char XPCOM_ABSCOMPONENT_PREFIX[] = "abs:" [static]

Definition at line 135 of file nsComponentManager.cpp.

const char XPCOM_GRECOMPONENT_PREFIX[] = "gre:" [static]

Definition at line 137 of file nsComponentManager.cpp.

const char XPCOM_RELCOMPONENT_PREFIX[] = "rel:" [static]

Definition at line 136 of file nsComponentManager.cpp.

const char xpcomComponentsKeyName[] = "software/mozilla/XPCOM/components"

Definition at line 119 of file nsComponentManager.cpp.

const char xpcomKeyName[] = "software/mozilla/XPCOM"

Definition at line 120 of file nsComponentManager.cpp.