/*
** SellaNMS
** $Id: email.h,v 1.11 2005/05/15 05:21:17 sella Exp $
** Copyright (c) 2001-2005 Digital Genesis Software, LLC. All Rights Reserved.
** Released under the GPL Version 2 License.
** http://www.digitalgenesis.com
*/

#ifndef __DGS_MODULE_OUTPUT_EMAIL_H
#define __DGS_MODULE_OUTPUT_EMAIL_H

#ifdef HAVE_CONFIG_H
	#include "config.h"
#endif

#include "defaults.h"
#include "util.h"
#include "policy_framework/policy_framework.h"
#include "../output.h"
#include <stdio.h>
#include <stdlib.h>
#include <stl/string>
#include <stl/vector>

#define MODULE_OUTPUT_EMAIL_QUEUEDEPTH_DEFAULT MODULE_OUTPUT_QUEUEDEPTH_DEFAULT

class Email: public Output {
	public:
		Email();
		~Email();

	protected:

	private:
		virtual RESULT execute();
		virtual RESULT readConfig();
		virtual RESULT printConfig();

		virtual RESULT processPolicyOutput(variable_binding_t &policy_output);
		bool assignValues(const string &req, variable_binding_t &policy_output, ConfigNode *alias_node, ConfigNode *default_node, vector<string> &values);
};

#endif

/*
** Local Variables:
** c-basic-offset: 3
** tab-width: 3
** End:
** vim600: fdm=marker
** vim: noet ts=3 sw=3
*/
