Prefer WaitOne with TimeSpan

This commit is contained in:
cinder
2025-01-13 07:44:05 -06:00
parent 6380fe19d2
commit d412aa3905
47 changed files with 119 additions and 109 deletions

View File

@@ -57,7 +57,7 @@ namespace OpenMetaverse.TestClient
// Wait for all the packets to arrive
ReceivedProfileEvent.Reset();
ReceivedProfileEvent.WaitOne(5000, false);
ReceivedProfileEvent.WaitOne(TimeSpan.FromSeconds(5), false);
// Check if everything showed up
if (!ReceivedInterests || !ReceivedProperties || !ReceivedGroups)

View File

@@ -23,14 +23,14 @@ namespace OpenMetaverse.TestClient
target = target.TrimEnd();
UUID folder = Client.Inventory.FindObjectByPath(Client.Inventory.Store.RootFolder.UUID, Client.Self.AgentID, target, 20 * 1000);
UUID folder = Client.Inventory.FindObjectByPath(Client.Inventory.Store.RootFolder.UUID, Client.Self.AgentID, target, TimeSpan.FromSeconds(20));
if (folder == UUID.Zero)
{
return "Outfit path " + target + " not found";
}
List<InventoryBase> contents = Client.Inventory.FolderContents(folder, Client.Self.AgentID, true, true, InventorySortOrder.ByName, 20 * 1000);
List<InventoryBase> contents = Client.Inventory.FolderContents(folder, Client.Self.AgentID, true, true, InventorySortOrder.ByName, TimeSpan.FromSeconds(20));
List<InventoryItem> items = new List<InventoryItem>();
if (contents == null)

View File

@@ -39,7 +39,7 @@ namespace OpenMetaverse.TestClient
// Send the Query
Client.Avatars.RequestAvatarNameSearch(ToAvatarName, UUID.Random());
NameSearchEvent.WaitOne(6000, false);
NameSearchEvent.WaitOne(TimeSpan.FromMinutes(1), false);
}
if (Name2Key.ContainsKey(ToAvatarName.ToLower()))

View File

@@ -47,7 +47,7 @@ namespace OpenMetaverse.TestClient
WaitForSessionStart.Set();
}
if (WaitForSessionStart.WaitOne(20000, false))
if (WaitForSessionStart.WaitOne(TimeSpan.FromSeconds(20), false))
{
Client.Self.InstantMessageGroup(ToGroupID, message);
}

View File

@@ -1,4 +1,5 @@
using System.Collections.Generic;
using System;
using System.Collections.Generic;
using System.Text;
namespace OpenMetaverse.TestClient.Commands
@@ -32,7 +33,7 @@ namespace OpenMetaverse.TestClient.Commands
Client.Avatars.RequestAvatarName(key);
Client.Groups.RequestGroupProfile(key);
if (!waitQuery.WaitOne(10000, false))
if (!waitQuery.WaitOne(TimeSpan.FromSeconds(10), false))
{
result.AppendLine("Timeout waiting for reply, this could mean the Key is not an avatar or a group");
}

View File

@@ -46,7 +46,7 @@ namespace OpenMetaverse.TestClient.Commands
UUID searchID = Client.Directory.StartClassifiedSearch(searchText, DirectoryManager.ClassifiedCategories.Any, DirectoryManager.ClassifiedQueryFlags.Mature | DirectoryManager.ClassifiedQueryFlags.PG);
if (!waitQuery.WaitOne(20000, false) && Client.Network.Connected)
if (!waitQuery.WaitOne(TimeSpan.FromSeconds(20), false) && Client.Network.Connected)
{
result.AppendLine("Timeout waiting for simulator to respond to query.");
}

View File

@@ -31,7 +31,7 @@ namespace OpenMetaverse.TestClient.Commands
// send the request to the directory manager
Client.Directory.StartEventsSearch(searchText, 0);
string result;
if (waitQuery.WaitOne(20000, false) && Client.Network.Connected)
if (waitQuery.WaitOne(TimeSpan.FromSeconds(20), false) && Client.Network.Connected)
{
result = "Your query '" + searchText + "' matched " + resultCount + " Events. ";
}

View File

@@ -32,7 +32,7 @@ namespace OpenMetaverse.TestClient.Commands
Client.Directory.StartGroupSearch(searchText, 0);
string result;
if (waitQuery.WaitOne(20000, false) && Client.Network.Connected)
if (waitQuery.WaitOne(TimeSpan.FromSeconds(20), false) && Client.Network.Connected)
{
result = "Your query '" + searchText + "' matched " + resultCount + " Groups. ";
}

