mirror of
https://github.com/opensim/opensim.git
synced 2026-08-10 19:36:07 +08:00
changed to native line ending encoding
This commit is contained in:
@@ -1,33 +1,33 @@
|
||||
using System;
|
||||
using System.Threading;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace OpenGridServices.Manager
|
||||
{
|
||||
public class BlockingQueue<T>
|
||||
{
|
||||
private Queue<T> _queue = new Queue<T>();
|
||||
private object _queueSync = new object();
|
||||
|
||||
public void Enqueue(T value)
|
||||
{
|
||||
lock (_queueSync)
|
||||
{
|
||||
_queue.Enqueue(value);
|
||||
Monitor.Pulse(_queueSync);
|
||||
}
|
||||
}
|
||||
|
||||
public T Dequeue()
|
||||
{
|
||||
lock (_queueSync)
|
||||
{
|
||||
if (_queue.Count < 1)
|
||||
Monitor.Wait(_queueSync);
|
||||
|
||||
return _queue.Dequeue();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
using System;
|
||||
using System.Threading;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
|
||||
namespace OpenGridServices.Manager
|
||||
{
|
||||
public class BlockingQueue<T>
|
||||
{
|
||||
private Queue<T> _queue = new Queue<T>();
|
||||
private object _queueSync = new object();
|
||||
|
||||
public void Enqueue(T value)
|
||||
{
|
||||
lock (_queueSync)
|
||||
{
|
||||
_queue.Enqueue(value);
|
||||
Monitor.Pulse(_queueSync);
|
||||
}
|
||||
}
|
||||
|
||||
public T Dequeue()
|
||||
{
|
||||
lock (_queueSync)
|
||||
{
|
||||
if (_queue.Count < 1)
|
||||
Monitor.Wait(_queueSync);
|
||||
|
||||
return _queue.Dequeue();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,133 +1,133 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using libsecondlife;
|
||||
using libsecondlife.Packets;
|
||||
|
||||
namespace OpenSim.Framework.Utilities
|
||||
{
|
||||
public class Util
|
||||
{
|
||||
private static Random randomClass = new Random();
|
||||
private static uint nextXferID = 5000;
|
||||
private static object XferLock = new object();
|
||||
|
||||
public static ulong UIntsToLong(uint X, uint Y)
|
||||
{
|
||||
return Helpers.UIntsToLong(X, Y);
|
||||
}
|
||||
|
||||
public static Random RandomClass
|
||||
{
|
||||
get
|
||||
{
|
||||
return randomClass;
|
||||
}
|
||||
}
|
||||
|
||||
public static uint GetNextXferID()
|
||||
{
|
||||
uint id = 0;
|
||||
lock(XferLock)
|
||||
{
|
||||
id = nextXferID;
|
||||
nextXferID++;
|
||||
}
|
||||
return id;
|
||||
}
|
||||
|
||||
//public static int fast_distance2d(int x, int y)
|
||||
//{
|
||||
// x = System.Math.Abs(x);
|
||||
// y = System.Math.Abs(y);
|
||||
|
||||
// int min = System.Math.Min(x, y);
|
||||
|
||||
// return (x + y - (min >> 1) - (min >> 2) + (min >> 4));
|
||||
//}
|
||||
|
||||
public static string FieldToString(byte[] bytes)
|
||||
{
|
||||
return FieldToString(bytes, String.Empty);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert a variable length field (byte array) to a string, with a
|
||||
/// field name prepended to each line of the output
|
||||
/// </summary>
|
||||
/// <remarks>If the byte array has unprintable characters in it, a
|
||||
/// hex dump will be put in the string instead</remarks>
|
||||
/// <param name="bytes">The byte array to convert to a string</param>
|
||||
/// <param name="fieldName">A field name to prepend to each line of output</param>
|
||||
/// <returns>An ASCII string or a string containing a hex dump, minus
|
||||
/// the null terminator</returns>
|
||||
public static string FieldToString(byte[] bytes, string fieldName)
|
||||
{
|
||||
// Check for a common case
|
||||
if (bytes.Length == 0) return String.Empty;
|
||||
|
||||
StringBuilder output = new StringBuilder();
|
||||
bool printable = true;
|
||||
|
||||
for (int i = 0; i < bytes.Length; ++i)
|
||||
{
|
||||
// Check if there are any unprintable characters in the array
|
||||
if ((bytes[i] < 0x20 || bytes[i] > 0x7E) && bytes[i] != 0x09
|
||||
&& bytes[i] != 0x0D && bytes[i] != 0x0A && bytes[i] != 0x00)
|
||||
{
|
||||
printable = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (printable)
|
||||
{
|
||||
if (fieldName.Length > 0)
|
||||
{
|
||||
output.Append(fieldName);
|
||||
output.Append(": ");
|
||||
}
|
||||
|
||||
if (bytes[bytes.Length - 1] == 0x00)
|
||||
output.Append(UTF8Encoding.UTF8.GetString(bytes, 0, bytes.Length - 1));
|
||||
else
|
||||
output.Append(UTF8Encoding.UTF8.GetString(bytes));
|
||||
}
|
||||
else
|
||||
{
|
||||
for (int i = 0; i < bytes.Length; i += 16)
|
||||
{
|
||||
if (i != 0)
|
||||
output.Append(Environment.NewLine);
|
||||
if (fieldName.Length > 0)
|
||||
{
|
||||
output.Append(fieldName);
|
||||
output.Append(": ");
|
||||
}
|
||||
|
||||
for (int j = 0; j < 16; j++)
|
||||
{
|
||||
if ((i + j) < bytes.Length)
|
||||
output.Append(String.Format("{0:X2} ", bytes[i + j]));
|
||||
else
|
||||
output.Append(" ");
|
||||
}
|
||||
|
||||
for (int j = 0; j < 16 && (i + j) < bytes.Length; j++)
|
||||
{
|
||||
if (bytes[i + j] >= 0x20 && bytes[i + j] < 0x7E)
|
||||
output.Append((char)bytes[i + j]);
|
||||
else
|
||||
output.Append(".");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return output.ToString();
|
||||
}
|
||||
public Util()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using libsecondlife;
|
||||
using libsecondlife.Packets;
|
||||
|
||||
namespace OpenSim.Framework.Utilities
|
||||
{
|
||||
public class Util
|
||||
{
|
||||
private static Random randomClass = new Random();
|
||||
private static uint nextXferID = 5000;
|
||||
private static object XferLock = new object();
|
||||
|
||||
public static ulong UIntsToLong(uint X, uint Y)
|
||||
{
|
||||
return Helpers.UIntsToLong(X, Y);
|
||||
}
|
||||
|
||||
public static Random RandomClass
|
||||
{
|
||||
get
|
||||
{
|
||||
return randomClass;
|
||||
}
|
||||
}
|
||||
|
||||
public static uint GetNextXferID()
|
||||
{
|
||||
uint id = 0;
|
||||
lock(XferLock)
|
||||
{
|
||||
id = nextXferID;
|
||||
nextXferID++;
|
||||
}
|
||||
return id;
|
||||
}
|
||||
|
||||
//public static int fast_distance2d(int x, int y)
|
||||
//{
|
||||
// x = System.Math.Abs(x);
|
||||
// y = System.Math.Abs(y);
|
||||
|
||||
// int min = System.Math.Min(x, y);
|
||||
|
||||
// return (x + y - (min >> 1) - (min >> 2) + (min >> 4));
|
||||
//}
|
||||
|
||||
public static string FieldToString(byte[] bytes)
|
||||
{
|
||||
return FieldToString(bytes, String.Empty);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Convert a variable length field (byte array) to a string, with a
|
||||
/// field name prepended to each line of the output
|
||||
/// </summary>
|
||||
/// <remarks>If the byte array has unprintable characters in it, a
|
||||
/// hex dump will be put in the string instead</remarks>
|
||||
/// <param name="bytes">The byte array to convert to a string</param>
|
||||
/// <param name="fieldName">A field name to prepend to each line of output</param>
|
||||
/// <returns>An ASCII string or a string containing a hex dump, minus
|
||||
/// the null terminator</returns>
|
||||
public static string FieldToString(byte[] bytes, string fieldName)
|
||||
{
|
||||
// Check for a common case
|
||||
if (bytes.Length == 0) return String.Empty;
|
||||
|
||||
StringBuilder output = new StringBuilder();
|
||||
bool printable = true;
|
||||
|
||||
for (int i = 0; i < bytes.Length; ++i)
|
||||
{
|
||||
// Check if there are any unprintable characters in the array
|
||||
if ((bytes[i] < 0x20 || bytes[i] > 0x7E) && bytes[i] != 0x09
|
||||
&& bytes[i] != 0x0D && bytes[i] != 0x0A && bytes[i] != 0x00)
|
||||
{
|
||||
printable = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (printable)
|
||||
{
|
||||
if (fieldName.Length > 0)
|
||||
{
|
||||
output.Append(fieldName);
|
||||
output.Append(": ");
|
||||
}
|
||||
|
||||
if (bytes[bytes.Length - 1] == 0x00)
|
||||
output.Append(UTF8Encoding.UTF8.GetString(bytes, 0, bytes.Length - 1));
|
||||
else
|
||||
output.Append(UTF8Encoding.UTF8.GetString(bytes));
|
||||
}
|
||||
else
|
||||
{
|
||||
for (int i = 0; i < bytes.Length; i += 16)
|
||||
{
|
||||
if (i != 0)
|
||||
output.Append(Environment.NewLine);
|
||||
if (fieldName.Length > 0)
|
||||
{
|
||||
output.Append(fieldName);
|
||||
output.Append(": ");
|
||||
}
|
||||
|
||||
for (int j = 0; j < 16; j++)
|
||||
{
|
||||
if ((i + j) < bytes.Length)
|
||||
output.Append(String.Format("{0:X2} ", bytes[i + j]));
|
||||
else
|
||||
output.Append(" ");
|
||||
}
|
||||
|
||||
for (int j = 0; j < 16 && (i + j) < bytes.Length; j++)
|
||||
{
|
||||
if (bytes[i + j] >= 0x20 && bytes[i + j] < 0x7E)
|
||||
output.Append((char)bytes[i + j]);
|
||||
else
|
||||
output.Append(".");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return output.ToString();
|
||||
}
|
||||
public Util()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user