00001 // -*- c++ -*- 00002 00003 /* 00004 * Authors: Stanislav Visnovsky <visnov@suse.cz> 00005 * Maintainer: Arvin Schnell <arvin@suse.de> 00006 */ 00007 00008 00009 #ifndef StdioSCRAgent_h 00010 #define StdioSCRAgent_h 00011 00012 #include <y2/Y2Component.h> 00013 #include <scr/SCRAgent.h> 00014 00015 00020 class StdioSCRAgent : public SCRAgent 00021 { 00022 00023 public: 00024 00025 StdioSCRAgent (Y2Component* handler) : m_handler (handler) {} 00026 00027 ~StdioSCRAgent () {} 00028 00034 virtual YCPValue Read (const YCPPath &path, const YCPValue &arg = YCPNull (), const YCPValue &opt = YCPNull ()); 00035 00039 virtual YCPBoolean Write (const YCPPath &path, const YCPValue &value, 00040 const YCPValue &arg = YCPNull ()); 00041 00045 virtual YCPList Dir (const YCPPath &path); 00046 00050 virtual YCPValue Execute (const YCPPath &path, const YCPValue &value = 00051 YCPNull (), const YCPValue &arg = YCPNull ()); 00052 00056 virtual YCPMap Error (const YCPPath &path); 00057 00063 YCPValue otherCommand (const YCPTerm &term); 00064 00065 private: 00066 Y2Component* m_handler; 00067 }; 00068 00069 00070 #endif // StdioSCRAgent_h