View File

@@ -24,6 +24,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
using System;
using System.Text;
namespace OpenMetaverse.TestClient.Commands
@@ -116,7 +117,7 @@ namespace OpenMetaverse.TestClient.Commands
// send the request to the directory manager
Client.Directory.StartLandSearch(queryFlags, searchTypeFlags, maxPrice, minSize, 0);
if (!waitQuery.WaitOne(20000, false) && Client.Network.Connected)
if (!waitQuery.WaitOne(TimeSpan.FromSeconds(20), false) && Client.Network.Connected)
{
result.AppendLine("Timeout waiting for simulator to respond.");
}

View File

@@ -33,7 +33,7 @@ namespace OpenMetaverse.TestClient.Commands
Client.Directory.StartPeopleSearch(searchText, 0);
string result;
if (waitQuery.WaitOne(20000, false) && Client.Network.Connected)
if (waitQuery.WaitOne(TimeSpan.FromSeconds(20), false) && Client.Network.Connected)
{
result = "Your query '" + searchText + "' matched " + resultCount + " People. ";
}

View File

@@ -41,7 +41,7 @@ namespace OpenMetaverse.TestClient.Commands
Client.Directory.PlacesReply += callback;
Client.Directory.StartPlacesSearch(searchText);
if (!waitQuery.WaitOne(20000, false) && Client.Network.Connected)
if (!waitQuery.WaitOne(TimeSpan.FromSeconds(20), false) && Client.Network.Connected)
{
result.AppendLine("Timeout waiting for simulator to respond to query.");
}

View File

@@ -61,9 +61,11 @@ namespace OpenMetaverse.TestClient
Client.Assets.InitiateDownload += initiateDownloadDelegate;
// configure request to tell the simulator to send us the file
List<string> parameters = new List<string>();
parameters.Add("download filename");
parameters.Add(fileName);
List<string> parameters = new List<string>
{
"download filename",
fileName
};
// send the request
Client.Estate.EstateOwnerMessage("terrain", parameters);

View File

