private void RaiseCallBackEvent(string eventArgument)
{
Response response = new Response(true, null);
try
{
if (eventArgument.IsEmpty())
{
throw new ArgumentNullException("eventArgument");
}
XmlNode xmlData = this.SubmitConfig;
if (xmlData == null)
{
return;
}
XmlNode parametersNode = xmlData.SelectSingleNode("config/extraParams");
string data = null;
XmlNode serviceNode = xmlData.SelectSingleNode("config/serviceParams");
if (serviceNode != null)
{
data = serviceNode.InnerText;
}
string action = eventArgument;
switch (action)
{
case "update":
if (data == null)
{
throw new InvalidOperationException("No data in request");
}
this.BuildSource(data);
if (raiseChanged)
{
this.OnDataChanged(EventArgs.Empty);
raiseChanged = false;
}
break;
}
}
catch (Exception ex)
{
response.Success = false;
response.Message = this.IsDebugging ? ex.ToString() : ex.Message;
}
ResourceManager.ServiceResponse = response;
}