version 1.2, 2003/10/17 04:02:52
|
version 1.9, 2006/08/09 19:30:31
|
|
|
//%///////////////////////////////////////////////////////////////////////////// |
//%2006//////////////////////////////////////////////////////////////////////// |
// | // |
// Copyright (c) 2000 - 2003 BMC Software, Hewlett-Packard Company, IBM, |
// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development |
// The Open Group, Tivoli Systems |
// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. |
|
// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.; |
|
// IBM Corp.; EMC Corporation, The Open Group. |
|
// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.; |
|
// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. |
|
// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.; |
|
// EMC Corporation; VERITAS Software Corporation; The Open Group. |
|
// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.; |
|
// EMC Corporation; Symantec Corporation; The Open Group. |
// | // |
// Permission is hereby granted, free of charge, to any person obtaining a copy | // Permission is hereby granted, free of charge, to any person obtaining a copy |
// of this software and associated documentation files (the "Software"), to | // of this software and associated documentation files (the "Software"), to |
|
|
// | // |
// Author: Chip Vincent (cvincent@us.ibm.com) | // Author: Chip Vincent (cvincent@us.ibm.com) |
// | // |
// Modified By: |
// Modified By: Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) |
// | // |
//%///////////////////////////////////////////////////////////////////////////// | //%///////////////////////////////////////////////////////////////////////////// |
| |
|
|
| |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
ProviderManagerModule::ProviderManagerModule(void) |
ProviderManagerModule::ProviderManagerModule() |
|
: DynamicLibrary(), |
|
_createProviderManager(0) |
|
{ |
|
} |
|
|
|
ProviderManagerModule::ProviderManagerModule( |
|
const ProviderManagerModule& module) |
|
: DynamicLibrary(module), |
|
_createProviderManager(module._createProviderManager) |
{ | { |
} | } |
| |
ProviderManagerModule::ProviderManagerModule(const String & fileName) : DynamicLibrary(fileName) |
ProviderManagerModule::ProviderManagerModule( |
|
const String& fileName) |
|
: DynamicLibrary(fileName), |
|
_createProviderManager(0) |
{ | { |
} | } |
| |
ProviderManagerModule::~ProviderManagerModule(void) |
ProviderManagerModule::~ProviderManagerModule() |
{ | { |
} | } |
| |
Boolean ProviderManagerModule::load(void) |
ProviderManagerModule& ProviderManagerModule::operator=( |
|
const ProviderManagerModule& module) |
|
{ |
|
if (this == &module) |
{ | { |
DynamicLibrary::load(); |
return(*this); |
|
} |
| |
|
DynamicLibrary::operator=(module); |
|
|
|
_createProviderManager = module._createProviderManager; |
|
|
|
return(*this); |
|
} |
|
|
|
Boolean ProviderManagerModule::load() |
|
{ |
|
if (DynamicLibrary::load()) |
|
{ |
// export entry points | // export entry points |
_createProviderManager = (CREATE_PROVIDER_MANAGER_FUNCTION)getSymbol("PegasusCreateProviderManager"); |
_createProviderManager = (CREATE_PROVIDER_MANAGER_FUNCTION) |
|
getSymbol("PegasusCreateProviderManager"); |
| |
if(_createProviderManager == 0) |
if (_createProviderManager != 0) |
{ | { |
unload(); |
return(true); |
|
} |
|
|
|
DynamicLibrary::unload(); |
|
} |
| |
return(false); | return(false); |
} | } |
| |
return(true); |
void ProviderManagerModule::unload() |
|
{ |
|
DynamicLibrary::unload(); |
} | } |
| |
ProviderManager * ProviderManagerModule::getProviderManager(const String & s) const |
ProviderManager* ProviderManagerModule::getProviderManager( |
|
const String& s) const |
|
{ |
|
if (!isLoaded()) |
{ | { |
|
return(0); |
|
} |
|
|
return(_createProviderManager(s)); | return(_createProviderManager(s)); |
} | } |
| |