public IVS_NETSOURCE_RESULT IVS_NETSOURCE_UnInit()
{
NLogEx.LoggerEx logEx = new NLogEx.LoggerEx(log);
logEx.Trace("Enter: SipStackAdapter.IVS_NETSOURCE_UnInit.");
//IVS_NETSOURCE_RESULT iRet = IVS_NETSOURCE_RESULT.FAILURE;
IVS_NETSOURCE_RESULT iRet = IVS_NETSOURCE_RESULT.SUCCESS;
try
{
foreach (KeyValuePair<UInt32, int> kvp in channelResponseIDDic)
{
UInt32 channel = kvp.Key;
iRet = NetSourcedInterface.IVS_NETSOURCE_CloseNetStream(channel);
if (iRet != IVS_NETSOURCE_RESULT.SUCCESS)
{
logEx.Error("SipStackAdapter.IVS_NETSOURCE_CloseNetStream channelResponseIDDic = {0}.", channel);
//注销return,避免返回,不实现IVS_NETSOURCE_UnInit
//return iRet;
}
iRet = NetSourcedInterface.IVS_NETSOURCE_FreeChannel(channel);
if (iRet != IVS_NETSOURCE_RESULT.SUCCESS)
{
logEx.Error("SipStackAdapter.IVS_NETSOURCE_FreeChannel channelResponseIDDic = {0}.", channel);
//注销return,避免返回,不实现IVS_NETSOURCE_UnInit
//return iRet;
}
}
//iRet = NetSourcedInterface.IVS_NETSOURCE_UnInit();
//if (iRet != IVS_NETSOURCE_RESULT.SUCCESS)
//{
// logEx.Error("SipStackAdapter.IVS_NETSOURCE_UnInit failed.");
//}
NetSourcedInterface.IVS_NETSOURCE_UnInit();
logEx.Info("Leave: SipStackAdapter.IVS_NETSOURCE_UnInit.");
}
catch (System.Exception ex)
{
logEx.Error("SipStackAdapter.IVS_NETSOURCE_UnInit Error = {0}.", ex.ToString());
iRet = IVS_NETSOURCE_RESULT.FAILURE;
}
return iRet;
}