// $Id: CListener.h,v 1.5 2003/04/17 06:29:54 ta_muto Exp $
// Listener class

#ifndef __wax_CListener_h
#define __wax_CListener_h

#include <common.h>
#include <IDispatch.h>
#include <CEnvironment.h>

namespace wax {
	class CListener : public IDispatch {
		CEnvironment* successScript;
		CEnvironment* failedScript;
		IDispatch* disp;
		CCollection taskList;
	public:
		CListener();
		~CListener();
		
		bool parse(CEnvironment* runenv, xmlNodePtr cur);
		bool execute();
		void output(IWriter* writer);
	protected:
		CEnvironment* parseInternal(CEnvironment* runenv, xmlNodePtr cur);
	} ;
}

#endif
