move a few more caps to simpleStreamHandler
parent
7856192da6
commit
3d09ff57f0
|
@ -265,17 +265,14 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
// GetNewCapPath(),
|
||||
// GetMapLayer);
|
||||
|
||||
IRequestHandler getObjectPhysicsDataHandler = new RestStreamHandler(
|
||||
"POST", GetNewCapPath(), GetObjectPhysicsData, "GetObjectPhysicsData", null);
|
||||
m_HostCapsObj.RegisterHandler("GetObjectPhysicsData", getObjectPhysicsDataHandler);
|
||||
m_HostCapsObj.RegisterSimpleHandler("GetObjectPhysicsData",
|
||||
new SimpleStreamHandler(GetNewCapPath(), GetObjectPhysicsData));
|
||||
|
||||
IRequestHandler getObjectCostHandler = new RestStreamHandler(
|
||||
"POST", GetNewCapPath(), GetObjectCost, "GetObjectCost", null );
|
||||
m_HostCapsObj.RegisterHandler("GetObjectCost", getObjectCostHandler);
|
||||
m_HostCapsObj.RegisterSimpleHandler("GetObjectCost",
|
||||
new SimpleStreamHandler(GetNewCapPath(), GetObjectCost));
|
||||
|
||||
IRequestHandler ResourceCostSelectedHandler = new RestStreamHandler(
|
||||
"POST", GetNewCapPath(), ResourceCostSelected, "ResourceCostSelected", null);
|
||||
m_HostCapsObj.RegisterHandler("ResourceCostSelected", ResourceCostSelectedHandler);
|
||||
m_HostCapsObj.RegisterSimpleHandler("ResourceCostSelected",
|
||||
new SimpleStreamHandler(GetNewCapPath(), ResourceCostSelected));
|
||||
|
||||
IRequestHandler req = new RestStreamHandler(
|
||||
"POST", GetNewCapPath(), ScriptTaskInventory, "UpdateScript", null);
|
||||
|
@ -284,9 +281,8 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
|
||||
if(m_AllowCapHomeLocation)
|
||||
{
|
||||
IRequestHandler HomeLocationHandler = new RestStreamHandler(
|
||||
"POST", GetNewCapPath(), HomeLocation, "HomeLocation", null);
|
||||
m_HostCapsObj.RegisterHandler("HomeLocation", HomeLocationHandler);
|
||||
m_HostCapsObj.RegisterSimpleHandler("HomeLocation",
|
||||
new SimpleStreamHandler(GetNewCapPath(), HomeLocation));
|
||||
}
|
||||
|
||||
if(m_AllowCapGroupMemberData)
|
||||
|
@ -463,10 +459,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
new BinaryStreamHandler(
|
||||
"POST", uploaderPath, uploader.uploaderCaps, "TaskInventoryScriptUpdater", null));
|
||||
|
||||
string protocol = "http://";
|
||||
|
||||
if (m_HostCapsObj.SSLCaps)
|
||||
protocol = "https://";
|
||||
string protocol = m_HostCapsObj.SSLCaps ? "https://" : "http://";
|
||||
|
||||
string uploaderURL = protocol + m_HostCapsObj.HostName + ":" + m_HostCapsObj.Port.ToString() + uploaderPath;
|
||||
|
||||
|
@ -1626,12 +1619,25 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
return "";
|
||||
}
|
||||
|
||||
public string GetObjectPhysicsData(string request, string path,
|
||||
string param, IOSHttpRequest httpRequest,
|
||||
IOSHttpResponse httpResponse)
|
||||
public void GetObjectPhysicsData(IOSHttpRequest httpRequest, IOSHttpResponse httpResponse)
|
||||
{
|
||||
OSDMap req = (OSDMap)OSDParser.DeserializeLLSDXml(request);
|
||||
OSDArray object_ids = (OSDArray)req["object_ids"];
|
||||
if(httpRequest.HttpMethod != "POST")
|
||||
{
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.NotFound;
|
||||
return;
|
||||
}
|
||||
OSDMap req;
|
||||
OSDArray object_ids;
|
||||
try
|
||||
{
|
||||
req = (OSDMap)OSDParser.DeserializeLLSDXml(httpRequest.InputStream);
|
||||
object_ids = (OSDArray)req["object_ids"];
|
||||
}
|
||||
catch
|
||||
{
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.BadRequest;
|
||||
return;
|
||||
}
|
||||
|
||||
StringBuilder lsl = LLSDxmlEncode.Start();
|
||||
|
||||
|
@ -1660,16 +1666,31 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
LLSDxmlEncode.AddEndMap(lsl);
|
||||
}
|
||||
}
|
||||
|
||||
return LLSDxmlEncode.End(lsl);
|
||||
|
||||
httpResponse.RawBuffer = Encoding.UTF8.GetBytes(LLSDxmlEncode.End(lsl));
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.OK;
|
||||
}
|
||||
|
||||
public string GetObjectCost(string request, string path,
|
||||
string param, IOSHttpRequest httpRequest,
|
||||
IOSHttpResponse httpResponse)
|
||||
public void GetObjectCost(IOSHttpRequest httpRequest, IOSHttpResponse httpResponse)
|
||||
{
|
||||
OSDMap req = (OSDMap)OSDParser.DeserializeLLSDXml(request);
|
||||
OSDArray object_ids = (OSDArray)req["object_ids"];
|
||||
if (httpRequest.HttpMethod != "POST")
|
||||
{
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.NotFound;
|
||||
return;
|
||||
}
|
||||
|
||||
OSDMap req;
|
||||
OSDArray object_ids;
|
||||
try
|
||||
{
|
||||
req = (OSDMap)OSDParser.DeserializeLLSDXml(httpRequest.InputStream);
|
||||
object_ids = (OSDArray)req["object_ids"];
|
||||
}
|
||||
catch
|
||||
{
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.BadRequest;
|
||||
return;
|
||||
}
|
||||
|
||||
StringBuilder lsl = LLSDxmlEncode.Start(512);
|
||||
|
||||
|
@ -1720,15 +1741,29 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
}
|
||||
LLSDxmlEncode.AddEndMap(lsl);
|
||||
}
|
||||
|
||||
return LLSDxmlEncode.End(lsl);
|
||||
|
||||
httpResponse.RawBuffer = Encoding.UTF8.GetBytes(LLSDxmlEncode.End(lsl));
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.OK;
|
||||
}
|
||||
|
||||
public string ResourceCostSelected(string request, string path,
|
||||
string param, IOSHttpRequest httpRequest,
|
||||
IOSHttpResponse httpResponse)
|
||||
public void ResourceCostSelected(IOSHttpRequest httpRequest,IOSHttpResponse httpResponse)
|
||||
{
|
||||
OSDMap req = (OSDMap)OSDParser.DeserializeLLSDXml(request);
|
||||
if (httpRequest.HttpMethod != "POST")
|
||||
{
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.NotFound;
|
||||
return;
|
||||
}
|
||||
|
||||
OSDMap req;
|
||||
try
|
||||
{
|
||||
req = (OSDMap)OSDParser.DeserializeLLSDXml(httpRequest.InputStream);
|
||||
}
|
||||
catch
|
||||
{
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.BadRequest;
|
||||
return;
|
||||
}
|
||||
|
||||
float phys=0;
|
||||
float stream=0;
|
||||
|
@ -1790,10 +1825,10 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
|
||||
LLSDxmlEncode.AddEndMap(lsl);
|
||||
LLSDxmlEncode.AddEndMap(lsl);
|
||||
|
||||
// resp["transaction_id"] = "undef";
|
||||
return LLSDxmlEncode.End(lsl);
|
||||
|
||||
// resp["transaction_id"] = "undef";
|
||||
httpResponse.RawBuffer = Encoding.UTF8.GetBytes(LLSDxmlEncode.End(lsl));
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.OK;
|
||||
}
|
||||
|
||||
public string UpdateAgentInformation(string request, string path,
|
||||
|
@ -1827,17 +1862,17 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
return true;
|
||||
}
|
||||
|
||||
public string HomeLocation(string request, string path, string param, IOSHttpRequest httpRequest,
|
||||
IOSHttpResponse httpResponse)
|
||||
public void HomeLocation(IOSHttpRequest httpRequest, IOSHttpResponse httpResponse)
|
||||
{
|
||||
OSDMap resp = new OSDMap();
|
||||
|
||||
resp["success"] = "false";
|
||||
|
||||
if (httpRequest.HttpMethod != "POST")
|
||||
{
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.NotFound;
|
||||
return;
|
||||
}
|
||||
|
||||
bool fail = true;
|
||||
string message = "Set Home request failed";
|
||||
int locationID = 1;
|
||||
//int locationID = 1;
|
||||
Vector3 pos = Vector3.Zero;
|
||||
Vector3 lookAt = Vector3.Zero;
|
||||
|
||||
|
@ -1864,23 +1899,34 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
if(!m_Scene.UserManagementModule.IsLocalGridUser(m_AgentID))
|
||||
break;
|
||||
|
||||
OSDMap req = (OSDMap)OSDParser.DeserializeLLSDXml(request);
|
||||
if(!req.ContainsKey("HomeLocation"))
|
||||
OSDMap req;
|
||||
try
|
||||
{
|
||||
req = (OSDMap)OSDParser.DeserializeLLSDXml(httpRequest.InputStream);
|
||||
}
|
||||
catch
|
||||
{
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.BadRequest;
|
||||
return;
|
||||
}
|
||||
|
||||
OSD tmp;
|
||||
if (!req.TryGetValue("HomeLocation", out tmp) || !(tmp is OSDMap))
|
||||
break;
|
||||
|
||||
OSDMap HLocation = (OSDMap)req["HomeLocation"];
|
||||
if(!HLocation.ContainsKey("LocationPos"))
|
||||
OSDMap HLocation = (OSDMap)tmp;
|
||||
|
||||
if(!HLocation.TryGetValue("LocationPos", out tmp) || !(tmp is OSDMap))
|
||||
break;
|
||||
if(!HLocation.ContainsKey("LocationLookAt"))
|
||||
if (!OSDMapTOVector3((OSDMap)tmp, out pos))
|
||||
break;
|
||||
|
||||
locationID = HLocation["LocationId"].AsInteger();
|
||||
|
||||
if(!OSDMapTOVector3((OSDMap)HLocation["LocationPos"], out pos))
|
||||
if (!HLocation.TryGetValue("LocationLookAt", out tmp) || !(tmp is OSDMap))
|
||||
break;
|
||||
if (!OSDMapTOVector3((OSDMap)tmp, out lookAt))
|
||||
break;
|
||||
|
||||
if(!OSDMapTOVector3((OSDMap)HLocation["LocationLookAt"], out lookAt))
|
||||
break;
|
||||
//locationID = HLocation["LocationId"].AsInteger();
|
||||
|
||||
ILandObject land = m_Scene.LandChannel.GetLandObject(pos);
|
||||
if(land == null)
|
||||
|
@ -1924,33 +1970,34 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
break;
|
||||
}
|
||||
|
||||
string response;
|
||||
OSDMap resp = new OSDMap();
|
||||
|
||||
if(fail)
|
||||
{
|
||||
if(client != null)
|
||||
client.SendAlertMessage(message);
|
||||
response = OSDParser.SerializeLLSDXmlString(resp);
|
||||
return response;
|
||||
resp["success"] = "false";
|
||||
}
|
||||
else
|
||||
{
|
||||
// so its http but still needs a udp reply to inform user? crap :p
|
||||
if(client != null)
|
||||
client.SendAlertMessage("Home position set.","HomePositionSet");
|
||||
|
||||
resp["success"] = "true";
|
||||
OSDMap homeloc = new OSDMap();
|
||||
OSDMap homelocpos = new OSDMap();
|
||||
// for some odd reason viewers send pos as reals but read as integer
|
||||
homelocpos["X"] = new OSDReal(pos.X);
|
||||
homelocpos["Y"] = new OSDReal(pos.Y);
|
||||
homelocpos["Z"] = new OSDReal(pos.Z);
|
||||
homeloc["LocationPos"] = homelocpos;
|
||||
|
||||
resp["HomeLocation"] = homeloc;
|
||||
}
|
||||
|
||||
// so its http but still needs a udp reply to inform user? crap :p
|
||||
if(client != null)
|
||||
client.SendAlertMessage("Home position set.","HomePositionSet");
|
||||
|
||||
resp["success"] = "true";
|
||||
OSDMap homeloc = new OSDMap();
|
||||
OSDMap homelocpos = new OSDMap();
|
||||
// for some odd reason viewers send pos as reals but read as integer
|
||||
homelocpos["X"] = new OSDReal(pos.X);
|
||||
homelocpos["Y"] = new OSDReal(pos.Y);
|
||||
homelocpos["Z"] = new OSDReal(pos.Z);
|
||||
homeloc["LocationPos"] = homelocpos;
|
||||
|
||||
resp["HomeLocation"] = homeloc;
|
||||
|
||||
response = OSDParser.SerializeLLSDXmlString(resp);
|
||||
return response;
|
||||
httpResponse.RawBuffer = Encoding.UTF8.GetBytes(OSDParser.SerializeLLSDXmlString(resp));
|
||||
httpResponse.StatusCode = (int)HttpStatusCode.OK;
|
||||
}
|
||||
|
||||
private static int CompareRolesByMembersDesc(GroupRolesData x, GroupRolesData y)
|
||||
|
|
Loading…
Reference in New Issue