public void Deserialize(OSDMap map)
{
if (map.ContainsKey("task_id"))
Request = new UpdateScriptTaskUpdateMessage();
else if (map.ContainsKey("state") && map["state"].AsString().Equals("upload"))
Request = new UploaderRequestUpload();
else if (map.ContainsKey("state") && map["state"].AsString().Equals("complete")
&& map.ContainsKey("errors"))
Request = new UploaderScriptRequestError();
else if (map.ContainsKey("state") && map["state"].AsString().Equals("complete"))
Request = new UploaderRequestScriptComplete();
else
Logger.Log("Unable to deserialize UpdateScriptTaskMessage: No message handler exists for state " + map["state"].AsString(), Helpers.LogLevel.Warning);
if (Request != null)
Request.Deserialize(map);
}
}