@@ -36,7 +36,7 @@ namespace OpenMetaverse.TestClient
Client.Estate.UploadTerrain(fileData, fileName);
// Wait for upload to complete. Upload request is fired in callback from first request
if (!WaitForUploadComplete.WaitOne(120000, false))
if (!WaitForUploadComplete.WaitOne(TimeSpan.FromMinutes(2), false))
{
Cleanup();
return "Timeout waiting for terrain file upload";

View File

@@ -41,7 +41,7 @@ namespace OpenMetaverse.TestClient
Client.Friends.FriendFoundReply += del;
WaitforFriend.Reset();
Client.Friends.MapFriend(targetID);
if (!WaitforFriend.WaitOne(10000, false))
if (!WaitforFriend.WaitOne(TimeSpan.FromSeconds(10), false))
{
sb.AppendFormat("Timeout waiting for reply, Do you have mapping rights on {0}?", targetID);
}

View File

@@ -36,7 +36,7 @@ namespace OpenMetaverse.TestClient
Console.WriteLine("setting " + groupName + " as active group");
Client.Groups.ActivateGroup(groupUUID);
GroupsEvent.WaitOne(30000, false);
GroupsEvent.WaitOne(TimeSpan.FromSeconds(30), false);
Client.Network.UnregisterCallback(PacketType.AgentDataUpdate, pcallback);
GroupsEvent.Reset();

View File

@@ -37,7 +37,7 @@ namespace OpenMetaverse.TestClient
if (UUID.Zero != GroupUUID) {
Client.Groups.GroupMembersReply += GroupMembersHandler;
GroupRequestID = Client.Groups.RequestGroupMembers(GroupUUID);
GroupsEvent.WaitOne(30000, false);
GroupsEvent.WaitOne(TimeSpan.FromSeconds(30), false);
GroupsEvent.Reset();
Client.Groups.GroupMembersReply -= GroupMembersHandler;
return Client + " got group members";

View File

@@ -37,7 +37,7 @@ namespace OpenMetaverse.TestClient
if (UUID.Zero != GroupUUID) {
Client.Groups.GroupRoleDataReply += Groups_GroupRoles;
GroupRequestID = Client.Groups.RequestGroupRoles(GroupUUID);
GroupsEvent.WaitOne(30000, false);
GroupsEvent.WaitOne(TimeSpan.FromSeconds(30), false);
GroupsEvent.Reset();
Client.Groups.GroupRoleDataReply += Groups_GroupRoles;
return Client + " got group roles";

View File

@@ -47,7 +47,7 @@ namespace OpenMetaverse.TestClient
queryID = Client.Directory.StartGroupSearch(groupName, 0);
GetGroupsSearchEvent.WaitOne(60000, false);
GetGroupsSearchEvent.WaitOne(TimeSpan.FromMinutes(1), false);
Client.Directory.DirGroupsReply -= Directory_DirGroups;
@@ -69,7 +69,7 @@ namespace OpenMetaverse.TestClient
* TODO: implement the pay to join procedure.
*/
GetGroupsSearchEvent.WaitOne(60000, false);
GetGroupsSearchEvent.WaitOne(TimeSpan.FromMinutes(1), false);
Client.Groups.GroupJoinedReply -= Groups_GroupJoined;
GetGroupsSearchEvent.Reset();

View File

@@ -28,7 +28,7 @@ namespace OpenMetaverse.TestClient
Client.Groups.GroupLeaveReply += Groups_GroupLeft;
Client.Groups.LeaveGroup(groupUUID);
GroupsEvent.WaitOne(30000, false);
GroupsEvent.WaitOne(TimeSpan.FromSeconds(30), false);
Client.Groups.GroupLeaveReply -= Groups_GroupLeft;
GroupsEvent.Reset();

View File

@@ -23,7 +23,7 @@ namespace OpenMetaverse.TestClient
Client.Self.MoneyBalance += balance;
Client.Self.RequestBalance();
string result = "Timeout waiting for balance reply";
if (waitBalance.WaitOne(10000, false))
if (waitBalance.WaitOne(TimeSpan.FromSeconds(10), false))
{
result = Client + " has L$: " + Client.Self.Balance;
}

View File

@@ -44,7 +44,7 @@ namespace OpenMetaverse.TestClient
// Start the asset download
Client.Assets.RequestAsset(AssetID, assetType, true, Assets_OnAssetReceived);
if (DownloadHandle.WaitOne(120 * 1000, false))
if (DownloadHandle.WaitOne(TimeSpan.FromMinutes(2), false))
{
return Success ? $"Saved {AssetID}.{assetType.ToString().ToLower()}"
: $"Failed to download asset {AssetID}, perhaps {assetType} is the incorrect asset type?";

View File

@@ -32,7 +32,7 @@ namespace OpenMetaverse.TestClient
void PrintFolder(InventoryFolder f, StringBuilder result, int indent)
{
List<InventoryBase> contents = Manager.FolderContents(f.UUID, Client.Self.AgentID,
true, true, InventorySortOrder.ByName, 3000);
true, true, InventorySortOrder.ByName, TimeSpan.FromSeconds(3));
if (contents != null)
{

View File

@@ -28,7 +28,7 @@ namespace OpenMetaverse.TestClient
else
return "Couldn't find prim " + objectID;
List<InventoryBase> items = Client.Inventory.GetTaskInventory(objectID, objectLocalID, 1000 * 30);
List<InventoryBase> items = Client.Inventory.GetTaskInventory(objectID, objectLocalID, TimeSpan.FromSeconds(30));
if (items != null)
{

View File

@@ -30,7 +30,7 @@ namespace OpenMetaverse.TestClient
else
return $"Couldn't find prim {objectID}";
List<InventoryBase> items = Client.Inventory.GetTaskInventory(objectID, objectLocalID, 1000 * 30);
List<InventoryBase> items = Client.Inventory.GetTaskInventory(objectID, objectLocalID, TimeSpan.FromSeconds(30));
//bool wantSet = false;
bool setTaskTo = false;

View File

@@ -1,3 +1,4 @@
using System;
using OpenMetaverse.Assets;
namespace OpenMetaverse.TestClient
@@ -58,7 +59,7 @@ namespace OpenMetaverse.TestClient
);
// wait for reply or timeout
if (!waitEvent.WaitOne(10000, false))
if (!waitEvent.WaitOne(TimeSpan.FromSeconds(10), false))
{
result.Append("Timeout waiting for notecard to download.");
}

View File

@@ -27,7 +27,7 @@ namespace OpenMetaverse.TestClient
return "Usage: agentlocations [regionhandle]";
List<MapItem> items = Client.Grid.MapItems(regionHandle, GridItemType.AgentLocations,
GridLayerType.Objects, 1000 * 20);
GridLayerType.Objects, TimeSpan.FromSeconds(20));
if (items != null)
{

View File

@@ -35,7 +35,7 @@ namespace OpenMetaverse.TestClient
if (Client.Network.CurrentSim.IsParcelMapFull())
ParcelsDownloaded.Set();
if (ParcelsDownloaded.WaitOne(30000, false) && Client.Network.Connected)
if (ParcelsDownloaded.WaitOne(TimeSpan.FromSeconds(30), false) && Client.Network.Connected)
{
sb.AppendFormat("Downloaded {0} Parcels in {1} " + System.Environment.NewLine,
Client.Network.CurrentSim.Parcels.Count, Client.Network.CurrentSim.Name);

View File

@@ -39,7 +39,7 @@ namespace OpenMetaverse.TestClient
Client.Parcels.ParcelObjectOwnersReply += callback;
Client.Parcels.RequestObjectOwners(Client.Network.CurrentSim, parcelID);
if (!wait.WaitOne(10000, false))
if (!wait.WaitOne(TimeSpan.FromSeconds(10), false))
{
result.AppendLine("Timed out waiting for packet.");
}

View File

@@ -46,7 +46,7 @@ namespace OpenMetaverse.TestClient
Client.Parcels.RequestObjectOwners(Client.Network.CurrentSim, parcelID);
if (!wait.WaitOne(30000, false))
if (!wait.WaitOne(TimeSpan.FromSeconds(30), false))
{
result.AppendLine("Timed out waiting for packet.");
}

View File

@@ -62,20 +62,24 @@ namespace OpenMetaverse.TestClient
// Find the requested prim
var rootPrim = Client.Network.CurrentSim.ObjectsPrimitives.Find(prim => prim.ID == rootID);
if (rootPrim == null)
return $"Cannot find requested prim {rootID}";
else
Logger.DebugLog($"Found requested prim {rootPrim.ID}", Client);
{
return $"Cannot find requested prim {rootID}";
}
Logger.DebugLog($"Found requested prim {rootPrim.ID}", Client);
if (rootPrim.ParentID != 0)
{
// This is not actually a root prim, find the root
if (!Client.Network.CurrentSim.ObjectsPrimitives.TryGetValue(rootPrim.ParentID, out rootPrim))
{
return "Cannot find root prim for requested object";
else
Logger.DebugLog($"Set root prim to {rootPrim.ID}", Client);
}
Logger.DebugLog($"Set root prim to {rootPrim.ID}", Client);
}
// Find all of the child objects linked to this root
// Find, find all the child objects linked to this root
var childPrims = Client.Network.CurrentSim.ObjectsPrimitives.FindAll(prim => prim.ParentID == rootPrim.LocalID);
// Build a dictionary of primitives for referencing later
@@ -95,7 +99,7 @@ namespace OpenMetaverse.TestClient
PermissionMask.Modify, (Perms & PermissionMask.Modify) == PermissionMask.Modify);
PermsSent = true;
if (!GotPermissionsEvent.WaitOne(1000 * 30, false))
if (!GotPermissionsEvent.WaitOne(TimeSpan.FromSeconds(30), false))
return "Failed to set the modify bit, permissions in an unknown state";
PermCount = 0;
@@ -103,7 +107,7 @@ namespace OpenMetaverse.TestClient
PermissionMask.Copy, (Perms & PermissionMask.Copy) == PermissionMask.Copy);
PermsSent = true;
if (!GotPermissionsEvent.WaitOne(1000 * 30, false))
if (!GotPermissionsEvent.WaitOne(TimeSpan.FromSeconds(30), false))
return "Failed to set the copy bit, permissions in an unknown state";
PermCount = 0;
@@ -111,7 +115,7 @@ namespace OpenMetaverse.TestClient
PermissionMask.Transfer, (Perms & PermissionMask.Transfer) == PermissionMask.Transfer);
PermsSent = true;
if (!GotPermissionsEvent.WaitOne(1000 * 30, false))
if (!GotPermissionsEvent.WaitOne(TimeSpan.FromSeconds(30), false))
return "Failed to set the transfer bit, permissions in an unknown state";
#endregion Set Linkset Permissions
@@ -121,7 +125,7 @@ namespace OpenMetaverse.TestClient
foreach (Primitive prim in Objects.Values)
{
if ((prim.Flags & PrimFlags.InventoryEmpty) != 0) continue;
List<InventoryBase> items = Client.Inventory.GetTaskInventory(prim.ID, prim.LocalID, 1000 * 30);
List<InventoryBase> items = Client.Inventory.GetTaskInventory(prim.ID, prim.LocalID, TimeSpan.FromSeconds(30));
if (items == null) continue;
foreach (var item in items.Where(i => !(i is InventoryFolder)).Cast<InventoryItem>())

View File

@@ -42,7 +42,7 @@ namespace OpenMetaverse.TestClient
Client.Assets.RequestImage(TextureID, ImageType.Normal, Assets_OnImageReceived);
if (DownloadHandle.WaitOne(120 * 1000, false))
if (DownloadHandle.WaitOne(TimeSpan.FromMinutes(2), false))
{
if (resultState == TextureRequestState.Finished)
{

View File

@@ -71,7 +71,7 @@ namespace OpenMetaverse.TestClient
// Check for export permission first
Client.Objects.RequestObjectPropertiesFamily(Client.Network.CurrentSim, id);
GotPermissionsEvent.WaitOne(1000 * 10, false);
GotPermissionsEvent.WaitOne(TimeSpan.FromSeconds(20), false);
if (!GotPermissions)
{

View File

@@ -108,7 +108,7 @@ namespace OpenMetaverse.TestClient
Client.Objects.AddPrim(Client.Network.CurrentSim, linkset.RootPrim.PrimData, GroupID,
linkset.RootPrim.Position, linkset.RootPrim.Scale, linkset.RootPrim.Rotation);
if (!primDone.WaitOne(10000, false))
if (!primDone.WaitOne(TimeSpan.FromSeconds(10), false))
return "Rez failed, timed out while creating the root prim.";
Client.Objects.SetPosition(Client.Network.CurrentSim, primsCreated[primsCreated.Count - 1].LocalID, linkset.RootPrim.Position);
@@ -124,7 +124,7 @@ namespace OpenMetaverse.TestClient
Client.Objects.AddPrim(Client.Network.CurrentSim, prim.PrimData, GroupID, currentPosition,
prim.Scale, prim.Rotation);
if (!primDone.WaitOne(10000, false))
if (!primDone.WaitOne(TimeSpan.FromSeconds(10), false))
return "Rez failed, timed out while creating child prim.";
Client.Objects.SetPosition(Client.Network.CurrentSim, primsCreated[primsCreated.Count - 1].LocalID, currentPosition);
@@ -144,7 +144,7 @@ namespace OpenMetaverse.TestClient
state = ImporterState.Linking;
Client.Objects.LinkPrims(Client.Network.CurrentSim, linkQueue);
if (primDone.WaitOne(1000 * linkset.Children.Count, false))
if (primDone.WaitOne(TimeSpan.FromSeconds(linkset.Children.Count), false))
Client.Objects.SetRotation(Client.Network.CurrentSim, rootLocalID, rootRotation);
else
Console.WriteLine("Warning: Failed to link {0} prims", linkQueue.Count);

View File

@@ -70,7 +70,7 @@ namespace OpenMetaverse.TestClient
Client.Objects.SelectObject(Client.Network.CurrentSim, target.LocalID, true);
propsEvent.WaitOne(1000 * 10, false);
propsEvent.WaitOne(TimeSpan.FromSeconds(10), false);
Client.Objects.ObjectProperties -= propsCallback;
return "Done.";

View File

@@ -43,7 +43,7 @@ namespace OpenMetaverse.TestClient
{
return "RequestParcelVoiceInfo failed. Not available for the current grid?";
}
ParcelVoiceInfoEvent.WaitOne(30 * 1000, false);
ParcelVoiceInfoEvent.WaitOne(TimeSpan.FromSeconds(30), false);
if (string.IsNullOrEmpty(VoiceRegionName) && -1 == VoiceLocalID)
{

View File

@@ -42,7 +42,7 @@ namespace OpenMetaverse.TestClient
{
return "RequestProvisionAccount failed. Not available for the current grid?";
}
ProvisionEvent.WaitOne(30 * 1000, false);
ProvisionEvent.WaitOne(TimeSpan.FromSeconds(30), false);
if (string.IsNullOrEmpty(VoiceAccount) && string.IsNullOrEmpty(VoicePassword))
{

View File

@@ -174,7 +174,7 @@ namespace OpenMetaverse.TestClient
{
Groups.CurrentGroups += Groups_CurrentGroups;
Groups.RequestCurrentGroups();
GroupsEvent.WaitOne(10000, false);
GroupsEvent.WaitOne(TimeSpan.FromSeconds(10), false);
Groups.CurrentGroups -= Groups_CurrentGroups;
GroupsEvent.Reset();
}