public class ErrorHandleClass
{
AbstractHandleClass[] _errHandleArray = new AbstractHandleClass [Global.ERROR_HANDLE_MODE];
private static ErrorHandleClass m_instance = null;
private ErrorHandleClass()
{
//
// TODO: Add constructor logic here
_errHandleArray[0] = new ErrHdlDebugInfoClass();//本文不给出这个类的实现
_errHandleArray[1] = new ErrHdlEventLogClass();
_errHandleArray[2] = new ErrHdlMessageBoxClass();//本文不给出这个类的实现
_errHandleArray[3] = new ErrHdlLogFileClass();//本文不给出这个类的实现
_errHandleArray[4] = new ErrHdlMailClass();
//
}
public static ErrorHandleClass GetSingleton()
{
if(m_instance == null)
{
m_instance = new ErrorHandleClass();
}
return m_instance;
}
public int HandleError(ErrorMsgClass emsg)
{
int result = 0;
for(int i=0;i<_errHandleArray.Length;i++)
{
int t = _errHandleArray[i].HandleError(emsg);
if(t == 9999)
{
continue;
}
else
{
result += t;
}
}
return result;
}
} |