/****************************************************************************
|
| Copyright (c) 2006 Novell, Inc.
| All Rights Reserved.
|
| This program is free software; you can redistribute it and/or
| modify it under the terms of version 2 of the GNU General Public License as
| published by the Free Software Foundation.
|
| This program is distributed in the hope that it will be useful,
| but WITHOUT ANY WARRANTY; without even the implied warranty of
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
| GNU General Public License for more details.
|
| You should have received a copy of the GNU General Public License
| along with this program; if not, contact Novell, Inc.
|
| To contact Novell about this file by physical or electronic mail,
| you may find current contact information at www.novell.com
|
|***************************************************************************
/**
@author Brad Nicholes
*/
#ifndef OMC_OMCCLPCACHE_H_INCLUDE_GUARD_
#define OMC_OMCCLPCACHE_H_INCLUDE_GUARD_
#include "stlini.h"
#include <iostream>
#include <stdarg.h>
#include <openwbem/OW_String.hpp>
#include <openwbem/OW_Reference.hpp>
using namespace OW_NAMESPACE;
using std::cout;
using std::endl;
namespace OMCCLP {
class OMCCLPCache;
typedef Reference<OMCCLPCache> OMCCLPCacheRef;
class OMCCLPCache {
public:
OMCCLPCache();
// OMCCLPCache(const char *pszFilename);
// OMCCLPCache(const String filename);
virtual ~OMCCLPCache(){}
String getCacheValue(const char *pszSection, const char *pszKey, const char *pszDefaultVal="");
String getCacheValue(const String section, const String key, const String defaultVal="")
{
return getCacheValue(section.c_str(), key.c_str(), defaultVal.c_str());
}
String getCacheKeys(const char *pszSection, const char *pszDefaultVal="");
String getCacheKeys(const String section, const String defaultVal="")
{
return getCacheKeys(section.c_str(), defaultVal.c_str());
}
String getCacheSectionsByKey(const char *key, const char *pszDefaultVal="");
String getCacheSectionsByKey(const String key, const String defaultVal="")
{
return getCacheSectionsByKey(key.c_str(), defaultVal.c_str());
}
void addCacheValue(const char *pszSection, const char *pszKey=NULL, const char *pszValue="");
void addCacheValue(const String section, const String key="", const String value="")
{
addCacheValue(section.c_str(), key.c_str(), value.c_str());
}
void deleteCacheValue(const char *pszSection, const char *pszKey);
void deleteCacheValue(const String section, const String key)
{
deleteCacheValue(section.c_str(), key.c_str());
}
// void setConfigurationFilename(const char *pszFilename);
// void setConfigurationFilename(const String filename)
// {
// setConfigurationFilename(filename.c_str());
// }
// void SaveConfigurationFile();
// const String getConfigurationFilename() const {return m_filename;}
// const bool isConfigurationFileOpen() const {return m_isOpen;}
StlIni::INIFile getDataIni() {return m_data_ini;}
private:
// void openConfigurationFile();
private:
// String m_filename;
StlIni::INIFile m_data_ini;
// bool m_isOpen;
};
}
#endif