Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Examples

SCRAgent Class Reference

SuSE Configuration Repository Agent. More...

#include <SCRAgent.h>

Inheritance diagram for SCRAgent:

AnyAgent DummyAgent HwProbe IniAgent ModulesAgent ResolverAgent ScriptingAgent StdioSCRAgent SystemAgent List of all members.

Public Member Functions

 SCRAgent ()
virtual ~SCRAgent ()
virtual YCPValue Read (const YCPPath &path, const YCPValue &arg=YCPNull(), const YCPValue &opt=YCPNull())=0
virtual YCPBoolean Write (const YCPPath &path, const YCPValue &value, const YCPValue &arg=YCPNull())=0
virtual YCPList Dir (const YCPPath &path)=0
virtual YCPValue Execute (const YCPPath &path, const YCPValue &value=YCPNull(), const YCPValue &arg=YCPNull())
virtual YCPMap Error (const YCPPath &path)
virtual YCPBoolean RegisterAgent (const YCPPath &path, const YCPValue &value)
virtual YCPBoolean UnregisterAgent (const YCPPath &path)
virtual YCPBoolean UnregisterAllAgents ()
virtual YCPBoolean UnmountAgent (const YCPPath &path)
virtual YCPValue otherCommand (const YCPTerm &term)
void setAsCurrentSCR ()

Static Public Member Functions

YCPValue readconf (const char *filename)
SCRAgentinstance ()

Public Attributes

SCRAgentmainscragent

Static Private Attributes

SCRAgentcurrent_scr = 0
YCPMap unspecified_error
 returned by Error


Detailed Description

SuSE Configuration Repository Agent.

An SCRAgent is an information agent. It handles a subtree of the whole SRC data tree of the system. You can look upon it as a database that is similar to a filesystem. Data is grouped in a tree. But type of the data being stored are not files but YCP values.


Constructor & Destructor Documentation

SCRAgent::SCRAgent  ) 
 

Initializes the base class.

SCRAgent::~SCRAgent  )  [virtual]
 

Cleans up. Furthermore baseclass must have a virtual destructor.


Member Function Documentation

virtual YCPList SCRAgent::Dir const YCPPath path  )  [pure virtual]
 

Get a list of all subtrees.

Implemented in AnyAgent, DummyAgent, IniAgent, ModulesAgent, HwProbe, ResolverAgent, SystemAgent, ScriptingAgent, and StdioSCRAgent.

virtual YCPMap SCRAgent::Error const YCPPath path  )  [inline, virtual]
 

Get a detailed error description if a previous command failed

Reimplemented in ScriptingAgent, and StdioSCRAgent.

virtual YCPValue SCRAgent::Execute const YCPPath path,
const YCPValue value = YCPNull(),
const YCPValue arg = YCPNull()
[inline, virtual]
 

Execute a command

Reimplemented in DummyAgent, SystemAgent, ScriptingAgent, and StdioSCRAgent.

SCRAgent * SCRAgent::instance  )  [static]
 

YCPValue SCRAgent::otherCommand const YCPTerm term  )  [virtual]
 

Execute other commands. Return 0 if the command is not defined in your Agent.

Reimplemented in AnyAgent, DummyAgent, IniAgent, ModulesAgent, ResolverAgent, ScriptingAgent, and StdioSCRAgent.

virtual YCPValue SCRAgent::Read const YCPPath path,
const YCPValue arg = YCPNull(),
const YCPValue opt = YCPNull()
[pure virtual]
 

Reads data. Destroy the result after use.

Parameters:
path Specifies what part of the subtree should be read. The path is specified _relatively_ to Root()!

Implemented in AnyAgent, DummyAgent, IniAgent, ModulesAgent, HwProbe, ResolverAgent, SystemAgent, ScriptingAgent, and StdioSCRAgent.

YCPValue SCRAgent::readconf const char *  filename  )  [static]
 

Reads the scr config file and returns the term. It skips all lines upto (including) the first starting with a ".", which is the path where the agant gets mounted (by the ScriptingAgent).

virtual YCPBoolean SCRAgent::RegisterAgent const YCPPath path,
const YCPValue value
[inline, virtual]
 

Register an agent

Reimplemented in ScriptingAgent.

void SCRAgent::setAsCurrentSCR  )  [inline]
 

virtual YCPBoolean SCRAgent::UnmountAgent const YCPPath path  )  [inline, virtual]
 

Unmount an agent

Reimplemented in ScriptingAgent.

virtual YCPBoolean SCRAgent::UnregisterAgent const YCPPath path  )  [inline, virtual]
 

Unregister an agent

Reimplemented in ScriptingAgent.

virtual YCPBoolean SCRAgent::UnregisterAllAgents  )  [inline, virtual]
 

Unregister all agents

Reimplemented in ScriptingAgent.

virtual YCPBoolean SCRAgent::Write const YCPPath path,
const YCPValue value,
const YCPValue arg = YCPNull()
[pure virtual]
 

Writes data. Destroy the result after use.

Implemented in AnyAgent, DummyAgent, IniAgent, ModulesAgent, HwProbe, ResolverAgent, SystemAgent, ScriptingAgent, and StdioSCRAgent.


Member Data Documentation

SCRAgent * SCRAgent::current_scr = 0 [static, private]
 

SCRAgent* SCRAgent::mainscragent
 

A pointer to the SCRAgent (which normally is the ScriptingAgent) that created this SCRAgent. It can be used to call other SCRAgents directly from C++. You must check if it is not 0.

YCPMap SCRAgent::unspecified_error [static, private]
 

returned by Error


The documentation for this class was generated from the following files:
Generated on Fri Nov 9 18:15:24 2007 for yast2-core by doxygen 1.3.6