* Spring cleaning.

* Added new generic "Location" class to handle 2D integer locations. Going to use it to replace all RegionHandle and X,Y coordinate references throughout the entire project. You have been warned.
0.6.0-stable
Adam Frisby 2008-04-29 14:04:55 +00:00
parent 9907c0fd10
commit 375163a6fe
64 changed files with 1283 additions and 1475 deletions

View File

@ -43,8 +43,8 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class ACL public class ACL
{ {
private Dictionary<string, Role> Roles = new Dictionary<string, Role>();
private Dictionary<string, Resource> Resources = new Dictionary<string, Resource>(); private Dictionary<string, Resource> Resources = new Dictionary<string, Resource>();
private Dictionary<string, Role> Roles = new Dictionary<string, Role>();
public ACL AddRole(Role role) public ACL AddRole(Role role)
{ {
@ -125,16 +125,16 @@ namespace OpenSim.Framework
{ {
protected Role m_role; protected Role m_role;
public Role ErrorRole
{
get { return m_role; }
}
public AlreadyContainsRoleException(Role role) public AlreadyContainsRoleException(Role role)
{ {
m_role = role; m_role = role;
} }
public Role ErrorRole
{
get { return m_role; }
}
public override string ToString() public override string ToString()
{ {
return "This ACL already contains a role called '" + m_role.Name + "'."; return "This ACL already contains a role called '" + m_role.Name + "'.";
@ -164,6 +164,18 @@ namespace OpenSim.Framework
private Role[] m_parents; private Role[] m_parents;
private Dictionary<string, Permission> m_resources = new Dictionary<string, Permission>(); private Dictionary<string, Permission> m_resources = new Dictionary<string, Permission>();
public Role(string name)
{
m_name = name;
m_parents = null;
}
public Role(string name, Role[] parents)
{
m_name = name;
m_parents = parents;
}
public string Name public string Name
{ {
get { return m_name; } get { return m_name; }
@ -201,33 +213,21 @@ namespace OpenSim.Framework
{ {
m_resources[resource] = perm; m_resources[resource] = perm;
} }
public Role(string name)
{
m_name = name;
m_parents = null;
}
public Role(string name, Role[] parents)
{
m_name = name;
m_parents = parents;
}
} }
public class Resource public class Resource
{ {
private string m_name; private string m_name;
public string Name
{
get { return m_name; }
}
public Resource(string name) public Resource(string name)
{ {
m_name = name; m_name = name;
} }
public string Name
{
get { return m_name; }
}
} }
#endregion #endregion

View File

@ -32,6 +32,18 @@ namespace OpenSim.Framework
{ {
public class AgentCircuitData public class AgentCircuitData
{ {
public LLUUID AgentID;
public LLUUID BaseFolder;
public string CapsPath = String.Empty;
public bool child;
public uint circuitcode;
public string firstname;
public LLUUID InventoryFolder;
public string lastname;
public LLUUID SecureSessionID;
public LLUUID SessionID;
public LLVector3 startpos;
public AgentCircuitData() public AgentCircuitData()
{ {
} }
@ -50,23 +62,25 @@ namespace OpenSim.Framework
BaseFolder = new LLUUID(cAgent.BaseFolder); BaseFolder = new LLUUID(cAgent.BaseFolder);
CapsPath = cAgent.CapsPath; CapsPath = cAgent.CapsPath;
} }
public LLUUID AgentID;
public LLUUID SessionID;
public LLUUID SecureSessionID;
public LLVector3 startpos;
public string firstname;
public string lastname;
public uint circuitcode;
public bool child;
public LLUUID InventoryFolder;
public LLUUID BaseFolder;
public string CapsPath = String.Empty;
} }
[Serializable] [Serializable]
public class sAgentCircuitData public class sAgentCircuitData
{ {
public Guid AgentID;
public Guid BaseFolder;
public string CapsPath = String.Empty;
public bool child;
public uint circuitcode;
public string firstname;
public Guid InventoryFolder;
public string lastname;
public Guid SecureSessionID;
public Guid SessionID;
public float startposx;
public float startposy;
public float startposz;
public sAgentCircuitData() public sAgentCircuitData()
{ {
} }
@ -87,19 +101,5 @@ namespace OpenSim.Framework
BaseFolder = cAgent.BaseFolder.UUID; BaseFolder = cAgent.BaseFolder.UUID;
CapsPath = cAgent.CapsPath; CapsPath = cAgent.CapsPath;
} }
public Guid AgentID;
public Guid SessionID;
public Guid SecureSessionID;
public float startposx;
public float startposy;
public float startposz;
public string firstname;
public string lastname;
public uint circuitcode;
public bool child;
public Guid InventoryFolder;
public Guid BaseFolder;
public string CapsPath = String.Empty;
} }
} }

View File

@ -35,11 +35,11 @@ namespace OpenSim.Framework
public class AgentInventory public class AgentInventory
{ {
//Holds the local copy of Inventory info for a agent //Holds the local copy of Inventory info for a agent
public LLUUID AgentID;
public Dictionary<LLUUID, InventoryFolder> InventoryFolders; public Dictionary<LLUUID, InventoryFolder> InventoryFolders;
public Dictionary<LLUUID, InventoryItem> InventoryItems; public Dictionary<LLUUID, InventoryItem> InventoryItems;
public InventoryFolder InventoryRoot; public InventoryFolder InventoryRoot;
public int LastCached; //maybe used by opensim app, time this was last stored/compared to user server public int LastCached; //maybe used by opensim app, time this was last stored/compared to user server
public LLUUID AgentID;
public AvatarWearable[] Wearables; public AvatarWearable[] Wearables;
public AgentInventory() public AgentInventory()
@ -206,13 +206,13 @@ namespace OpenSim.Framework
public class InventoryFolder public class InventoryFolder
{ {
public List<InventoryItem> Items;
//public List<InventoryFolder> Subfolders; //public List<InventoryFolder> Subfolders;
public ushort DefaultType;
public LLUUID FolderID; public LLUUID FolderID;
public string FolderName;
public List<InventoryItem> Items;
public LLUUID OwnerID; public LLUUID OwnerID;
public LLUUID ParentID = LLUUID.Zero; public LLUUID ParentID = LLUUID.Zero;
public string FolderName;
public ushort DefaultType;
public ushort Version; public ushort Version;
public InventoryFolder() public InventoryFolder()
@ -224,15 +224,15 @@ namespace OpenSim.Framework
public class InventoryItem public class InventoryItem
{ {
public LLUUID FolderID;
public LLUUID OwnerID;
public LLUUID ItemID;
public LLUUID AssetID; public LLUUID AssetID;
public LLUUID CreatorID; public LLUUID CreatorID;
public sbyte InvType;
public sbyte Type;
public string Name = String.Empty;
public string Description; public string Description;
public LLUUID FolderID;
public sbyte InvType;
public LLUUID ItemID;
public string Name = String.Empty;
public LLUUID OwnerID;
public sbyte Type;
public InventoryItem() public InventoryItem()
{ {

View File

@ -34,13 +34,13 @@ namespace OpenSim.Framework
public class AssetBase public class AssetBase
{ {
private byte[] _data; private byte[] _data;
private LLUUID _fullid;
private sbyte _type;
private sbyte _invtype;
private string _name = String.Empty;
private string _description = String.Empty; private string _description = String.Empty;
private LLUUID _fullid;
private sbyte _invtype;
private bool _local = false; private bool _local = false;
private string _name = String.Empty;
private bool _temporary = false; private bool _temporary = false;
private sbyte _type;
public AssetBase() public AssetBase()
{ {
@ -52,47 +52,56 @@ namespace OpenSim.Framework
Name = name; Name = name;
} }
public virtual LLUUID FullID { public virtual LLUUID FullID
{
get { return _fullid; } get { return _fullid; }
set { _fullid = value; } set { _fullid = value; }
} }
public virtual string ID { public virtual string ID
{
get { return _fullid.ToString(); } get { return _fullid.ToString(); }
set { _fullid = new LLUUID(value); } set { _fullid = new LLUUID(value); }
} }
public virtual byte[] Data { public virtual byte[] Data
{
get { return _data; } get { return _data; }
set { _data = value; } set { _data = value; }
} }
public virtual sbyte Type { public virtual sbyte Type
{
get { return _type; } get { return _type; }
set { _type = value; } set { _type = value; }
} }
public virtual sbyte InvType { public virtual sbyte InvType
{
get { return _invtype; } get { return _invtype; }
set { _invtype = value; } set { _invtype = value; }
} }
public virtual string Name { public virtual string Name
{
get { return _name; } get { return _name; }
set { _name = value; } set { _name = value; }
} }
public virtual string Description { public virtual string Description
{
get { return _description; } get { return _description; }
set { _description = value; } set { _description = value; }
} }
public virtual bool Local { public virtual bool Local
{
get { return _local; } get { return _local; }
set { _local = value; } set { _local = value; }
} }
public virtual bool Temporary { public virtual bool Temporary
{
get { return _temporary; } get { return _temporary; }
set { _temporary = value; } set { _temporary = value; }
} }

View File

@ -34,16 +34,13 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class AssetConfig public class AssetConfig
{ {
public string DefaultStartupMsg = String.Empty;
public string DatabaseProvider = String.Empty;
public string DatabaseConnect = String.Empty;
public const uint DefaultHttpPort = 8003; public const uint DefaultHttpPort = 8003;
public uint HttpPort = DefaultHttpPort;
private ConfigurationMember configMember; private ConfigurationMember configMember;
public string DatabaseConnect = String.Empty;
public string DatabaseProvider = String.Empty;
public string DefaultStartupMsg = String.Empty;
public uint HttpPort = DefaultHttpPort;
public AssetConfig(string description, string filename) public AssetConfig(string description, string filename)
{ {

View File

@ -32,10 +32,10 @@ namespace OpenSim.Framework
{ {
public class AssetLandmark : AssetBase public class AssetLandmark : AssetBase
{ {
public int Version;
public LLVector3 Position; public LLVector3 Position;
public LLUUID RegionID;
public ulong RegionHandle; public ulong RegionHandle;
public LLUUID RegionID;
public int Version;
public AssetLandmark(AssetBase a) public AssetLandmark(AssetBase a)
{ {

View File

@ -31,6 +31,11 @@ namespace OpenSim.Framework
{ {
public class AssetStorage public class AssetStorage
{ {
public byte[] Data;
public string Name;
public sbyte Type;
public LLUUID UUID;
public AssetStorage() public AssetStorage()
{ {
} }
@ -39,10 +44,5 @@ namespace OpenSim.Framework
{ {
UUID = assetUUID; UUID = assetUUID;
} }
public byte[] Data;
public sbyte Type;
public string Name;
public LLUUID UUID;
} }
} }

View File

@ -48,6 +48,20 @@ namespace OpenSim.Framework
ItemID = itemId; ItemID = itemId;
} }
protected AvatarWearable(SerializationInfo info, StreamingContext context)
{
//System.Console.WriteLine("AvatarWearable Deserialize BGN");
if (info == null)
{
throw new ArgumentNullException("info");
}
AssetID = new LLUUID((Guid) info.GetValue("AssetID", typeof (Guid)));
ItemID = new LLUUID((Guid) info.GetValue("ItemID", typeof (Guid)));
//System.Console.WriteLine("AvatarWearable Deserialize END");
}
public static AvatarWearable[] DefaultWearables public static AvatarWearable[] DefaultWearables
{ {
get get
@ -72,24 +86,12 @@ namespace OpenSim.Framework
} }
} }
protected AvatarWearable(SerializationInfo info, StreamingContext context) #region ISerializable Members
{
//System.Console.WriteLine("AvatarWearable Deserialize BGN");
if (info == null)
{
throw new ArgumentNullException("info");
}
AssetID = new LLUUID((Guid)info.GetValue("AssetID", typeof(Guid)));
ItemID = new LLUUID((Guid)info.GetValue("ItemID", typeof(Guid)));
//System.Console.WriteLine("AvatarWearable Deserialize END");
}
[SecurityPermission(SecurityAction.LinkDemand, [SecurityPermission(SecurityAction.LinkDemand,
Flags = SecurityPermissionFlag.SerializationFormatter)] Flags = SecurityPermissionFlag.SerializationFormatter)]
public virtual void GetObjectData( public virtual void GetObjectData(
SerializationInfo info, StreamingContext context) SerializationInfo info, StreamingContext context)
{ {
if (info == null) if (info == null)
{ {
@ -99,5 +101,7 @@ namespace OpenSim.Framework
info.AddValue("AssetID", AssetID.UUID); info.AddValue("AssetID", AssetID.UUID);
info.AddValue("ItemID", ItemID.UUID); info.AddValue("ItemID", ItemID.UUID);
} }
#endregion
} }
} }

View File

@ -67,10 +67,10 @@ namespace OpenSim.Framework
public int Count() public int Count()
{ {
lock(m_queueSync) lock (m_queueSync)
{ {
return m_queue.Count; return m_queue.Count;
} }
} }
public T[] GetQueueArray() public T[] GetQueueArray()

View File

@ -32,21 +32,21 @@ namespace OpenSim.Framework
[Serializable] [Serializable]
public class ChildAgentDataUpdate public class ChildAgentDataUpdate
{ {
public Guid ActiveGroupID;
public Guid AgentID;
public bool alwaysrun;
public float AVHeight;
public sLLVector3 cameraPosition;
public float drawdistance;
public float godlevel;
public uint GroupAccess;
public sLLVector3 Position;
public ulong regionHandle;
public byte[] throttles;
public sLLVector3 Velocity;
public ChildAgentDataUpdate() public ChildAgentDataUpdate()
{ {
} }
public sLLVector3 Position;
public ulong regionHandle;
public float drawdistance;
public sLLVector3 cameraPosition;
public sLLVector3 Velocity;
public float AVHeight;
public Guid AgentID;
public float godlevel;
public byte[] throttles;
public bool alwaysrun;
public Guid ActiveGroupID;
public uint GroupAccess;
} }
} }

View File

@ -42,6 +42,11 @@ namespace OpenSim.Framework
private Dictionary<uint, IClientAPI> m_clients; private Dictionary<uint, IClientAPI> m_clients;
public ClientManager()
{
m_clients = new Dictionary<uint, IClientAPI>();
}
public void ForEachClient(ForEachClientDelegate whatToDo) public void ForEachClient(ForEachClientDelegate whatToDo)
{ {
// Wasteful, I know // Wasteful, I know
@ -65,11 +70,6 @@ namespace OpenSim.Framework
} }
} }
public ClientManager()
{
m_clients = new Dictionary<uint, IClientAPI>();
}
public void Remove(uint id) public void Remove(uint id)
{ {
//m_log.InfoFormat("[CLIENT]: Removing client with code {0}, current count {1}", id, m_clients.Count); //m_log.InfoFormat("[CLIENT]: Removing client with code {0}, current count {1}", id, m_clients.Count);
@ -94,7 +94,7 @@ namespace OpenSim.Framework
bool tryGetRet = false; bool tryGetRet = false;
lock (m_clients) lock (m_clients)
tryGetRet = m_clients.TryGetValue(circuitCode, out client); tryGetRet = m_clients.TryGetValue(circuitCode, out client);
if(tryGetRet) if (tryGetRet)
{ {
client.InPacket(packet); client.InPacket(packet);
} }
@ -125,7 +125,7 @@ namespace OpenSim.Framework
bool tryGetRet = false; bool tryGetRet = false;
lock (m_clients) lock (m_clients)
tryGetRet = m_clients.TryGetValue(circuits[i], out client); tryGetRet = m_clients.TryGetValue(circuits[i], out client);
if(tryGetRet) if (tryGetRet)
{ {
Remove(client.CircuitCode); Remove(client.CircuitCode);
client.Close(false); client.Close(false);
@ -149,7 +149,7 @@ namespace OpenSim.Framework
m_clients.Values.CopyTo(LocalClients, 0); m_clients.Values.CopyTo(LocalClients, 0);
} }
for (int i = 0; i < LocalClients.Length; i++ ) for (int i = 0; i < LocalClients.Length; i++)
{ {
if (LocalClients[i].AgentId == agentId) if (LocalClients[i].AgentId == agentId)
{ {
@ -173,7 +173,7 @@ namespace OpenSim.Framework
public void ViewerEffectHandler(IClientAPI sender, ViewerEffectPacket.EffectBlock[] effectBlock) public void ViewerEffectHandler(IClientAPI sender, ViewerEffectPacket.EffectBlock[] effectBlock)
{ {
ViewerEffectPacket packet = (ViewerEffectPacket) PacketPool.Instance.GetPacket(PacketType.ViewerEffect); ViewerEffectPacket packet = (ViewerEffectPacket) PacketPool.Instance.GetPacket(PacketType.ViewerEffect);
// TODO: don't create new blocks if recycling an old packet // TODO: don't create new blocks if recycling an old packet
packet.Effect = effectBlock; packet.Effect = effectBlock;

View File

@ -39,26 +39,33 @@ namespace OpenSim.Framework
{ {
public class ConfigurationMember public class ConfigurationMember
{ {
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); #region Delegates
public delegate bool ConfigurationOptionResult(string configuration_key, object configuration_result); public delegate bool ConfigurationOptionResult(string configuration_key, object configuration_result);
public delegate void ConfigurationOptionsLoad(); public delegate void ConfigurationOptionsLoad();
private List<ConfigurationOption> configurationOptions = new List<ConfigurationOption>(); #endregion
private string configurationFilename = String.Empty;
private string configurationDescription = String.Empty;
private XmlNode configurationFromXMLNode = null;
private ConfigurationOptionsLoad loadFunction;
private ConfigurationOptionResult resultFunction;
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private int cE = 0;
private string configurationDescription = String.Empty;
private string configurationFilename = String.Empty;
private XmlNode configurationFromXMLNode = null;
private List<ConfigurationOption> configurationOptions = new List<ConfigurationOption>();
private IGenericConfig configurationPlugin = null; private IGenericConfig configurationPlugin = null;
private bool useConsoleToPromptOnError = true;
/// <summary> /// <summary>
/// This is the default configuration DLL loaded /// This is the default configuration DLL loaded
/// </summary> /// </summary>
private string configurationPluginFilename = "OpenSim.Framework.Configuration.XML.dll"; private string configurationPluginFilename = "OpenSim.Framework.Configuration.XML.dll";
private ConfigurationOptionsLoad loadFunction;
private ConfigurationOptionResult resultFunction;
private bool useConsoleToPromptOnError = true;
public ConfigurationMember(string configuration_filename, string configuration_description, public ConfigurationMember(string configuration_filename, string configuration_description,
ConfigurationOptionsLoad load_function, ConfigurationOptionResult result_function, bool use_console_to_prompt_on_error) ConfigurationOptionsLoad load_function, ConfigurationOptionResult result_function, bool use_console_to_prompt_on_error)
{ {
@ -150,7 +157,6 @@ namespace OpenSim.Framework
} }
// TEMP - REMOVE // TEMP - REMOVE
private int cE = 0;
public void performConfigurationRetrieve() public void performConfigurationRetrieve()
{ {
if (cE > 1) if (cE > 1)
@ -162,14 +168,14 @@ namespace OpenSim.Framework
if (loadFunction == null) if (loadFunction == null)
{ {
m_log.Error("Load Function for '" + configurationDescription + m_log.Error("Load Function for '" + configurationDescription +
"' is null. Refusing to run configuration."); "' is null. Refusing to run configuration.");
return; return;
} }
if (resultFunction == null) if (resultFunction == null)
{ {
m_log.Error("Result Function for '" + configurationDescription + m_log.Error("Result Function for '" + configurationDescription +
"' is null. Refusing to run configuration."); "' is null. Refusing to run configuration.");
return; return;
} }
@ -261,7 +267,7 @@ namespace OpenSim.Framework
{ {
console_result = console_result =
MainConsole.Instance.CmdPrompt(configOption.configurationQuestion, MainConsole.Instance.CmdPrompt(configOption.configurationQuestion,
configOption.configurationDefault); configOption.configurationDefault);
} }
} }
else else

View File

@ -31,8 +31,14 @@ namespace OpenSim.Framework
{ {
public class ConfigurationOption public class ConfigurationOption
{ {
#region Delegates
public delegate bool ConfigurationOptionShouldBeAsked(string configuration_key); public delegate bool ConfigurationOptionShouldBeAsked(string configuration_key);
#endregion
#region ConfigurationTypes enum
public enum ConfigurationTypes public enum ConfigurationTypes
{ {
TYPE_STRING, TYPE_STRING,
@ -53,9 +59,12 @@ namespace OpenSim.Framework
TYPE_DOUBLE TYPE_DOUBLE
} ; } ;
#endregion
public string configurationDefault = String.Empty;
public string configurationKey = String.Empty; public string configurationKey = String.Empty;
public string configurationQuestion = String.Empty; public string configurationQuestion = String.Empty;
public string configurationDefault = String.Empty;
public ConfigurationTypes configurationType = ConfigurationTypes.TYPE_STRING; public ConfigurationTypes configurationType = ConfigurationTypes.TYPE_STRING;
public bool configurationUseDefaultNoPrompt = false; public bool configurationUseDefaultNoPrompt = false;

View File

@ -36,10 +36,72 @@ namespace OpenSim.Framework
public class EstateSettings public class EstateSettings
{ {
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private ConfigurationMember configMember;
//Settings to this island //Settings to this island
private float m_billableFactor; private float m_billableFactor;
private uint m_estateID;
private LLUUID m_estateManager0;
private LLUUID m_estateManager1;
private LLUUID m_estateManager2;
private LLUUID m_estateManager3;
private LLUUID m_estateManager4;
private LLUUID m_estateManager5;
private LLUUID m_estateManager6;
private LLUUID m_estateManager7;
private LLUUID m_estateManager8;
private LLUUID m_estateManager9;
private string m_estateName;
private byte m_maxAgents;
private float m_objectBonusFactor;
private uint m_parentEstateID;
private int m_pricePerMeter;
private int m_redirectGridX;
private int m_redirectGridY;
private bool m_regionAllowTerraform;
private Simulator.RegionFlags m_regionFlags;
private ushort m_regionWaterHeight;
private Simulator.SimAccess m_simAccess;
private float m_sunHour;
private LLVector3 m_sunPosition;
private LLUUID m_terrainBase0;
private LLUUID m_terrainBase1;
private LLUUID m_terrainBase2;
private LLUUID m_terrainBase3;
private LLUUID m_terrainDetail0;
private LLUUID m_terrainDetail1;
private LLUUID m_terrainDetail2;
private LLUUID m_terrainDetail3;
private string m_terrainFile;
private float m_terrainHeightRange0;
private float m_terrainHeightRange1;
private float m_terrainHeightRange2;
private float m_terrainHeightRange3;
private LLUUID m_terrainImageID;
private float m_terrainLowerLimit;
private double m_terrainMultiplier;
private float m_terrainRaiseLimit;
private float m_terrainStartHeight0;
private float m_terrainStartHeight1;
private float m_terrainStartHeight2;
private float m_terrainStartHeight3;
private bool m_useFixedSun;
private float m_waterHeight;
public EstateSettings()
{
// Temporary hack to prevent multiple loadings.
if (configMember == null)
{
configMember =
new ConfigurationMember(Path.Combine(Util.configDir(), "estate_settings.xml"), "ESTATE SETTINGS",
loadConfigurationOptions, handleIncomingConfiguration, true);
configMember.performConfigurationRetrieve();
}
}
public float billableFactor public float billableFactor
{ {
get { return m_billableFactor; } get { return m_billableFactor; }
@ -50,8 +112,6 @@ namespace OpenSim.Framework
} }
} }
private uint m_estateID;
public uint estateID public uint estateID
{ {
get { return m_estateID; } get { return m_estateID; }
@ -62,8 +122,6 @@ namespace OpenSim.Framework
} }
} }
private uint m_parentEstateID;
public uint parentEstateID public uint parentEstateID
{ {
get { return m_parentEstateID; } get { return m_parentEstateID; }
@ -74,8 +132,6 @@ namespace OpenSim.Framework
} }
} }
private byte m_maxAgents;
public byte maxAgents public byte maxAgents
{ {
get { return m_maxAgents; } get { return m_maxAgents; }
@ -86,8 +142,6 @@ namespace OpenSim.Framework
} }
} }
private float m_objectBonusFactor;
public float objectBonusFactor public float objectBonusFactor
{ {
get { return m_objectBonusFactor; } get { return m_objectBonusFactor; }
@ -98,8 +152,6 @@ namespace OpenSim.Framework
} }
} }
private int m_redirectGridX;
public int redirectGridX public int redirectGridX
{ {
get { return m_redirectGridX; } get { return m_redirectGridX; }
@ -110,8 +162,6 @@ namespace OpenSim.Framework
} }
} }
private int m_redirectGridY;
public int redirectGridY public int redirectGridY
{ {
get { return m_redirectGridY; } get { return m_redirectGridY; }
@ -122,8 +172,6 @@ namespace OpenSim.Framework
} }
} }
private Simulator.RegionFlags m_regionFlags;
public Simulator.RegionFlags regionFlags public Simulator.RegionFlags regionFlags
{ {
get { return m_regionFlags; } get { return m_regionFlags; }
@ -131,24 +179,20 @@ namespace OpenSim.Framework
{ {
//m_regionFlags = (Simulator.RegionFlags)0x400000; //m_regionFlags = (Simulator.RegionFlags)0x400000;
m_regionFlags = value; m_regionFlags = value;
configMember.forceSetConfigurationOption("region_flags", ((uint)m_regionFlags).ToString()); configMember.forceSetConfigurationOption("region_flags", ((uint) m_regionFlags).ToString());
} }
} }
private Simulator.SimAccess m_simAccess;
public Simulator.SimAccess simAccess public Simulator.SimAccess simAccess
{ {
get { return m_simAccess; } get { return m_simAccess; }
set set
{ {
m_simAccess = value; m_simAccess = value;
configMember.forceSetConfigurationOption("sim_access", ((byte)m_simAccess).ToString()); configMember.forceSetConfigurationOption("sim_access", ((byte) m_simAccess).ToString());
} }
} }
private float m_sunHour;
public float sunHour public float sunHour
{ {
get { return m_sunHour; } get { return m_sunHour; }
@ -159,8 +203,6 @@ namespace OpenSim.Framework
} }
} }
private LLVector3 m_sunPosition;
public LLVector3 sunPosition public LLVector3 sunPosition
{ {
get { return m_sunPosition; } get { return m_sunPosition; }
@ -171,8 +213,6 @@ namespace OpenSim.Framework
} }
} }
private float m_terrainRaiseLimit;
public float terrainRaiseLimit public float terrainRaiseLimit
{ {
get { return m_terrainRaiseLimit; } get { return m_terrainRaiseLimit; }
@ -183,8 +223,6 @@ namespace OpenSim.Framework
} }
} }
private float m_terrainLowerLimit;
public float terrainLowerLimit public float terrainLowerLimit
{ {
get { return m_terrainLowerLimit; } get { return m_terrainLowerLimit; }
@ -195,8 +233,6 @@ namespace OpenSim.Framework
} }
} }
private bool m_useFixedSun;
public bool useFixedSun public bool useFixedSun
{ {
get { return m_useFixedSun; } get { return m_useFixedSun; }
@ -207,8 +243,6 @@ namespace OpenSim.Framework
} }
} }
private int m_pricePerMeter;
public int pricePerMeter public int pricePerMeter
{ {
get { return m_pricePerMeter; } get { return m_pricePerMeter; }
@ -220,8 +254,6 @@ namespace OpenSim.Framework
} }
private ushort m_regionWaterHeight;
public ushort regionWaterHeight public ushort regionWaterHeight
{ {
get { return m_regionWaterHeight; } get { return m_regionWaterHeight; }
@ -233,8 +265,6 @@ namespace OpenSim.Framework
} }
private bool m_regionAllowTerraform;
public bool regionAllowTerraform public bool regionAllowTerraform
{ {
get { return m_regionAllowTerraform; } get { return m_regionAllowTerraform; }
@ -248,7 +278,6 @@ namespace OpenSim.Framework
// Region Information // Region Information
// Low resolution 'base' textures. No longer used. // Low resolution 'base' textures. No longer used.
private LLUUID m_terrainBase0;
public LLUUID terrainBase0 public LLUUID terrainBase0
{ {
@ -260,8 +289,6 @@ namespace OpenSim.Framework
} }
} }
private LLUUID m_terrainBase1;
public LLUUID terrainBase1 public LLUUID terrainBase1
{ {
get { return m_terrainBase1; } get { return m_terrainBase1; }
@ -272,8 +299,6 @@ namespace OpenSim.Framework
} }
} }
private LLUUID m_terrainBase2;
public LLUUID terrainBase2 public LLUUID terrainBase2
{ {
get { return m_terrainBase2; } get { return m_terrainBase2; }
@ -284,8 +309,6 @@ namespace OpenSim.Framework
} }
} }
private LLUUID m_terrainBase3;
public LLUUID terrainBase3 public LLUUID terrainBase3
{ {
get { return m_terrainBase3; } get { return m_terrainBase3; }
@ -298,7 +321,6 @@ namespace OpenSim.Framework
// Higher resolution terrain textures // Higher resolution terrain textures
private LLUUID m_terrainDetail0;
public LLUUID terrainDetail0 public LLUUID terrainDetail0
{ {
@ -310,8 +332,6 @@ namespace OpenSim.Framework
} }
} }
private LLUUID m_terrainDetail1;
public LLUUID terrainDetail1 public LLUUID terrainDetail1
{ {
get { return m_terrainDetail1; } get { return m_terrainDetail1; }
@ -322,8 +342,6 @@ namespace OpenSim.Framework
} }
} }
private LLUUID m_terrainDetail2;
public LLUUID terrainDetail2 public LLUUID terrainDetail2
{ {
get { return m_terrainDetail2; } get { return m_terrainDetail2; }
@ -334,8 +352,6 @@ namespace OpenSim.Framework
} }
} }
private LLUUID m_terrainDetail3;
public LLUUID terrainDetail3 public LLUUID terrainDetail3
{ {
get { return m_terrainDetail3; } get { return m_terrainDetail3; }
@ -347,7 +363,6 @@ namespace OpenSim.Framework
} }
// First quad - each point is bilinearly interpolated at each meter of terrain // First quad - each point is bilinearly interpolated at each meter of terrain
private float m_terrainStartHeight0;
public float terrainStartHeight0 public float terrainStartHeight0
{ {
@ -360,8 +375,6 @@ namespace OpenSim.Framework
} }
private float m_terrainStartHeight1;
public float terrainStartHeight1 public float terrainStartHeight1
{ {
get { return m_terrainStartHeight1; } get { return m_terrainStartHeight1; }
@ -372,8 +385,6 @@ namespace OpenSim.Framework
} }
} }
private float m_terrainStartHeight2;
public float terrainStartHeight2 public float terrainStartHeight2
{ {
get { return m_terrainStartHeight2; } get { return m_terrainStartHeight2; }
@ -384,8 +395,6 @@ namespace OpenSim.Framework
} }
} }
private float m_terrainStartHeight3;
public float terrainStartHeight3 public float terrainStartHeight3
{ {
get { return m_terrainStartHeight3; } get { return m_terrainStartHeight3; }
@ -399,7 +408,6 @@ namespace OpenSim.Framework
// Second quad - also bilinearly interpolated. // Second quad - also bilinearly interpolated.
// Terrain texturing is done that: // Terrain texturing is done that:
// 0..3 (0 = base0, 3 = base3) = (terrain[x,y] - start[x,y]) / range[x,y] // 0..3 (0 = base0, 3 = base3) = (terrain[x,y] - start[x,y]) / range[x,y]
private float m_terrainHeightRange0;
public float terrainHeightRange0 public float terrainHeightRange0
{ {
@ -411,8 +419,6 @@ namespace OpenSim.Framework
} }
} }
private float m_terrainHeightRange1;
public float terrainHeightRange1 public float terrainHeightRange1
{ {
get { return m_terrainHeightRange1; } get { return m_terrainHeightRange1; }
@ -423,8 +429,6 @@ namespace OpenSim.Framework
} }
} }
private float m_terrainHeightRange2;
public float terrainHeightRange2 public float terrainHeightRange2
{ {
get { return m_terrainHeightRange2; } get { return m_terrainHeightRange2; }
@ -435,8 +439,6 @@ namespace OpenSim.Framework
} }
} }
private float m_terrainHeightRange3;
public float terrainHeightRange3 public float terrainHeightRange3
{ {
get { return m_terrainHeightRange3; } get { return m_terrainHeightRange3; }
@ -448,7 +450,6 @@ namespace OpenSim.Framework
} }
// Terrain Default (Must be in F32 Format!) // Terrain Default (Must be in F32 Format!)
private string m_terrainFile;
public string terrainFile public string terrainFile
{ {
@ -460,8 +461,6 @@ namespace OpenSim.Framework
} }
} }
private double m_terrainMultiplier;
public double terrainMultiplier public double terrainMultiplier
{ {
get { return m_terrainMultiplier; } get { return m_terrainMultiplier; }
@ -472,8 +471,6 @@ namespace OpenSim.Framework
} }
} }
private float m_waterHeight;
public float waterHeight public float waterHeight
{ {
get { return m_waterHeight; } get { return m_waterHeight; }
@ -484,8 +481,6 @@ namespace OpenSim.Framework
} }
} }
private LLUUID m_terrainImageID;
public LLUUID terrainImageID public LLUUID terrainImageID
{ {
get { return m_terrainImageID; } get { return m_terrainImageID; }
@ -501,7 +496,6 @@ namespace OpenSim.Framework
} }
// Estate name // Estate name
private string m_estateName;
public string estateName public string estateName
{ {
@ -513,20 +507,10 @@ namespace OpenSim.Framework
} }
} }
private LLUUID m_estateManager0;
private LLUUID m_estateManager1;
private LLUUID m_estateManager2;
private LLUUID m_estateManager3;
private LLUUID m_estateManager4;
private LLUUID m_estateManager5;
private LLUUID m_estateManager6;
private LLUUID m_estateManager7;
private LLUUID m_estateManager8;
private LLUUID m_estateManager9;
public LLUUID[] estateManagers public LLUUID[] estateManagers
{ {
get { get
{
// returns a condensed array of LLUUIDs // returns a condensed array of LLUUIDs
return GetEstateManagers(); return GetEstateManagers();
} }
@ -611,8 +595,8 @@ namespace OpenSim.Framework
for (i = 0; i < 10; i++) for (i = 0; i < 10; i++)
{ {
// Writes out the Estate managers to the XML file. // Writes out the Estate managers to the XML file.
configMember.forceSetConfigurationOption("estate_manager_" + i, (GetEstateManagerAtPos(i)).ToString()); configMember.forceSetConfigurationOption("estate_manager_" + i, (GetEstateManagerAtPos(i)).ToString());
} }
} }
} }
@ -656,7 +640,6 @@ namespace OpenSim.Framework
default: default:
return LLUUID.Zero; return LLUUID.Zero;
} }
} }
@ -671,8 +654,8 @@ namespace OpenSim.Framework
{ {
pos = GetNextEstateManager(pos); pos = GetNextEstateManager(pos);
rEstateManagers[i] = GetEstateManagerAtPos(pos); pos++; rEstateManagers[i] = GetEstateManagerAtPos(pos);
pos++;
} }
return rEstateManagers; return rEstateManagers;
} }
@ -681,12 +664,11 @@ namespace OpenSim.Framework
{ {
// This is a utility function that skips over estate managers set to LLUUID.Zero // This is a utility function that skips over estate managers set to LLUUID.Zero
int i = startpos; int i = startpos;
for (i=startpos;i<10;i++) for (i = startpos; i < 10; i++)
{ {
if (GetEstateManagerAtPos(i) != LLUUID.Zero) return i; if (GetEstateManagerAtPos(i) != LLUUID.Zero) return i;
} }
return i; return i;
} }
private int GetNumberOfEstateManagers() private int GetNumberOfEstateManagers()
@ -723,7 +705,6 @@ namespace OpenSim.Framework
//Saves it to the estate settings file //Saves it to the estate settings file
estateManagers = nestateManagers; estateManagers = nestateManagers;
} }
public void RemoveEstateManager(LLUUID avatarID) public void RemoveEstateManager(LLUUID avatarID)
@ -766,20 +747,6 @@ namespace OpenSim.Framework
#endregion #endregion
private ConfigurationMember configMember;
public EstateSettings()
{
// Temporary hack to prevent multiple loadings.
if (configMember == null)
{
configMember =
new ConfigurationMember(Path.Combine(Util.configDir(), "estate_settings.xml"), "ESTATE SETTINGS",
loadConfigurationOptions, handleIncomingConfiguration, true);
configMember.performConfigurationRetrieve();
}
}
public void loadConfigurationOptions() public void loadConfigurationOptions()
{ {
configMember.addConfigurationOption("billable_factor", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, String.Empty, configMember.addConfigurationOption("billable_factor", ConfigurationOption.ConfigurationTypes.TYPE_FLOAT, String.Empty,
@ -1010,34 +977,34 @@ namespace OpenSim.Framework
break; break;
case "estate_manager_0": case "estate_manager_0":
m_estateManager0 = (LLUUID)configuration_result; m_estateManager0 = (LLUUID) configuration_result;
break; break;
case "estate_manager_1": case "estate_manager_1":
m_estateManager1 = (LLUUID)configuration_result; m_estateManager1 = (LLUUID) configuration_result;
break; break;
case "estate_manager_2": case "estate_manager_2":
m_estateManager2 = (LLUUID)configuration_result; m_estateManager2 = (LLUUID) configuration_result;
break; break;
case "estate_manager_3": case "estate_manager_3":
m_estateManager3 = (LLUUID)configuration_result; m_estateManager3 = (LLUUID) configuration_result;
break; break;
case "estate_manager_4": case "estate_manager_4":
m_estateManager4 = (LLUUID)configuration_result; m_estateManager4 = (LLUUID) configuration_result;
break; break;
case "estate_manager_5": case "estate_manager_5":
m_estateManager5 = (LLUUID)configuration_result; m_estateManager5 = (LLUUID) configuration_result;
break; break;
case "estate_manager_6": case "estate_manager_6":
m_estateManager6 = (LLUUID)configuration_result; m_estateManager6 = (LLUUID) configuration_result;
break; break;
case "estate_manager_7": case "estate_manager_7":
m_estateManager7 = (LLUUID)configuration_result; m_estateManager7 = (LLUUID) configuration_result;
break; break;
case "estate_manager_8": case "estate_manager_8":
m_estateManager8 = (LLUUID)configuration_result; m_estateManager8 = (LLUUID) configuration_result;
break; break;
case "estate_manager_9": case "estate_manager_9":
m_estateManager9 = (LLUUID)configuration_result; m_estateManager9 = (LLUUID) configuration_result;
break; break;
} }

View File

@ -31,14 +31,14 @@ namespace OpenSim.Framework
{ {
public class FriendListItem public class FriendListItem
{ {
public LLUUID FriendListOwner;
public LLUUID Friend; public LLUUID Friend;
public LLUUID FriendListOwner;
// These are what the list owner gives the friend permission to do // These are what the list owner gives the friend permission to do
public uint FriendPerms;
// These are what the friend gives the listowner permission to do // These are what the friend gives the listowner permission to do
public uint FriendListOwnerPerms; public uint FriendListOwnerPerms;
public uint FriendPerms;
public bool onlinestatus = false; public bool onlinestatus = false;
} }

View File

@ -31,27 +31,22 @@ namespace OpenSim.Framework
{ {
public class GridConfig public class GridConfig
{ {
public string GridOwner = String.Empty;
public string DefaultAssetServer = String.Empty;
public string AssetSendKey = String.Empty;
public string AssetRecvKey = String.Empty;
public string DefaultUserServer = String.Empty;
public string UserSendKey = String.Empty;
public string UserRecvKey = String.Empty;
public string SimSendKey = String.Empty;
public string SimRecvKey = String.Empty;
public string DatabaseProvider = String.Empty;
public static uint DefaultHttpPort = 8001; public static uint DefaultHttpPort = 8001;
public uint HttpPort = DefaultHttpPort;
public string AllowForcefulBanlines = "TRUE"; public string AllowForcefulBanlines = "TRUE";
public string AssetRecvKey = String.Empty;
public string AssetSendKey = String.Empty;
private ConfigurationMember configMember; private ConfigurationMember configMember;
public string DatabaseProvider = String.Empty;
public string DefaultAssetServer = String.Empty;
public string DefaultUserServer = String.Empty;
public string GridOwner = String.Empty;
public uint HttpPort = DefaultHttpPort;
public string SimRecvKey = String.Empty;
public string SimSendKey = String.Empty;
public string UserRecvKey = String.Empty;
public string UserSendKey = String.Empty;
public GridConfig(string description, string filename) public GridConfig(string description, string filename)
{ {

View File

@ -32,16 +32,15 @@ namespace OpenSim.Framework
[Serializable] [Serializable]
public class GridInstantMessage public class GridInstantMessage
{ {
public byte[] binaryBucket;
public byte dialog;
public Guid fromAgentID; public Guid fromAgentID;
public Guid fromAgentSession;
public Guid toAgentID;
public Guid imSessionID;
public uint timestamp;
public string fromAgentName; public string fromAgentName;
public Guid fromAgentSession;
public bool fromGroup;
public Guid imSessionID;
public string message; public string message;
public byte dialog;
public bool fromGroup;
public byte offline; public byte offline;
public uint ParentEstateID; public uint ParentEstateID;
@ -49,8 +48,8 @@ namespace OpenSim.Framework
public sLLVector3 Position; public sLLVector3 Position;
public Guid RegionID; public Guid RegionID;
public uint timestamp;
public byte[] binaryBucket; public Guid toAgentID;
public GridInstantMessage() public GridInstantMessage()
{ {

View File

@ -74,14 +74,19 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class ChatFromViewerArgs : EventArgs, IEventArgs public class ChatFromViewerArgs : EventArgs, IEventArgs
{ {
protected string m_message;
protected ChatTypeEnum m_type;
protected int m_channel; protected int m_channel;
protected LLVector3 m_position;
protected string m_from; protected string m_from;
protected string m_message;
protected LLVector3 m_position;
protected IClientAPI m_sender;
protected IScene m_scene; protected IScene m_scene;
protected IClientAPI m_sender;
protected ChatTypeEnum m_type;
public ChatFromViewerArgs()
{
m_position = new LLVector3();
}
/// <summary> /// <summary>
/// The message sent by the user /// The message sent by the user
@ -128,6 +133,8 @@ namespace OpenSim.Framework
set { m_from = value; } set { m_from = value; }
} }
#region IEventArgs Members
/// <summary> /// <summary>
/// The client responsible for sending the message, or null. /// The client responsible for sending the message, or null.
/// </summary> /// </summary>
@ -146,18 +153,15 @@ namespace OpenSim.Framework
set { m_scene = value; } set { m_scene = value; }
} }
public ChatFromViewerArgs() #endregion
{
m_position = new LLVector3();
}
} }
public class TextureRequestArgs : EventArgs public class TextureRequestArgs : EventArgs
{ {
protected LLUUID m_requestedAssetID;
private sbyte m_discardLevel; private sbyte m_discardLevel;
private uint m_packetNumber; private uint m_packetNumber;
private float m_priority; private float m_priority;
protected LLUUID m_requestedAssetID;
public float Priority public float Priority
{ {
@ -206,6 +210,8 @@ namespace OpenSim.Framework
set { m_nowWearing = value; } set { m_nowWearing = value; }
} }
#region Nested type: Wearable
public class Wearable public class Wearable
{ {
public LLUUID ItemID = new LLUUID("00000000-0000-0000-0000-000000000000"); public LLUUID ItemID = new LLUUID("00000000-0000-0000-0000-000000000000");
@ -217,6 +223,8 @@ namespace OpenSim.Framework
Type = type; Type = type;
} }
} }
#endregion
} }
public delegate void TextureRequest(Object sender, TextureRequestArgs e); public delegate void TextureRequest(Object sender, TextureRequestArgs e);
@ -224,18 +232,18 @@ namespace OpenSim.Framework
public delegate void AvatarNowWearing(Object sender, AvatarWearingArgs e); public delegate void AvatarNowWearing(Object sender, AvatarWearingArgs e);
public delegate void ImprovedInstantMessage(IClientAPI remoteclient, public delegate void ImprovedInstantMessage(IClientAPI remoteclient,
LLUUID fromAgentID, LLUUID fromAgentSession, LLUUID toAgentID, LLUUID imSessionID, uint timestamp, LLUUID fromAgentID, LLUUID fromAgentSession, LLUUID toAgentID, LLUUID imSessionID, uint timestamp,
string fromAgentName, string message, byte dialog, bool fromGroup, byte offline, uint ParentEstateID, string fromAgentName, string message, byte dialog, bool fromGroup, byte offline, uint ParentEstateID,
LLVector3 Position, LLUUID RegionID, byte[] binaryBucket); // This shouldn't be cut down... LLVector3 Position, LLUUID RegionID, byte[] binaryBucket); // This shouldn't be cut down...
// especially if we're ever going to implement groups, presence, estate message dialogs... // especially if we're ever going to implement groups, presence, estate message dialogs...
public delegate void RezObject(IClientAPI remoteClient, LLUUID itemID, LLVector3 RayEnd, LLVector3 RayStart, public delegate void RezObject(IClientAPI remoteClient, LLUUID itemID, LLVector3 RayEnd, LLVector3 RayStart,
LLUUID RayTargetID, byte BypassRayCast, bool RayEndIsIntersection, LLUUID RayTargetID, byte BypassRayCast, bool RayEndIsIntersection,
uint EveryoneMask, uint GroupMask, uint NextOwnerMask, uint ItemFlags, uint EveryoneMask, uint GroupMask, uint NextOwnerMask, uint ItemFlags,
bool RezSelected, bool RemoveItem, LLUUID fromTaskID ); bool RezSelected, bool RemoveItem, LLUUID fromTaskID);
public delegate void RezSingleAttachmentFromInv(IClientAPI remoteClient, LLUUID itemID, uint AttachmentPt, public delegate void RezSingleAttachmentFromInv(IClientAPI remoteClient, LLUUID itemID, uint AttachmentPt,
uint ItemFlags, uint NextOwnerMask); uint ItemFlags, uint NextOwnerMask);
public delegate void ObjectAttach(IClientAPI remoteClient, uint objectLocalID, uint AttachmentPt, LLQuaternion rot); public delegate void ObjectAttach(IClientAPI remoteClient, uint objectLocalID, uint AttachmentPt, LLQuaternion rot);
@ -306,10 +314,8 @@ namespace OpenSim.Framework
public delegate void ObjectDuplicate(uint localID, LLVector3 offset, uint dupeFlags, LLUUID AgentID, LLUUID GroupID); public delegate void ObjectDuplicate(uint localID, LLVector3 offset, uint dupeFlags, LLUUID AgentID, LLUUID GroupID);
public delegate void ObjectDuplicateOnRay(uint localID, uint dupeFlags, LLUUID AgentID, LLUUID GroupID, public delegate void ObjectDuplicateOnRay(uint localID, uint dupeFlags, LLUUID AgentID, LLUUID GroupID,
LLUUID RayTargetObj, LLVector3 RayEnd, LLVector3 RayStart, LLUUID RayTargetObj, LLVector3 RayEnd, LLVector3 RayStart,
bool BypassRaycast, bool RayEndIsIntersection, bool CopyCenters, bool CopyRotates); bool BypassRaycast, bool RayEndIsIntersection, bool CopyCenters, bool CopyRotates);
public delegate void StatusChange(bool status); public delegate void StatusChange(bool status);
@ -355,7 +361,9 @@ namespace OpenSim.Framework
public delegate void UUIDNameRequest(LLUUID id, IClientAPI remote_client); public delegate void UUIDNameRequest(LLUUID id, IClientAPI remote_client);
public delegate void AddNewPrim(LLUUID ownerID, LLVector3 RayEnd, LLQuaternion rot, PrimitiveBaseShape shape, byte bypassRaycast, LLVector3 RayStart, LLUUID RayTargetID, byte RayEndIsIntersection); public delegate void AddNewPrim(
LLUUID ownerID, LLVector3 RayEnd, LLQuaternion rot, PrimitiveBaseShape shape, byte bypassRaycast, LLVector3 RayStart, LLUUID RayTargetID,
byte RayEndIsIntersection);
public delegate void RequestGodlikePowers(LLUUID AgentID, LLUUID SessionID, LLUUID token, bool GodLike, IClientAPI remote_client); public delegate void RequestGodlikePowers(LLUUID AgentID, LLUUID SessionID, LLUUID token, bool GodLike, IClientAPI remote_client);
@ -422,16 +430,16 @@ namespace OpenSim.Framework
public delegate void ConfirmXfer(IClientAPI remoteClient, ulong xferID, uint packetID); public delegate void ConfirmXfer(IClientAPI remoteClient, ulong xferID, uint packetID);
public delegate void FriendActionDelegate(IClientAPI remoteClient,LLUUID agentID,LLUUID transactionID,List<LLUUID> callingCardFolders); public delegate void FriendActionDelegate(IClientAPI remoteClient, LLUUID agentID, LLUUID transactionID, List<LLUUID> callingCardFolders);
public delegate void FriendshipTermination(IClientAPI remoteClient,LLUUID agentID, LLUUID ExID); public delegate void FriendshipTermination(IClientAPI remoteClient, LLUUID agentID, LLUUID ExID);
public delegate void PacketStats(int inPackets, int outPackets, int unAckedBytes); public delegate void PacketStats(int inPackets, int outPackets, int unAckedBytes);
public delegate void MoneyTransferRequest(LLUUID sourceID, LLUUID destID, int amount, int transactionType, string description); public delegate void MoneyTransferRequest(LLUUID sourceID, LLUUID destID, int amount, int transactionType, string description);
public delegate void ParcelBuy(LLUUID agentId, LLUUID groupId, bool final, bool groupOwned, public delegate void ParcelBuy(LLUUID agentId, LLUUID groupId, bool final, bool groupOwned,
bool removeContribution, int parcelLocalID, int parcelArea, int parcelPrice, bool authenticated); bool removeContribution, int parcelLocalID, int parcelArea, int parcelPrice, bool authenticated);
// We keep all this information for fraud purposes in the future. // We keep all this information for fraud purposes in the future.
public delegate void MoneyBalanceRequest(IClientAPI remoteClient, LLUUID agentID, LLUUID sessionID, LLUUID TransactionID); public delegate void MoneyBalanceRequest(IClientAPI remoteClient, LLUUID agentID, LLUUID sessionID, LLUUID TransactionID);
@ -443,10 +451,33 @@ namespace OpenSim.Framework
public delegate void ObjectIncludeInSearch(IClientAPI remoteClient, bool IncludeInSearch, uint localID); public delegate void ObjectIncludeInSearch(IClientAPI remoteClient, bool IncludeInSearch, uint localID);
public delegate void ScriptAnswer(IClientAPI remoteClient, LLUUID objectID, LLUUID itemID, int answer); public delegate void ScriptAnswer(IClientAPI remoteClient, LLUUID objectID, LLUUID itemID, int answer);
public delegate void RequestPayPrice(IClientAPI remoteClient, LLUUID objectID); public delegate void RequestPayPrice(IClientAPI remoteClient, LLUUID objectID);
public interface IClientAPI public interface IClientAPI
{ {
LLVector3 StartPos { get; set; }
LLUUID AgentId { get; }
LLUUID SessionId { get; }
LLUUID SecureSessionId { get; }
string FirstName { get; }
string LastName { get; }
int NextAnimationSequenceNumber { get; }
/// <summary>
/// Returns the full name of the agent/avatar represented by this client
/// </summary>
/// <param name="newPack"></param>
/// <param name="packType"></param>
string Name { get; }
uint CircuitCode { get; }
event ImprovedInstantMessage OnInstantMessage; event ImprovedInstantMessage OnInstantMessage;
event ChatFromViewer OnChatFromViewer; event ChatFromViewer OnChatFromViewer;
event TextureRequest OnRequestTexture; event TextureRequest OnRequestTexture;
@ -563,7 +594,7 @@ namespace OpenSim.Framework
event MoneyBalanceRequest OnMoneyBalanceRequest; event MoneyBalanceRequest OnMoneyBalanceRequest;
event UpdateAvatarProperties OnUpdateAvatarProperties; event UpdateAvatarProperties OnUpdateAvatarProperties;
event ParcelBuy OnParcelBuy; event ParcelBuy OnParcelBuy;
event RequestPayPrice OnRequestPayPrice ; event RequestPayPrice OnRequestPayPrice;
event ObjectIncludeInSearch OnObjectIncludeInSearch; event ObjectIncludeInSearch OnObjectIncludeInSearch;
@ -573,29 +604,6 @@ namespace OpenSim.Framework
event AgentSit OnUndo; event AgentSit OnUndo;
LLVector3 StartPos { get; set; }
LLUUID AgentId { get; }
LLUUID SessionId { get; }
LLUUID SecureSessionId { get; }
string FirstName { get; }
string LastName { get; }
int NextAnimationSequenceNumber { get; }
/// <summary>
/// Returns the full name of the agent/avatar represented by this client
/// </summary>
/// <param name="newPack"></param>
/// <param name="packType"></param>
string Name { get; }
uint CircuitCode { get; }
void OutPacket(Packet newPack, ThrottleOutPacketType packType); void OutPacket(Packet newPack, ThrottleOutPacketType packType);
void SendWearables(AvatarWearable[] wearables, int serial); void SendWearables(AvatarWearable[] wearables, int serial);
void SendAppearance(LLUUID agentID, byte[] visualParams, byte[] textureEntry); void SendAppearance(LLUUID agentID, byte[] visualParams, byte[] textureEntry);
@ -608,6 +616,7 @@ namespace OpenSim.Framework
void SendInstantMessage(LLUUID fromAgent, LLUUID fromAgentSession, string message, LLUUID toAgent, void SendInstantMessage(LLUUID fromAgent, LLUUID fromAgentSession, string message, LLUUID toAgent,
LLUUID imSessionID, string fromName, byte dialog, uint timeStamp); LLUUID imSessionID, string fromName, byte dialog, uint timeStamp);
void SendInstantMessage(LLUUID fromAgent, LLUUID fromAgentSession, string message, LLUUID toAgent, void SendInstantMessage(LLUUID fromAgent, LLUUID fromAgentSession, string message, LLUUID toAgent,
LLUUID imSessionID, string fromName, byte dialog, uint timeStamp, LLUUID imSessionID, string fromName, byte dialog, uint timeStamp,
byte[] binaryBucket); byte[] binaryBucket);
@ -646,7 +655,7 @@ namespace OpenSim.Framework
void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimitiveBaseShape primShape, void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimitiveBaseShape primShape,
LLVector3 pos, uint flags, LLUUID objectID, LLUUID ownerID, string text, byte[] color, LLVector3 pos, uint flags, LLUUID objectID, LLUUID ownerID, string text, byte[] color,
uint parentID, byte[] particleSystem, LLQuaternion rotation, byte clickAction, byte[] textureanimation, uint parentID, byte[] particleSystem, LLQuaternion rotation, byte clickAction, byte[] textureanimation,
bool attachment, uint AttachmentPoint, LLUUID AssetId); bool attachment, uint AttachmentPoint, LLUUID AssetId);
void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimitiveBaseShape primShape, void SendPrimitiveToClient(ulong regionHandle, ushort timeDilation, uint localID, PrimitiveBaseShape primShape,
LLVector3 pos, uint flags, LLUUID objectID, LLUUID ownerID, string text, byte[] color, LLVector3 pos, uint flags, LLUUID objectID, LLUUID ownerID, string text, byte[] color,
@ -683,9 +692,9 @@ namespace OpenSim.Framework
void SendXferPacket(ulong xferID, uint packet, byte[] data); void SendXferPacket(ulong xferID, uint packet, byte[] data);
void SendEconomyData(float EnergyEfficiency, int ObjectCapacity, int ObjectCount, int PriceEnergyUnit, void SendEconomyData(float EnergyEfficiency, int ObjectCapacity, int ObjectCount, int PriceEnergyUnit,
int PriceGroupCreate, int PriceObjectClaim, float PriceObjectRent, float PriceObjectScaleFactor, int PriceGroupCreate, int PriceObjectClaim, float PriceObjectRent, float PriceObjectScaleFactor,
int PriceParcelClaim, float PriceParcelClaimFactor, int PriceParcelRent, int PricePublicObjectDecay, int PriceParcelClaim, float PriceParcelClaimFactor, int PriceParcelRent, int PricePublicObjectDecay,
int PricePublicObjectDelete, int PriceRentLight, int PriceUpload, int TeleportMinPrice, float TeleportPriceExponent); int PricePublicObjectDelete, int PriceRentLight, int PriceUpload, int TeleportMinPrice, float TeleportPriceExponent);
void SendAvatarPickerReply(AvatarPickerReplyPacket Pack); void SendAvatarPickerReply(AvatarPickerReplyPacket Pack);
@ -709,6 +718,7 @@ namespace OpenSim.Framework
void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, string flAbout, void SendAvatarProperties(LLUUID avatarID, string aboutText, string bornOn, string charterMember, string flAbout,
uint flags, LLUUID flImageID, LLUUID imageID, string profileURL, LLUUID partnerID); uint flags, LLUUID flImageID, LLUUID imageID, string profileURL, LLUUID partnerID);
void SendScriptQuestion(LLUUID taskID, string taskName, string ownerName, LLUUID itemID, int question); void SendScriptQuestion(LLUUID taskID, string taskName, string ownerName, LLUUID itemID, int question);
byte[] GetThrottlesPacked(float multiplier); byte[] GetThrottlesPacked(float multiplier);
@ -734,16 +744,16 @@ namespace OpenSim.Framework
[Serializable] [Serializable]
public class ClientInfo public class ClientInfo
{ {
public byte[] usecircuit;
public EndPoint userEP;
public EndPoint proxyEP;
public sAgentCircuitData agentcircuit; public sAgentCircuitData agentcircuit;
public Dictionary<uint, uint> pendingAcks;
public Dictionary<uint, byte[]> needAck; public Dictionary<uint, byte[]> needAck;
public List<byte[]> out_packets; public List<byte[]> out_packets;
public Dictionary<uint, uint> pendingAcks;
public EndPoint proxyEP;
public uint sequence; public uint sequence;
public byte[] usecircuit;
public EndPoint userEP;
} }
} }

View File

@ -40,10 +40,15 @@ namespace OpenSim.Framework
Crashed = 2, Crashed = 2,
Starting = 3, Starting = 3,
SlaveScene = 4 SlaveScene = 4
}; } ;
public interface IScene public interface IScene
{ {
RegionInfo RegionInfo { get; }
uint NextLocalId { get; }
RegionStatus Region_Status { get; set; }
ClientManager ClientManager { get; }
event restart OnRestart; event restart OnRestart;
void AddNewClient(IClientAPI client, bool child); void AddNewClient(IClientAPI client, bool child);
@ -55,15 +60,8 @@ namespace OpenSim.Framework
string GetSimulatorVersion(); string GetSimulatorVersion();
RegionInfo RegionInfo { get; }
uint NextLocalId { get; }
bool PresenceChildStatus(LLUUID avatarID); bool PresenceChildStatus(LLUUID avatarID);
RegionStatus Region_Status { get; set; }
ClientManager ClientManager { get; }
string GetCapsPath(LLUUID agentId); string GetCapsPath(LLUUID agentId);
} }
} }

View File

@ -139,6 +139,7 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
/// <param name="friendlistowner">The agent that we're retreiving the friends Data.</param> /// <param name="friendlistowner">The agent that we're retreiving the friends Data.</param>
List<FriendListItem> GetUserFriendList(LLUUID friendlistowner); List<FriendListItem> GetUserFriendList(LLUUID friendlistowner);
/// <summary> /// <summary>
/// Attempts to move currency units between accounts (NOT RELIABLE / TRUSTWORTHY. DONT TRY RUN YOUR OWN CURRENCY EXCHANGE WITH REAL VALUES) /// Attempts to move currency units between accounts (NOT RELIABLE / TRUSTWORTHY. DONT TRY RUN YOUR OWN CURRENCY EXCHANGE WITH REAL VALUES)
/// </summary> /// </summary>

View File

@ -34,18 +34,16 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class InventoryConfig public class InventoryConfig
{ {
public string DefaultStartupMsg = String.Empty;
public string UserServerURL = String.Empty;
public string UserSendKey = String.Empty;
public string UserRecvKey = String.Empty;
public string DatabaseProvider = String.Empty;
public string DatabaseConnect = String.Empty;
public static uint DefaultHttpPort = 8004; public static uint DefaultHttpPort = 8004;
public uint HttpPort = DefaultHttpPort;
private ConfigurationMember configMember; private ConfigurationMember configMember;
public string DatabaseConnect = String.Empty;
public string DatabaseProvider = String.Empty;
public string DefaultStartupMsg = String.Empty;
public uint HttpPort = DefaultHttpPort;
public string UserRecvKey = String.Empty;
public string UserSendKey = String.Empty;
public string UserServerURL = String.Empty;
public InventoryConfig(string description, string filename) public InventoryConfig(string description, string filename)
{ {
@ -79,27 +77,27 @@ namespace OpenSim.Framework
{ {
switch (configuration_key) switch (configuration_key)
{ {
case "default_startup_message": case "default_startup_message":
DefaultStartupMsg = (string) configuration_result; DefaultStartupMsg = (string) configuration_result;
break; break;
case "default_user_server": case "default_user_server":
UserServerURL = (string) configuration_result; UserServerURL = (string) configuration_result;
break; break;
case "user_send_key": case "user_send_key":
UserSendKey = (string) configuration_result; UserSendKey = (string) configuration_result;
break; break;
case "user_recv_key": case "user_recv_key":
UserRecvKey = (string) configuration_result; UserRecvKey = (string) configuration_result;
break; break;
case "database_provider": case "database_provider":
DatabaseProvider = (string) configuration_result; DatabaseProvider = (string) configuration_result;
break; break;
case "database_connect": case "database_connect":
DatabaseConnect = (string) configuration_result; DatabaseConnect = (string) configuration_result;
break; break;
case "http_port": case "http_port":
HttpPort = (uint) configuration_result; HttpPort = (uint) configuration_result;
break; break;
} }
return true; return true;

View File

@ -34,6 +34,11 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class InventoryFolderBase public class InventoryFolderBase
{ {
/// <summary>
/// The UUID for this folder
/// </summary>
private LLUUID _id;
/// <summary> /// <summary>
/// The name of the folder (64 characters or less) /// The name of the folder (64 characters or less)
/// </summary> /// </summary>
@ -49,11 +54,6 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
private LLUUID _parentID; private LLUUID _parentID;
/// <summary>
/// The UUID for this folder
/// </summary>
private LLUUID _id;
/// <summary> /// <summary>
/// Type of items normally stored in this folder /// Type of items normally stored in this folder
/// </summary> /// </summary>
@ -66,58 +66,40 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
private ushort _version; private ushort _version;
public string Name { public string Name
get { {
return _name; get { return _name; }
} set { _name = value; }
set {
_name = value;
}
} }
public LLUUID Owner { public LLUUID Owner
get { {
return _owner; get { return _owner; }
} set { _owner = value; }
set {
_owner = value;
}
} }
public LLUUID ParentID { public LLUUID ParentID
get { {
return _parentID; get { return _parentID; }
} set { _parentID = value; }
set {
_parentID = value;
}
} }
public LLUUID ID { public LLUUID ID
get { {
return _id; get { return _id; }
} set { _id = value; }
set {
_id = value;
}
} }
public short Type { public short Type
get { {
return _type; get { return _type; }
} set { _type = value; }
set {
_type = value;
}
} }
public ushort Version { public ushort Version
get { {
return _version; get { return _version; }
} set { _version = value; }
set {
_version = value;
}
} }
} }
} }

View File

@ -34,11 +34,6 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class InventoryItemBase public class InventoryItemBase
{ {
/// <summary>
/// A UUID containing the ID for the inventory item itself
/// </summary>
private LLUUID _id;
/// <summary> /// <summary>
/// The UUID of the associated asset on the asset server /// The UUID of the associated asset on the asset server
/// </summary> /// </summary>
@ -50,19 +45,9 @@ namespace OpenSim.Framework
private int _assetType; private int _assetType;
/// <summary> /// <summary>
/// The type of inventory item. (Can be slightly different to the asset type ///
/// </summary> /// </summary>
private int _invType; private uint _basePermissions;
/// <summary>
/// The folder this item is contained in
/// </summary>
private LLUUID _folder;
/// <summary>
/// The owner of this inventory item
/// </summary>
private LLUUID _owner;
/// <summary> /// <summary>
/// The creator of this item /// The creator of this item
@ -70,150 +55,126 @@ namespace OpenSim.Framework
private LLUUID _creator; private LLUUID _creator;
/// <summary> /// <summary>
/// The name of the inventory item (must be less than 64 characters) /// A mask containing permissions for the current owner (cannot be enforced)
/// </summary> /// </summary>
private string _name; private uint _currentPermissions;
/// <summary> /// <summary>
/// The description of the inventory item (must be less than 64 characters) /// The description of the inventory item (must be less than 64 characters)
/// </summary> /// </summary>
private string _description; private string _description;
/// <summary>
///
/// </summary>
private uint _everyOnePermissions;
/// <summary>
/// The folder this item is contained in
/// </summary>
private LLUUID _folder;
/// <summary>
/// A UUID containing the ID for the inventory item itself
/// </summary>
private LLUUID _id;
/// <summary>
/// The type of inventory item. (Can be slightly different to the asset type
/// </summary>
private int _invType;
/// <summary>
/// The name of the inventory item (must be less than 64 characters)
/// </summary>
private string _name;
/// <summary> /// <summary>
/// A mask containing the permissions for the next owner (cannot be enforced) /// A mask containing the permissions for the next owner (cannot be enforced)
/// </summary> /// </summary>
private uint _nextPermissions; private uint _nextPermissions;
/// <summary> /// <summary>
/// A mask containing permissions for the current owner (cannot be enforced) /// The owner of this inventory item
/// </summary> /// </summary>
private uint _currentPermissions; private LLUUID _owner;
/// <summary> public LLUUID ID
/// {
/// </summary> get { return _id; }
private uint _basePermissions; set { _id = value; }
/// <summary>
///
/// </summary>
private uint _everyOnePermissions;
public LLUUID ID {
get {
return _id;
}
set {
_id = value;
}
} }
public int InvType { public int InvType
get { {
return _invType; get { return _invType; }
} set { _invType = value; }
set {
_invType = value;
}
} }
public LLUUID Folder { public LLUUID Folder
get { {
return _folder; get { return _folder; }
} set { _folder = value; }
set {
_folder = value;
}
} }
public LLUUID Owner { public LLUUID Owner
get { {
return _owner; get { return _owner; }
} set { _owner = value; }
set {
_owner = value;
}
} }
public LLUUID Creator { public LLUUID Creator
get { {
return _creator; get { return _creator; }
} set { _creator = value; }
set {
_creator = value;
}
} }
public string Name { public string Name
get { {
return _name; get { return _name; }
} set { _name = value; }
set {
_name = value;
}
} }
public string Description { public string Description
get { {
return _description; get { return _description; }
} set { _description = value; }
set {
_description = value;
}
} }
public uint NextPermissions { public uint NextPermissions
get { {
return _nextPermissions; get { return _nextPermissions; }
} set { _nextPermissions = value; }
set {
_nextPermissions = value;
}
} }
public uint CurrentPermissions { public uint CurrentPermissions
get { {
return _currentPermissions; get { return _currentPermissions; }
} set { _currentPermissions = value; }
set {
_currentPermissions = value;
}
} }
public uint BasePermissions { public uint BasePermissions
get { {
return _basePermissions; get { return _basePermissions; }
} set { _basePermissions = value; }
set {
_basePermissions = value;
}
} }
public uint EveryOnePermissions { public uint EveryOnePermissions
get { {
return _everyOnePermissions; get { return _everyOnePermissions; }
} set { _everyOnePermissions = value; }
set {
_everyOnePermissions = value;
}
} }
public int AssetType { public int AssetType
get { {
return _assetType; get { return _assetType; }
} set { _assetType = value; }
set {
_assetType = value;
}
} }
public LLUUID AssetID { public LLUUID AssetID
get { {
return _assetID; get { return _assetID; }
} set { _assetID = value; }
set {
_assetID = value;
}
} }
} }
} }

View File

@ -31,15 +31,15 @@ namespace OpenSim.Framework
{ {
public class JId public class JId
{ {
public string resource = String.Empty;
public string ServerIP = String.Empty; public string ServerIP = String.Empty;
public int ServerPort = 0; public int ServerPort = 0;
public string username = String.Empty; public string username = String.Empty;
public string resource = String.Empty;
public JId() public JId()
{ {
} }
public JId(string sJId) public JId(string sJId)
{ {
// user@address:port/resource // user@address:port/resource
@ -58,7 +58,6 @@ namespace OpenSim.Framework
resource = resourcesplit[1]; resource = resourcesplit[1];
username = jidsplit[0]; username = jidsplit[0];
} }
} }
} }

View File

@ -33,28 +33,20 @@ namespace OpenSim.Framework
{ {
public class LandData public class LandData
{ {
public byte[] landBitmapByteArray = new byte[512];
public string landName = "Your Parcel";
public string landDesc = String.Empty;
public LLUUID ownerID = LLUUID.Zero;
public bool isGroupOwned = false;
public LLVector3 AABBMin = new LLVector3();
public LLVector3 AABBMax = new LLVector3(); public LLVector3 AABBMax = new LLVector3();
public LLVector3 AABBMin = new LLVector3();
public int area = 0; public int area = 0;
public uint auctionID = 0; //Unemplemented. If set to 0, not being auctioned public uint auctionID = 0; //Unemplemented. If set to 0, not being auctioned
public LLUUID authBuyerID = LLUUID.Zero; //Unemplemented. Authorized Buyer's UUID public LLUUID authBuyerID = LLUUID.Zero; //Unemplemented. Authorized Buyer's UUID
public Parcel.ParcelCategory category = new Parcel.ParcelCategory(); //Unemplemented. Parcel's chosen category public Parcel.ParcelCategory category = new Parcel.ParcelCategory(); //Unemplemented. Parcel's chosen category
public int claimDate = 0; //Unemplemented public int claimDate = 0; //Unemplemented
public int claimPrice = 0; //Unemplemented public int claimPrice = 0; //Unemplemented
public LLUUID globalID = LLUUID.Zero;
public LLUUID groupID = LLUUID.Zero; //Unemplemented public LLUUID groupID = LLUUID.Zero; //Unemplemented
public int groupPrims = 0; public int groupPrims = 0;
public int otherPrims = 0; public bool isGroupOwned = false;
public int ownerPrims = 0; public byte[] landBitmapByteArray = new byte[512];
public int selectedPrims = 0; public string landDesc = String.Empty;
public int simwidePrims = 0;
public int simwideArea = 0;
public int salePrice = 0; //Unemeplemented. Parcels price.
public Parcel.ParcelStatus landStatus = Parcel.ParcelStatus.Leased;
public uint landFlags = (uint) Parcel.ParcelFlags.AllowFly | (uint) Parcel.ParcelFlags.AllowLandmark | public uint landFlags = (uint) Parcel.ParcelFlags.AllowFly | (uint) Parcel.ParcelFlags.AllowLandmark |
@ -64,21 +56,28 @@ namespace OpenSim.Framework
(uint) Parcel.ParcelFlags.SoundLocal; (uint) Parcel.ParcelFlags.SoundLocal;
public byte landingType = 0; public byte landingType = 0;
public string landName = "Your Parcel";
public Parcel.ParcelStatus landStatus = Parcel.ParcelStatus.Leased;
public int localID = 0;
public byte mediaAutoScale = 0; public byte mediaAutoScale = 0;
public LLUUID mediaID = LLUUID.Zero; public LLUUID mediaID = LLUUID.Zero;
public int localID = 0;
public LLUUID globalID = LLUUID.Zero;
public string mediaURL = String.Empty; public string mediaURL = String.Empty;
public string musicURL = String.Empty; public string musicURL = String.Empty;
public int otherPrims = 0;
public LLUUID ownerID = LLUUID.Zero;
public int ownerPrims = 0;
public List<ParcelManager.ParcelAccessEntry> parcelAccessList = new List<ParcelManager.ParcelAccessEntry>();
public float passHours = 0; public float passHours = 0;
public int passPrice = 0; public int passPrice = 0;
public int salePrice = 0; //Unemeplemented. Parcels price.
public int selectedPrims = 0;
public int simwideArea = 0;
public int simwidePrims = 0;
public LLUUID snapshotID = LLUUID.Zero; public LLUUID snapshotID = LLUUID.Zero;
public LLVector3 userLocation = new LLVector3(); public LLVector3 userLocation = new LLVector3();
public LLVector3 userLookAt = new LLVector3(); public LLVector3 userLookAt = new LLVector3();
public List<ParcelManager.ParcelAccessEntry> parcelAccessList = new List<ParcelManager.ParcelAccessEntry>();
public LandData() public LandData()
{ {
globalID = LLUUID.Random(); globalID = LLUUID.Random();

View File

@ -32,15 +32,15 @@ namespace OpenSim.Framework
{ {
public class Login public class Login
{ {
public string First = "Test";
public string Last = "User";
public LLUUID Agent; public LLUUID Agent;
public LLUUID Session;
public LLUUID SecureSession = LLUUID.Zero;
public LLUUID InventoryFolder;
public LLUUID BaseFolder; public LLUUID BaseFolder;
public uint CircuitCode;
public string CapsPath = String.Empty; public string CapsPath = String.Empty;
public uint CircuitCode;
public string First = "Test";
public LLUUID InventoryFolder;
public string Last = "User";
public LLUUID SecureSession = LLUUID.Zero;
public LLUUID Session;
public LLVector3 StartPos; public LLVector3 StartPos;
public Login() public Login()

View File

@ -32,15 +32,15 @@ namespace OpenSim.Framework
{ {
public class MapBlockData public class MapBlockData
{ {
public uint Flags;
public ushort X;
public ushort Y;
public byte Agents;
public byte Access; public byte Access;
public byte WaterHeight; public byte Agents;
public uint Flags;
public LLUUID MapImageId; public LLUUID MapImageId;
public String Name; public String Name;
public uint RegionFlags; public uint RegionFlags;
public byte WaterHeight;
public ushort X;
public ushort Y;
public MapBlockData() public MapBlockData()
{ {

View File

@ -34,25 +34,21 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class MessageServerConfig public class MessageServerConfig
{ {
public string DefaultStartupMsg = String.Empty;
public string UserServerURL = String.Empty;
public string UserSendKey = String.Empty;
public string UserRecvKey = String.Empty;
public string GridServerURL = String.Empty;
public string GridSendKey = String.Empty;
public string GridRecvKey = String.Empty;
public string MessageServerIP = String.Empty;
public string DatabaseProvider = String.Empty;
public string GridCommsProvider = String.Empty;
public static uint DefaultHttpPort = 8006; public static uint DefaultHttpPort = 8006;
public static bool DefaultHttpSSL = false; public static bool DefaultHttpSSL = false;
private ConfigurationMember configMember;
public string DatabaseProvider = String.Empty;
public string DefaultStartupMsg = String.Empty;
public string GridCommsProvider = String.Empty;
public string GridRecvKey = String.Empty;
public string GridSendKey = String.Empty;
public string GridServerURL = String.Empty;
public uint HttpPort = DefaultHttpPort; public uint HttpPort = DefaultHttpPort;
public bool HttpSSL = DefaultHttpSSL; public bool HttpSSL = DefaultHttpSSL;
public string MessageServerIP = String.Empty;
private ConfigurationMember configMember; public string UserRecvKey = String.Empty;
public string UserSendKey = String.Empty;
public string UserServerURL = String.Empty;
public MessageServerConfig(string description, string filename) public MessageServerConfig(string description, string filename)
{ {
@ -60,9 +56,9 @@ namespace OpenSim.Framework
new ConfigurationMember(filename, description, loadConfigurationOptions, handleIncomingConfiguration, true); new ConfigurationMember(filename, description, loadConfigurationOptions, handleIncomingConfiguration, true);
configMember.performConfigurationRetrieve(); configMember.performConfigurationRetrieve();
} }
public void loadConfigurationOptions() public void loadConfigurationOptions()
{ {
configMember.addConfigurationOption("default_user_server", configMember.addConfigurationOption("default_user_server",
ConfigurationOption.ConfigurationTypes.TYPE_STRING_NOT_EMPTY, ConfigurationOption.ConfigurationTypes.TYPE_STRING_NOT_EMPTY,
"Default User Server URI", "Default User Server URI",
@ -91,49 +87,47 @@ namespace OpenSim.Framework
configMember.addConfigurationOption("http_ssl", ConfigurationOption.ConfigurationTypes.TYPE_BOOLEAN, configMember.addConfigurationOption("http_ssl", ConfigurationOption.ConfigurationTypes.TYPE_BOOLEAN,
"Use SSL? true/false", DefaultHttpSSL.ToString(), false); "Use SSL? true/false", DefaultHttpSSL.ToString(), false);
configMember.addConfigurationOption("published_ip", ConfigurationOption.ConfigurationTypes.TYPE_STRING, configMember.addConfigurationOption("published_ip", ConfigurationOption.ConfigurationTypes.TYPE_STRING,
"My Published IP Address", "127.0.0.1", false); "My Published IP Address", "127.0.0.1", false);
} }
public bool handleIncomingConfiguration(string configuration_key, object configuration_result) public bool handleIncomingConfiguration(string configuration_key, object configuration_result)
{ {
switch (configuration_key) switch (configuration_key)
{ {
case "default_user_server": case "default_user_server":
UserServerURL = (string)configuration_result; UserServerURL = (string) configuration_result;
break; break;
case "user_send_key": case "user_send_key":
UserSendKey = (string)configuration_result; UserSendKey = (string) configuration_result;
break; break;
case "user_recv_key": case "user_recv_key":
UserRecvKey = (string)configuration_result; UserRecvKey = (string) configuration_result;
break; break;
case "default_grid_server": case "default_grid_server":
GridServerURL = (string)configuration_result; GridServerURL = (string) configuration_result;
break; break;
case "grid_send_key": case "grid_send_key":
GridSendKey = (string)configuration_result; GridSendKey = (string) configuration_result;
break; break;
case "grid_recv_key": case "grid_recv_key":
GridRecvKey = (string)configuration_result; GridRecvKey = (string) configuration_result;
break; break;
case "database_provider": case "database_provider":
DatabaseProvider = (string)configuration_result; DatabaseProvider = (string) configuration_result;
break; break;
case "http_port": case "http_port":
HttpPort = (uint)configuration_result; HttpPort = (uint) configuration_result;
break; break;
case "http_ssl": case "http_ssl":
HttpSSL = (bool)configuration_result; HttpSSL = (bool) configuration_result;
break; break;
case "region_comms_provider": case "region_comms_provider":
GridCommsProvider = (string)configuration_result; GridCommsProvider = (string) configuration_result;
break; break;
case "published_ip": case "published_ip":
MessageServerIP = (string)configuration_result; MessageServerIP = (string) configuration_result;
break; break;
} }
return true; return true;
} }

View File

@ -29,14 +29,14 @@ namespace OpenSim.Framework
{ {
public class NeighbourInfo public class NeighbourInfo
{ {
public NeighbourInfo()
{
}
public ulong regionhandle; public ulong regionhandle;
public uint RegionLocX; public uint RegionLocX;
public uint RegionLocY; public uint RegionLocY;
public string sim_ip; public string sim_ip;
public uint sim_port; public uint sim_port;
public NeighbourInfo()
{
}
} }
} }

View File

@ -32,23 +32,22 @@ namespace OpenSim.Framework
{ {
public class NetworkServersInfo public class NetworkServersInfo
{ {
public string AssetURL = "http://127.0.0.1:" + AssetConfig.DefaultHttpPort.ToString() + "/";
public string AssetSendKey = String.Empty;
public string GridURL = String.Empty;
public string GridSendKey = String.Empty;
public string GridRecvKey = String.Empty;
public string UserURL = String.Empty;
public string UserSendKey = String.Empty;
public string UserRecvKey = String.Empty;
public bool isSandbox;
public string InventoryURL = String.Empty;
public static readonly uint DefaultHttpListenerPort = 9000; public static readonly uint DefaultHttpListenerPort = 9000;
public uint HttpListenerPort = DefaultHttpListenerPort;
public static uint RemotingListenerPort = 8895; public static uint RemotingListenerPort = 8895;
public string AssetSendKey = String.Empty;
public string AssetURL = "http://127.0.0.1:" + AssetConfig.DefaultHttpPort.ToString() + "/";
public string GridRecvKey = String.Empty;
public string GridSendKey = String.Empty;
public string GridURL = String.Empty;
public uint HttpListenerPort = DefaultHttpListenerPort;
public string InventoryURL = String.Empty;
public bool isSandbox;
private uint? m_defaultHomeLocX;
private uint? m_defaultHomeLocY;
public string UserRecvKey = String.Empty;
public string UserSendKey = String.Empty;
public string UserURL = String.Empty;
public NetworkServersInfo() public NetworkServersInfo()
@ -61,15 +60,11 @@ namespace OpenSim.Framework
m_defaultHomeLocY = defaultHomeLocY; m_defaultHomeLocY = defaultHomeLocY;
} }
private uint? m_defaultHomeLocX;
public uint DefaultHomeLocX public uint DefaultHomeLocX
{ {
get { return m_defaultHomeLocX.Value; } get { return m_defaultHomeLocX.Value; }
} }
private uint? m_defaultHomeLocY;
public uint DefaultHomeLocY public uint DefaultHomeLocY
{ {
get { return m_defaultHomeLocY.Value; } get { return m_defaultHomeLocY.Value; }

View File

@ -31,13 +31,17 @@ using libsecondlife;
namespace OpenSim.Framework namespace OpenSim.Framework
{ {
[Serializable] [Serializable]
public class OSUUID: IComparable public class OSUUID : IComparable
{ {
public static readonly OSUUID Zero = new OSUUID();
public Guid UUID; public Guid UUID;
public OSUUID() {} public OSUUID()
{
}
/* Constructors */ /* Constructors */
public OSUUID(string s) public OSUUID(string s)
{ {
if (s == null) if (s == null)
@ -61,6 +65,21 @@ namespace OpenSim.Framework
UUID = new Guid(0, 0, 0, BitConverter.GetBytes(u)); UUID = new Guid(0, 0, 0, BitConverter.GetBytes(u));
} }
#region IComparable Members
public int CompareTo(object obj)
{
if (obj is OSUUID)
{
OSUUID ID = (OSUUID) obj;
return UUID.CompareTo(ID.UUID);
}
throw new ArgumentException("object is not a OSUUID");
}
#endregion
// out conversion // out conversion
public override string ToString() public override string ToString()
{ {
@ -82,27 +101,14 @@ namespace OpenSim.Framework
{ {
if (!(o is LLUUID)) return false; if (!(o is LLUUID)) return false;
OSUUID uuid = (OSUUID)o; OSUUID uuid = (OSUUID) o;
return UUID == uuid.UUID; return UUID == uuid.UUID;
} }
public int CompareTo(object obj)
{
if (obj is OSUUID)
{
OSUUID ID = (OSUUID)obj;
return this.UUID.CompareTo(ID.UUID);
}
throw new ArgumentException("object is not a OSUUID");
}
// Static methods // Static methods
public static OSUUID Random() public static OSUUID Random()
{ {
return new OSUUID(Guid.NewGuid()); return new OSUUID(Guid.NewGuid());
} }
public static readonly OSUUID Zero = new OSUUID();
} }
} }

View File

@ -35,18 +35,31 @@ namespace OpenSim.Framework
{ {
public sealed class PacketPool public sealed class PacketPool
{ {
static public void EncodeProxyMessage(byte[] bytes, ref int numBytes, EndPoint trueEP) private static readonly PacketPool instance = new PacketPool();
private Hashtable pool = new Hashtable();
static PacketPool()
{ {
if( numBytes > 4090 ) // max UPD size = 4096 }
public static PacketPool Instance
{
get { return instance; }
}
public static void EncodeProxyMessage(byte[] bytes, ref int numBytes, EndPoint trueEP)
{
if (numBytes > 4090) // max UPD size = 4096
{ {
throw new Exception("ERROR: No space to encode the proxy EP"); throw new Exception("ERROR: No space to encode the proxy EP");
} }
ushort port = (ushort) ((IPEndPoint) trueEP).Port; ushort port = (ushort) ((IPEndPoint) trueEP).Port;
bytes[numBytes++] = (byte)(port % 256); bytes[numBytes++] = (byte) (port % 256);
bytes[numBytes++] = (byte)(port / 256); bytes[numBytes++] = (byte) (port / 256);
foreach (byte b in ((IPEndPoint)trueEP).Address.GetAddressBytes()) foreach (byte b in ((IPEndPoint) trueEP).Address.GetAddressBytes())
{ {
bytes[numBytes++] = b; bytes[numBytes++] = b;
} }
@ -58,7 +71,7 @@ namespace OpenSim.Framework
numBytes = x; numBytes = x;
} }
static public EndPoint DecodeProxyMessage(byte[] bytes, ref int numBytes) public static EndPoint DecodeProxyMessage(byte[] bytes, ref int numBytes)
{ {
// IPv4 Only // IPv4 Only
byte[] addr = new byte[4]; byte[] addr = new byte[4];
@ -68,35 +81,19 @@ namespace OpenSim.Framework
addr[1] = bytes[--numBytes]; addr[1] = bytes[--numBytes];
addr[0] = bytes[--numBytes]; addr[0] = bytes[--numBytes];
ushort port = (ushort)(bytes[--numBytes] * 256); ushort port = (ushort) (bytes[--numBytes] * 256);
port += (ushort)bytes[--numBytes]; port += (ushort) bytes[--numBytes];
return (EndPoint) new IPEndPoint(new IPAddress(addr), (int)port); return (EndPoint) new IPEndPoint(new IPAddress(addr), (int) port);
} }
// Set up a thread-safe singleton pattern public Packet GetPacket(PacketType type)
static PacketPool()
{ {
}
static readonly PacketPool instance = new PacketPool();
public static PacketPool Instance
{
get
{
return instance;
}
}
private Hashtable pool = new Hashtable();
public Packet GetPacket(PacketType type) {
Packet packet = null; Packet packet = null;
lock(pool) lock (pool)
{ {
if(pool[type] == null || ((Stack) pool[type]).Count == 0) if (pool[type] == null || ((Stack) pool[type]).Count == 0)
{ {
// Creating a new packet if we cannot reuse an old package // Creating a new packet if we cannot reuse an old package
packet = Packet.BuildPacket(type); packet = Packet.BuildPacket(type);
@ -104,14 +101,14 @@ namespace OpenSim.Framework
else else
{ {
// Recycle old packages // Recycle old packages
packet=(Packet) ((Stack) pool[type]).Pop(); packet = (Packet) ((Stack) pool[type]).Pop();
} }
} }
return packet; return packet;
} }
// private byte[] decoded_header = new byte[10]; // private byte[] decoded_header = new byte[10];
private PacketType GetType(byte[] bytes) private PacketType GetType(byte[] bytes)
{ {
byte[] decoded_header = new byte[10 + 8]; byte[] decoded_header = new byte[10 + 8];
@ -120,7 +117,7 @@ namespace OpenSim.Framework
Buffer.BlockCopy(bytes, 0, decoded_header, 0, 10); Buffer.BlockCopy(bytes, 0, decoded_header, 0, 10);
if((bytes[0] & Helpers.MSG_ZEROCODED)!=0) if ((bytes[0] & Helpers.MSG_ZEROCODED) != 0)
{ {
Helpers.ZeroDecodeCommand(bytes, decoded_header); Helpers.ZeroDecodeCommand(bytes, decoded_header);
} }
@ -129,18 +126,18 @@ namespace OpenSim.Framework
{ {
if (decoded_header[7] == 0xFF) if (decoded_header[7] == 0xFF)
{ {
id = (ushort)((decoded_header[8] << 8) + decoded_header[9]); id = (ushort) ((decoded_header[8] << 8) + decoded_header[9]);
freq = PacketFrequency.Low; freq = PacketFrequency.Low;
} }
else else
{ {
id = (ushort)decoded_header[7]; id = (ushort) decoded_header[7];
freq = PacketFrequency.Medium; freq = PacketFrequency.Medium;
} }
} }
else else
{ {
id = (ushort)decoded_header[6]; id = (ushort) decoded_header[6];
freq = PacketFrequency.High; freq = PacketFrequency.High;
} }
@ -157,7 +154,8 @@ namespace OpenSim.Framework
return packet; return packet;
} }
public void ReturnPacket(Packet packet) { public void ReturnPacket(Packet packet)
{
return; // packet pool disabled return; // packet pool disabled
/* // Commented out to remove a compiler warning. :) /* // Commented out to remove a compiler warning. :)

View File

@ -202,7 +202,7 @@ namespace OpenSim.Framework
public void SetRadius(float radius) public void SetRadius(float radius)
{ {
Scale.X = Scale.Y = radius*2f; Scale.X = Scale.Y = radius * 2f;
} }
// TODO: void returns need to change of course // TODO: void returns need to change of course

View File

@ -33,6 +33,21 @@ namespace OpenSim.Framework
{ {
public class RegionCommsListener : IRegionCommsListener public class RegionCommsListener : IRegionCommsListener
{ {
public string debugRegionName = String.Empty;
private AcknowledgeAgentCross handlerAcknowledgeAgentCrossed = null; // OnAcknowledgeAgentCrossed;
private AcknowledgePrimCross handlerAcknowledgePrimCrossed = null; // OnAcknowledgePrimCrossed;
private AgentCrossing handlerAvatarCrossingIntoRegion = null; // OnAvatarCrossingIntoRegion;
private ChildAgentUpdate handlerChildAgentUpdate = null; // OnChildAgentUpdate;
private CloseAgentConnection handlerCloseAgentConnection = null; // OnCloseAgentConnection;
private GenericCall2 handlerExpectChildAgent = null; // OnExpectChildAgent;
private ExpectPrimDelegate handlerExpectPrim = null; // OnExpectPrim;
private ExpectUserDelegate handlerExpectUser = null; // OnExpectUser
private UpdateNeighbours handlerNeighboursUpdate = null; // OnNeighboursUpdate;
private PrimCrossing handlerPrimCrossingIntoRegion = null; // OnPrimCrossingIntoRegion;
private RegionUp handlerRegionUp = null; // OnRegionUp;
#region IRegionCommsListener Members
public event ExpectUserDelegate OnExpectUser; public event ExpectUserDelegate OnExpectUser;
public event ExpectPrimDelegate OnExpectPrim; public event ExpectPrimDelegate OnExpectPrim;
public event GenericCall2 OnExpectChildAgent; public event GenericCall2 OnExpectChildAgent;
@ -45,20 +60,7 @@ namespace OpenSim.Framework
public event RegionUp OnRegionUp; public event RegionUp OnRegionUp;
public event ChildAgentUpdate OnChildAgentUpdate; public event ChildAgentUpdate OnChildAgentUpdate;
private ExpectUserDelegate handlerExpectUser = null; // OnExpectUser #endregion
private ExpectPrimDelegate handlerExpectPrim = null; // OnExpectPrim;
private GenericCall2 handlerExpectChildAgent = null; // OnExpectChildAgent;
private AgentCrossing handlerAvatarCrossingIntoRegion = null; // OnAvatarCrossingIntoRegion;
private PrimCrossing handlerPrimCrossingIntoRegion = null; // OnPrimCrossingIntoRegion;
private UpdateNeighbours handlerNeighboursUpdate = null; // OnNeighboursUpdate;
private AcknowledgeAgentCross handlerAcknowledgeAgentCrossed = null; // OnAcknowledgeAgentCrossed;
private AcknowledgePrimCross handlerAcknowledgePrimCrossed = null; // OnAcknowledgePrimCrossed;
private CloseAgentConnection handlerCloseAgentConnection = null; // OnCloseAgentConnection;
private RegionUp handlerRegionUp = null; // OnRegionUp;
private ChildAgentUpdate handlerChildAgentUpdate = null; // OnChildAgentUpdate;
public string debugRegionName = String.Empty;
/// <summary> /// <summary>
/// ///
@ -164,7 +166,6 @@ namespace OpenSim.Framework
{ {
handlerCloseAgentConnection(regionHandle, agentID); handlerCloseAgentConnection(regionHandle, agentID);
return true; return true;
} }
return false; return false;
} }

View File

@ -37,8 +37,25 @@ namespace OpenSim.Framework
[Serializable] [Serializable]
public class SimpleRegionInfo public class SimpleRegionInfo
{ {
// private static readonly log4net.ILog m_log // private static readonly log4net.ILog m_log
// = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); // = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
protected bool Allow_Alternate_Ports;
public bool m_allow_alternate_ports;
protected string m_externalHostName;
/// <value>
/// The port by which http communication occurs with the region (most noticeably, CAPS communication)
/// </value>
protected uint m_httpPort;
protected IPEndPoint m_internalEndPoint;
protected uint? m_regionLocX;
protected uint? m_regionLocY;
protected uint m_remotingPort;
protected string m_serverURI;
public LLUUID RegionID = LLUUID.Zero;
public string RemotingAddress;
public SimpleRegionInfo() public SimpleRegionInfo()
{ {
@ -77,49 +94,24 @@ namespace OpenSim.Framework
ServerURI = ConvertFrom.ServerURI; ServerURI = ConvertFrom.ServerURI;
} }
public LLUUID RegionID = LLUUID.Zero;
protected uint m_remotingPort;
public uint RemotingPort public uint RemotingPort
{ {
get { return m_remotingPort; } get { return m_remotingPort; }
set { m_remotingPort = value; } set { m_remotingPort = value; }
} }
/// <value>
/// The port by which http communication occurs with the region (most noticeably, CAPS communication)
/// </value>
protected uint m_httpPort;
public uint HttpPort public uint HttpPort
{ {
get { return m_httpPort; } get { return m_httpPort; }
set { m_httpPort = value; } set { m_httpPort = value; }
} }
public bool m_allow_alternate_ports;
protected string m_serverURI;
public int getInternalEndPointPort()
{
return m_internalEndPoint.Port;
}
public string ServerURI public string ServerURI
{ {
get get { return m_serverURI; }
{ set { m_serverURI = value; }
return m_serverURI;
}
set
{
m_serverURI = value;
}
} }
public string RemotingAddress;
/// <value> /// <value>
/// This accessor can throw all the exceptions that Dns.GetHostAddresses can throw. /// This accessor can throw all the exceptions that Dns.GetHostAddresses can throw.
/// ///
@ -158,33 +150,24 @@ namespace OpenSim.Framework
set { m_externalHostName = value.ToString(); } set { m_externalHostName = value.ToString(); }
} }
protected string m_externalHostName;
public string ExternalHostName public string ExternalHostName
{ {
get { return m_externalHostName; } get { return m_externalHostName; }
set { m_externalHostName = value; } set { m_externalHostName = value; }
} }
protected bool Allow_Alternate_Ports;
protected IPEndPoint m_internalEndPoint;
public IPEndPoint InternalEndPoint public IPEndPoint InternalEndPoint
{ {
get { return m_internalEndPoint; } get { return m_internalEndPoint; }
set { m_internalEndPoint = value; } set { m_internalEndPoint = value; }
} }
protected uint? m_regionLocX;
public uint RegionLocX public uint RegionLocX
{ {
get { return m_regionLocX.Value; } get { return m_regionLocX.Value; }
set { m_regionLocX = value; } set { m_regionLocX = value; }
} }
protected uint? m_regionLocY;
public uint RegionLocY public uint RegionLocY
{ {
get { return m_regionLocY.Value; } get { return m_regionLocY.Value; }
@ -193,49 +176,39 @@ namespace OpenSim.Framework
public ulong RegionHandle public ulong RegionHandle
{ {
get { return Util.UIntsToLong((RegionLocX * (uint)Constants.RegionSize), (RegionLocY * (uint)Constants.RegionSize)); } get { return Util.UIntsToLong((RegionLocX * (uint) Constants.RegionSize), (RegionLocY * (uint) Constants.RegionSize)); }
}
public int getInternalEndPointPort()
{
return m_internalEndPoint.Port;
} }
} }
public class RegionInfo : SimpleRegionInfo public class RegionInfo : SimpleRegionInfo
{ {
// private static readonly log4net.ILog m_log // private static readonly log4net.ILog m_log
// = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); // = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
public string RegionName = String.Empty;
public bool commFailTF = false;
public ConfigurationMember configMember;
public LLUUID CovenantID = LLUUID.Zero;
public string DataStore = String.Empty; public string DataStore = String.Empty;
public bool isSandbox = false; public bool isSandbox = false;
public bool commFailTF = false; private EstateSettings m_estateSettings;
// public bool m_allow_alternate_ports; // public bool m_allow_alternate_ports;
public LLUUID MasterAvatarAssignedUUID = LLUUID.Zero; public LLUUID MasterAvatarAssignedUUID = LLUUID.Zero;
public LLUUID CovenantID = LLUUID.Zero;
public string MasterAvatarFirstName = String.Empty; public string MasterAvatarFirstName = String.Empty;
public string MasterAvatarLastName = String.Empty; public string MasterAvatarLastName = String.Empty;
public string MasterAvatarSandboxPassword = String.Empty; public string MasterAvatarSandboxPassword = String.Empty;
public string regionSecret = LLUUID.Random().ToString();
public string proxyUrl = "";
public LLUUID originRegionID = LLUUID.Zero; public LLUUID originRegionID = LLUUID.Zero;
public string proxyUrl = "";
public string RegionName = String.Empty;
public string regionSecret = LLUUID.Random().ToString();
// Apparently, we're applying the same estatesettings regardless of whether it's local or remote. // Apparently, we're applying the same estatesettings regardless of whether it's local or remote.
private EstateSettings m_estateSettings;
public EstateSettings EstateSettings
{
get
{
if (m_estateSettings == null)
{
m_estateSettings = new EstateSettings();
}
return m_estateSettings;
}
}
public ConfigurationMember configMember;
public RegionInfo(string description, string filename, bool skipConsoleConfig) public RegionInfo(string description, string filename, bool skipConsoleConfig)
{ {
@ -289,12 +262,24 @@ namespace OpenSim.Framework
ServerURI = ConvertFrom.ServerURI; ServerURI = ConvertFrom.ServerURI;
} }
public EstateSettings EstateSettings
{
get
{
if (m_estateSettings == null)
{
m_estateSettings = new EstateSettings();
}
return m_estateSettings;
}
}
public void SetEndPoint(string ipaddr, int port) public void SetEndPoint(string ipaddr, int port)
{ {
IPAddress tmpIP = IPAddress.Parse(ipaddr); IPAddress tmpIP = IPAddress.Parse(ipaddr);
IPEndPoint tmpEPE= new IPEndPoint(tmpIP, port); IPEndPoint tmpEPE = new IPEndPoint(tmpIP, port);
m_internalEndPoint = tmpEPE; m_internalEndPoint = tmpEPE;
} }
//not in use, should swap to nini though. //not in use, should swap to nini though.
@ -351,7 +336,8 @@ namespace OpenSim.Framework
return true; return true;
} }
public void SaveRegionToFile(string description, string filename) { public void SaveRegionToFile(string description, string filename)
{
configMember = new ConfigurationMember(filename, description, loadConfigurationOptionsFromMe, configMember = new ConfigurationMember(filename, description, loadConfigurationOptionsFromMe,
ignoreIncomingConfiguration, false); ignoreIncomingConfiguration, false);
configMember.performConfigurationRetrieve(); configMember.performConfigurationRetrieve();
@ -461,7 +447,7 @@ namespace OpenSim.Framework
{ {
case "sim_UUID": case "sim_UUID":
RegionID = (LLUUID) configuration_result; RegionID = (LLUUID) configuration_result;
originRegionID = (LLUUID)configuration_result; originRegionID = (LLUUID) configuration_result;
break; break;
case "sim_name": case "sim_name":
RegionName = (string) configuration_result; RegionName = (string) configuration_result;
@ -480,10 +466,10 @@ namespace OpenSim.Framework
m_internalEndPoint = new IPEndPoint(address, 0); m_internalEndPoint = new IPEndPoint(address, 0);
break; break;
case "internal_ip_port": case "internal_ip_port":
m_internalEndPoint.Port = (int)configuration_result; m_internalEndPoint.Port = (int) configuration_result;
break; break;
case "allow_alternate_ports": case "allow_alternate_ports":
m_allow_alternate_ports = (bool)configuration_result; m_allow_alternate_ports = (bool) configuration_result;
break; break;
case "external_host_name": case "external_host_name":
if ((string) configuration_result != "SYSTEMIP") if ((string) configuration_result != "SYSTEMIP")

View File

@ -32,10 +32,11 @@ namespace OpenSim.Framework
[Serializable] [Serializable]
public class RegionUpData public class RegionUpData
{ {
private uint m_X = 0;
private uint m_Y = 0;
private string m_ipaddr = ""; private string m_ipaddr = "";
private int m_port = 0; private int m_port = 0;
private uint m_X = 0;
private uint m_Y = 0;
public RegionUpData(uint X, uint Y, string ipaddr, int port) public RegionUpData(uint X, uint Y, string ipaddr, int port)
{ {
m_X = X; m_X = X;
@ -48,14 +49,17 @@ namespace OpenSim.Framework
{ {
get { return m_X; } get { return m_X; }
} }
public uint Y public uint Y
{ {
get { return m_Y; } get { return m_Y; }
} }
public string IPADDR public string IPADDR
{ {
get { return m_ipaddr; } get { return m_ipaddr; }
} }
public int PORT public int PORT
{ {
get { return m_port; } get { return m_port; }

View File

@ -108,7 +108,7 @@ namespace OpenSim.Framework
byte[] bytes = new byte[64]; byte[] bytes = new byte[64];
RNG.GetBytes(bytes); RNG.GetBytes(bytes);
StringBuilder sb = new StringBuilder(bytes.Length*2); StringBuilder sb = new StringBuilder(bytes.Length * 2);
foreach (byte b in bytes) foreach (byte b in bytes)
{ {
sb.AppendFormat("{0:x2}", b); sb.AppendFormat("{0:x2}", b);

View File

@ -39,16 +39,20 @@ namespace OpenSim.Framework
[XmlRoot(ElementName = "inventory", IsNullable = true)] [XmlRoot(ElementName = "inventory", IsNullable = true)]
public class SerializableInventory public class SerializableInventory
{ {
[XmlElement(ElementName = "folder", IsNullable = true)] public SerializableFolder root;
#region Nested type: SerializableFolder
[XmlRoot(ElementName = "folder", IsNullable = true)] [XmlRoot(ElementName = "folder", IsNullable = true)]
public class SerializableFolder : InventoryFolderBase public class SerializableFolder : InventoryFolderBase
{ {
[XmlArray(ElementName = "folders", IsNullable = true)] [XmlArrayItem(ElementName = "folder", IsNullable = true, Type = typeof (SerializableFolder))] public
ArrayList SubFolders;
[XmlArray(ElementName = "items", IsNullable = true)] [XmlArrayItem(ElementName = "item", IsNullable = true, Type = typeof (InventoryItemBase))] public ArrayList [XmlArray(ElementName = "items", IsNullable = true)] [XmlArrayItem(ElementName = "item", IsNullable = true, Type = typeof (InventoryItemBase))] public ArrayList
Items; Items;
[XmlArray(ElementName = "folders", IsNullable = true)] [XmlArrayItem(ElementName = "folder", IsNullable = true, Type = typeof (SerializableFolder))] public
ArrayList SubFolders;
} }
[XmlElement(ElementName = "folder", IsNullable = true)] public SerializableFolder root; #endregion
} }
} }

View File

@ -35,6 +35,28 @@ namespace OpenSim.Framework
[Serializable] [Serializable]
public class SearializableRegionInfo public class SearializableRegionInfo
{ {
public bool m_allow_alternate_ports;
protected string m_externalHostName;
/// <value>
/// The port by which http communication occurs with the region (most noticeably, CAPS communication)
///
/// FIXME: Defaulting to 9000 temporarily (on the basis that this is the http port most region
/// servers are running) until the revision in which this change is made propogates around grids.
/// </value>
protected uint m_httpPort = 9000;
protected IPEndPoint m_internalEndPoint;
protected Guid m_originRegionID = LLUUID.Zero.UUID;
protected string m_proxyUrl;
protected uint? m_regionLocX;
protected uint? m_regionLocY;
protected string m_regionName;
public uint m_remotingPort;
protected string m_serverURI;
public Guid RegionID = LLUUID.Zero.UUID;
public string RemotingAddress;
/// <summary> /// <summary>
/// This is a serializable version of RegionInfo /// This is a serializable version of RegionInfo
/// </summary> /// </summary>
@ -77,32 +99,18 @@ namespace OpenSim.Framework
m_internalEndPoint = new IPEndPoint(IPAddress.Parse("0.0.0.0"), (int) port); m_internalEndPoint = new IPEndPoint(IPAddress.Parse("0.0.0.0"), (int) port);
} }
public Guid RegionID = LLUUID.Zero.UUID;
public uint m_remotingPort;
public uint RemotingPort public uint RemotingPort
{ {
get { return m_remotingPort; } get { return m_remotingPort; }
set { m_remotingPort = value; } set { m_remotingPort = value; }
} }
/// <value>
/// The port by which http communication occurs with the region (most noticeably, CAPS communication)
///
/// FIXME: Defaulting to 9000 temporarily (on the basis that this is the http port most region
/// servers are running) until the revision in which this change is made propogates around grids.
/// </value>
protected uint m_httpPort = 9000;
public uint HttpPort public uint HttpPort
{ {
get { return m_httpPort; } get { return m_httpPort; }
set { m_httpPort = value; } set { m_httpPort = value; }
} }
public bool m_allow_alternate_ports;
public string RemotingAddress;
public IPEndPoint ExternalEndPoint public IPEndPoint ExternalEndPoint
{ {
get get
@ -138,32 +146,24 @@ namespace OpenSim.Framework
set { m_externalHostName = value.ToString(); } set { m_externalHostName = value.ToString(); }
} }
protected string m_externalHostName;
public string ExternalHostName public string ExternalHostName
{ {
get { return m_externalHostName; } get { return m_externalHostName; }
set { m_externalHostName = value; } set { m_externalHostName = value; }
} }
protected IPEndPoint m_internalEndPoint;
public IPEndPoint InternalEndPoint public IPEndPoint InternalEndPoint
{ {
get { return m_internalEndPoint; } get { return m_internalEndPoint; }
set { m_internalEndPoint = value; } set { m_internalEndPoint = value; }
} }
protected uint? m_regionLocX;
public uint RegionLocX public uint RegionLocX
{ {
get { return m_regionLocX.Value; } get { return m_regionLocX.Value; }
set { m_regionLocX = value; } set { m_regionLocX = value; }
} }
protected uint? m_regionLocY;
public uint RegionLocY public uint RegionLocY
{ {
get { return m_regionLocY.Value; } get { return m_regionLocY.Value; }
@ -172,59 +172,31 @@ namespace OpenSim.Framework
public ulong RegionHandle public ulong RegionHandle
{ {
get { return Util.UIntsToLong((RegionLocX * (uint)Constants.RegionSize), (RegionLocY * (uint)Constants.RegionSize)); } get { return Util.UIntsToLong((RegionLocX * (uint) Constants.RegionSize), (RegionLocY * (uint) Constants.RegionSize)); }
} }
protected string m_proxyUrl;
public string ProxyUrl public string ProxyUrl
{ {
get get { return m_proxyUrl; }
{ set { m_proxyUrl = value; }
return m_proxyUrl;
}
set
{
m_proxyUrl = value;
}
} }
protected Guid m_originRegionID = LLUUID.Zero.UUID;
public LLUUID OriginRegionID public LLUUID OriginRegionID
{ {
get get { return new LLUUID(m_originRegionID); }
{ set { m_originRegionID = value.UUID; }
return new LLUUID(m_originRegionID);
}
set
{
m_originRegionID = value.UUID;
}
} }
protected string m_regionName;
public string RegionName public string RegionName
{ {
get get { return m_regionName; }
{ set { m_regionName = value; }
return m_regionName;
}
set
{
m_regionName = value;
}
} }
protected string m_serverURI;
public string ServerURI public string ServerURI
{ {
get get { return m_serverURI; }
{ set { m_serverURI = value; }
return m_serverURI;
}
set
{
m_serverURI = value;
}
} }
} }
} }

View File

@ -42,11 +42,30 @@ namespace OpenSim.Framework
/// This class is not thread safe. Callers must synchronize on Dictionary methods. /// This class is not thread safe. Callers must synchronize on Dictionary methods.
/// </summary> /// </summary>
public class TaskInventoryDictionary : Dictionary<LLUUID, TaskInventoryItem>, public class TaskInventoryDictionary : Dictionary<LLUUID, TaskInventoryItem>,
ICloneable, IXmlSerializable ICloneable, IXmlSerializable
{ {
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private static XmlSerializer tiiSerializer = new XmlSerializer(typeof(TaskInventoryItem)); private static XmlSerializer tiiSerializer = new XmlSerializer(typeof (TaskInventoryItem));
#region ICloneable Members
public Object Clone()
{
TaskInventoryDictionary clone = new TaskInventoryDictionary();
lock (this)
{
foreach (LLUUID uuid in Keys)
{
clone.Add(uuid, (TaskInventoryItem) this[uuid].Clone());
}
}
return clone;
}
#endregion
// The alternative of simply serializing the list doesn't appear to work on mono, since // The alternative of simply serializing the list doesn't appear to work on mono, since
// we get a // we get a
@ -60,6 +79,9 @@ namespace OpenSim.Framework
// = new XmlSerializer(typeof(Dictionary<LLUUID, TaskInventoryItem>.ValueCollection)); // = new XmlSerializer(typeof(Dictionary<LLUUID, TaskInventoryItem>.ValueCollection));
// see IXmlSerializable // see IXmlSerializable
#region IXmlSerializable Members
public XmlSchema GetSchema() public XmlSchema GetSchema()
{ {
return null; return null;
@ -75,7 +97,7 @@ namespace OpenSim.Framework
reader.Read(); reader.Read();
while (tiiSerializer.CanDeserialize(reader)) while (tiiSerializer.CanDeserialize(reader))
{ {
TaskInventoryItem item = (TaskInventoryItem)tiiSerializer.Deserialize(reader); TaskInventoryItem item = (TaskInventoryItem) tiiSerializer.Deserialize(reader);
Add(item.ItemID, item); Add(item.ItemID, item);
m_log.DebugFormat("[TASK INVENTORY]: Instanted prim item {0}, {1} from xml", item.Name, item.ItemID); m_log.DebugFormat("[TASK INVENTORY]: Instanted prim item {0}, {1} from xml", item.Name, item.ItemID);
@ -109,21 +131,9 @@ namespace OpenSim.Framework
//tiiSerializer.Serialize(writer, Values); //tiiSerializer.Serialize(writer, Values);
} }
#endregion
// see ICloneable // see ICloneable
public Object Clone()
{
TaskInventoryDictionary clone = new TaskInventoryDictionary();
lock (this)
{
foreach (LLUUID uuid in Keys)
{
clone.Add(uuid, (TaskInventoryItem)this[uuid].Clone());
}
}
return clone;
}
} }
/// <summary> /// <summary>
@ -140,84 +150,93 @@ namespace OpenSim.Framework
/// Inventory types /// Inventory types
/// </summary> /// </summary>
public static string[] InvTypes = new string[] public static string[] InvTypes = new string[]
{ {
"texture", "texture",
"sound", "sound",
"calling_card", "calling_card",
"landmark", "landmark",
String.Empty, String.Empty,
String.Empty, String.Empty,
"object", "object",
"notecard", "notecard",
String.Empty, String.Empty,
String.Empty, String.Empty,
"lsl_text", "lsl_text",
String.Empty, String.Empty,
String.Empty, String.Empty,
"bodypart", "bodypart",
String.Empty, String.Empty,
"snapshot", "snapshot",
String.Empty, String.Empty,
String.Empty, String.Empty,
"wearable", "wearable",
"animation", "animation",
"gesture" "gesture"
};
};
/// <summary> /// <summary>
/// Asset types /// Asset types
/// </summary> /// </summary>
public static string[] Types = new string[] public static string[] Types = new string[]
{ {
"texture", "texture",
"sound", "sound",
"callcard", "callcard",
"landmark", "landmark",
"clothing", // Deprecated "clothing", // Deprecated
"clothing", "clothing",
"object", "object",
"notecard", "notecard",
"category", "category",
"root", "root",
"lsltext", "lsltext",
"lslbyte", "lslbyte",
"txtr_tga", "txtr_tga",
"bodypart", "bodypart",
"trash", "trash",
"snapshot", "snapshot",
"lstndfnd", "lstndfnd",
"snd_wav", "snd_wav",
"img_tga", "img_tga",
"jpeg", "jpeg",
"animatn", "animatn",
"gesture" "gesture"
}; };
public LLUUID ItemID = LLUUID.Zero;
public LLUUID ParentID = LLUUID.Zero; //parent folder id
public uint BaseMask = FULL_MASK_PERMISSIONS_GENERAL;
public uint OwnerMask = FULL_MASK_PERMISSIONS_GENERAL;
public uint GroupMask = FULL_MASK_PERMISSIONS_GENERAL;
public uint EveryoneMask = FULL_MASK_PERMISSIONS_GENERAL;
public uint NextOwnerMask = FULL_MASK_PERMISSIONS_GENERAL;
public LLUUID CreatorID = LLUUID.Zero;
public LLUUID OwnerID = LLUUID.Zero;
public LLUUID LastOwnerID = LLUUID.Zero;
public LLUUID GroupID = LLUUID.Zero;
public LLUUID AssetID = LLUUID.Zero; public LLUUID AssetID = LLUUID.Zero;
public int Type = 0;
public int InvType = 0; public uint BaseMask = FULL_MASK_PERMISSIONS_GENERAL;
public uint Flags = 0;
public string Name = String.Empty;
public string Description = String.Empty;
public uint CreationDate = 0; public uint CreationDate = 0;
public LLUUID CreatorID = LLUUID.Zero;
public string Description = String.Empty;
public uint EveryoneMask = FULL_MASK_PERMISSIONS_GENERAL;
public uint Flags = 0;
public LLUUID GroupID = LLUUID.Zero;
public uint GroupMask = FULL_MASK_PERMISSIONS_GENERAL;
public int InvType = 0;
public LLUUID ItemID = LLUUID.Zero;
public LLUUID LastOwnerID = LLUUID.Zero;
public string Name = String.Empty;
public uint NextOwnerMask = FULL_MASK_PERMISSIONS_GENERAL;
public LLUUID OwnerID = LLUUID.Zero;
public uint OwnerMask = FULL_MASK_PERMISSIONS_GENERAL;
public LLUUID ParentID = LLUUID.Zero; //parent folder id
public LLUUID ParentPartID = LLUUID.Zero;
public LLUUID PermsGranter; public LLUUID PermsGranter;
public int PermsMask; public int PermsMask;
public int Type = 0;
public LLUUID ParentPartID = LLUUID.Zero; // See ICloneable
#region ICloneable Members
public Object Clone()
{
return MemberwiseClone();
}
#endregion
/// <summary> /// <summary>
/// Reset the LLUUIDs for this item. /// Reset the LLUUIDs for this item.
@ -228,11 +247,5 @@ namespace OpenSim.Framework
ItemID = LLUUID.Random(); ItemID = LLUUID.Random();
ParentPartID = partID; ParentPartID = partID;
} }
// See ICloneable
public Object Clone()
{
return MemberwiseClone();
}
} }
} }

View File

@ -34,9 +34,9 @@ namespace OpenSim.Framework
{ {
public static class ThreadTracker public static class ThreadTracker
{ {
private static readonly long ThreadTimeout = 30 * 10000000;
public static List<ThreadTrackerItem> m_Threads; public static List<ThreadTrackerItem> m_Threads;
public static Thread ThreadTrackerThread; public static Thread ThreadTrackerThread;
private static readonly long ThreadTimeout = 30 * 10000000;
static ThreadTracker() static ThreadTracker()
{ {
@ -123,10 +123,14 @@ namespace OpenSim.Framework
return threads; return threads;
} }
#region Nested type: ThreadTrackerItem
public class ThreadTrackerItem public class ThreadTrackerItem
{ {
public Thread Thread;
public long LastSeenActive; public long LastSeenActive;
public Thread Thread;
} }
#endregion
} }
} }

View File

@ -26,8 +26,6 @@
*/ */
using System; using System;
using System.Collections.Generic;
using System.Text;
namespace OpenSim.Framework namespace OpenSim.Framework
{ {
@ -38,35 +36,39 @@ namespace OpenSim.Framework
[Serializable] [Serializable]
public class UndoStack<T> public class UndoStack<T>
{ {
private int m_new = 1; private int m_new = 1;
private int m_old = 0; private int m_old = 0;
private T[] m_Undos; private T[] m_Undos;
public bool IsFull
{
get
{
return m_new == m_old;
}
}
public int Capacity
{
get
{
return m_Undos.Length - 1;
}
}
public UndoStack(int capacity) public UndoStack(int capacity)
{ {
m_Undos = new T[capacity + 1]; m_Undos = new T[capacity + 1];
} }
public void Push(T item) public bool IsFull
{
get { return m_new == m_old; }
}
public int Capacity
{
get { return m_Undos.Length - 1; }
}
public int Count
{
get
{
int count = m_new - m_old - 1;
if (count < 0)
count += m_Undos.Length;
return count;
}
}
public void Push(T item)
{ {
if (IsFull) if (IsFull)
{ {
@ -93,17 +95,6 @@ namespace OpenSim.Framework
throw new InvalidOperationException("Cannot pop from emtpy stack"); throw new InvalidOperationException("Cannot pop from emtpy stack");
} }
public int Count
{
get
{
int count = m_new - m_old - 1;
if (count < 0)
count += m_Undos.Length;
return count;
}
}
public T Peek() public T Peek()
{ {
@ -123,6 +114,5 @@ namespace OpenSim.Framework
m_old = 0; m_old = 0;
} }
} }
} }
} }

View File

@ -35,42 +35,35 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class UserAgentData public class UserAgentData
{ {
/// <summary>
/// The UUID of the users avatar (not the agent!)
/// </summary>
private LLUUID UUID;
/// <summary> /// <summary>
/// The IP address of the user /// The IP address of the user
/// </summary> /// </summary>
private string agentIP = String.Empty; private string agentIP = String.Empty;
/// <summary>
/// The port of the user
/// </summary>
private uint agentPort;
/// <summary> /// <summary>
/// Is the user online? /// Is the user online?
/// </summary> /// </summary>
private bool agentOnline; private bool agentOnline;
/// <summary> /// <summary>
/// The session ID for the user (also the agent ID) /// The port of the user
/// </summary> /// </summary>
private LLUUID sessionID; private uint agentPort;
/// <summary> /// <summary>
/// The "secure" session ID for the user /// Region handle of the current region the user is in
/// </summary> /// </summary>
/// <remarks>Not very secure. Dont rely on it for anything more than Linden Lab does.</remarks> private ulong currentHandle;
private LLUUID secureSessionID;
/// <summary> /// <summary>
/// The region the user logged into initially /// The position of the user within the region
/// </summary> /// </summary>
private LLUUID regionID; private LLVector3 currentPos;
/// <summary>
/// Current region the user is logged into
/// </summary>
private LLUUID currentRegion;
/// <summary> /// <summary>
/// A unix timestamp from when the user logged in /// A unix timestamp from when the user logged in
@ -83,137 +76,112 @@ namespace OpenSim.Framework
private int logoutTime; private int logoutTime;
/// <summary> /// <summary>
/// Current region the user is logged into /// The region the user logged into initially
/// </summary> /// </summary>
private LLUUID currentRegion; private LLUUID regionID;
/// <summary> /// <summary>
/// Region handle of the current region the user is in /// The "secure" session ID for the user
/// </summary> /// </summary>
private ulong currentHandle; /// <remarks>Not very secure. Dont rely on it for anything more than Linden Lab does.</remarks>
private LLUUID secureSessionID;
/// <summary> /// <summary>
/// The position of the user within the region /// The session ID for the user (also the agent ID)
/// </summary> /// </summary>
private LLVector3 currentPos; private LLUUID sessionID;
public LLUUID ProfileID { /// <summary>
get { /// The UUID of the users avatar (not the agent!)
return UUID; /// </summary>
} private LLUUID UUID;
set {
UUID = value; public LLUUID ProfileID
} {
get { return UUID; }
set { UUID = value; }
} }
public string AgentIP { public string AgentIP
get { {
return agentIP; get { return agentIP; }
} set { agentIP = value; }
set {
agentIP = value;
}
} }
public uint AgentPort { public uint AgentPort
get { {
return agentPort; get { return agentPort; }
} set { agentPort = value; }
set {
agentPort = value;
}
} }
public bool AgentOnline { public bool AgentOnline
get { {
return agentOnline; get { return agentOnline; }
} set { agentOnline = value; }
set {
agentOnline = value;
}
} }
public LLUUID SessionID { public LLUUID SessionID
get { {
return sessionID; get { return sessionID; }
} set { sessionID = value; }
set {
sessionID = value;
}
} }
public LLUUID SecureSessionID { public LLUUID SecureSessionID
get { {
return secureSessionID; get { return secureSessionID; }
} set { secureSessionID = value; }
set {
secureSessionID = value;
}
} }
public LLUUID InitialRegion { public LLUUID InitialRegion
get { {
return regionID; get { return regionID; }
} set { regionID = value; }
set {
regionID = value;
}
} }
public int LoginTime { public int LoginTime
get { {
return loginTime; get { return loginTime; }
} set { loginTime = value; }
set {
loginTime = value;
}
} }
public int LogoutTime { public int LogoutTime
get { {
return logoutTime; get { return logoutTime; }
} set { logoutTime = value; }
set {
logoutTime = value;
}
} }
public LLUUID Region { public LLUUID Region
get { {
return currentRegion; get { return currentRegion; }
} set { currentRegion = value; }
set {
currentRegion = value;
}
} }
public ulong Handle { public ulong Handle
get { {
return currentHandle; get { return currentHandle; }
} set { currentHandle = value; }
set {
currentHandle = value;
}
} }
public LLVector3 Position { public LLVector3 Position
get { {
return currentPos; get { return currentPos; }
} set { currentPos = value; }
set {
currentPos = value;
}
} }
public float PositionX { public float PositionX
{
get { return currentPos.X; } get { return currentPos.X; }
set { currentPos.X = value; } set { currentPos.X = value; }
} }
public float PositionY {
public float PositionY
{
get { return currentPos.Y; } get { return currentPos.Y; }
set { currentPos.Y = value; } set { currentPos.Y = value; }
} }
public float PositionZ {
public float PositionZ
{
get { return currentPos.Z; } get { return currentPos.Z; }
set { currentPos.Z = value; } set { currentPos.Z = value; }
} }

View File

@ -34,28 +34,24 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
public class UserConfig public class UserConfig
{ {
public string DefaultStartupMsg = String.Empty;
public string GridServerURL = String.Empty;
public string GridSendKey = String.Empty;
public string GridRecvKey = String.Empty;
public string InventoryUrl = String.Empty;
public string DatabaseProvider = String.Empty;
public static uint DefaultHttpPort = 8002; public static uint DefaultHttpPort = 8002;
public static bool DefaultHttpSSL = false; public static bool DefaultHttpSSL = false;
public uint HttpPort = DefaultHttpPort; private ConfigurationMember configMember;
public bool HttpSSL = DefaultHttpSSL; public string DatabaseProvider = String.Empty;
public string DefaultStartupMsg = String.Empty;
public uint DefaultX = 1000; public uint DefaultX = 1000;
public uint DefaultY = 1000; public uint DefaultY = 1000;
public string GridRecvKey = String.Empty;
private ConfigurationMember configMember; public string GridSendKey = String.Empty;
public string GridServerURL = String.Empty;
public uint HttpPort = DefaultHttpPort;
public bool HttpSSL = DefaultHttpSSL;
public string InventoryUrl = String.Empty;
public UserConfig(string description, string filename) public UserConfig(string description, string filename)
{ {
configMember = configMember =
new ConfigurationMember(filename, description, loadConfigurationOptions, handleIncomingConfiguration,true); new ConfigurationMember(filename, description, loadConfigurationOptions, handleIncomingConfiguration, true);
configMember.performConfigurationRetrieve(); configMember.performConfigurationRetrieve();
} }

View File

@ -36,23 +36,42 @@ namespace OpenSim.Framework
public class UserProfileData public class UserProfileData
{ {
/// <summary> /// <summary>
/// The ID value for this user /// A UNIX Timestamp (seconds since epoch) for the users creation
/// </summary> /// </summary>
private LLUUID _id; private int _created;
/// <summary> /// <summary>
/// The last used Web_login_key /// The users last registered agent (filled in on the user server)
/// </summary> /// </summary>
private LLUUID _webLoginKey; private UserAgentData _currentAgent;
/// <summary> /// <summary>
/// The first component of a users account name /// The first component of a users account name
/// </summary> /// </summary>
private string _firstname; private string _firstname;
/// <summary> /// <summary>
/// The second component of a users account name /// The coordinates inside the region of the home location
/// </summary> /// </summary>
private string _surname; private LLVector3 _homeLocation;
/// <summary>
/// Where the user will be looking when they rez.
/// </summary>
private LLVector3 _homeLookAt;
private uint _homeRegionX;
private uint _homeRegionY;
/// <summary>
/// The ID value for this user
/// </summary>
private LLUUID _id;
/// <summary>
/// A UNIX Timestamp for the users last login date / time
/// </summary>
private int _lastLogin;
/// <summary> /// <summary>
/// A salted hash containing the users password, in the format md5(md5(password) + ":" + salt) /// A salted hash containing the users password, in the format md5(md5(password) + ":" + salt)
@ -65,40 +84,10 @@ namespace OpenSim.Framework
/// </summary> /// </summary>
private string _passwordSalt; private string _passwordSalt;
private uint _homeRegionX;
private uint _homeRegionY;
/// <summary> /// <summary>
/// The coordinates inside the region of the home location /// The about text listed in a users profile.
/// </summary> /// </summary>
private LLVector3 _homeLocation; private string _profileAboutText = String.Empty;
/// <summary>
/// Where the user will be looking when they rez.
/// </summary>
private LLVector3 _homeLookAt;
/// <summary>
/// A UNIX Timestamp (seconds since epoch) for the users creation
/// </summary>
private int _created;
/// <summary>
/// A UNIX Timestamp for the users last login date / time
/// </summary>
private int _lastLogin;
private LLUUID _rootInventoryFolderID;
/// <summary>
/// A URI to the users inventory server, used for foreigners and large grids
/// </summary>
private string _userInventoryURI = String.Empty;
/// <summary>
/// A URI to the users asset server, used for foreigners and large grids.
/// </summary>
private string _userAssetURI = String.Empty;
/// <summary> /// <summary>
/// A uint mask containing the "I can do" fields of the users profile /// A uint mask containing the "I can do" fields of the users profile
@ -106,14 +95,9 @@ namespace OpenSim.Framework
private uint _profileCanDoMask; private uint _profileCanDoMask;
/// <summary> /// <summary>
/// A uint mask containing the "I want to do" part of the users profile /// The profile image for the users first life tab
/// </summary> /// </summary>
private uint _profileWantDoMask; // Profile window "I want to" mask private LLUUID _profileFirstImage;
/// <summary>
/// The about text listed in a users profile.
/// </summary>
private string _profileAboutText = String.Empty;
/// <summary> /// <summary>
/// The first life about text listed in a users profile /// The first life about text listed in a users profile
@ -126,21 +110,38 @@ namespace OpenSim.Framework
private LLUUID _profileImage; private LLUUID _profileImage;
/// <summary> /// <summary>
/// The profile image for the users first life tab /// A uint mask containing the "I want to do" part of the users profile
/// </summary> /// </summary>
private LLUUID _profileFirstImage; private uint _profileWantDoMask; // Profile window "I want to" mask
private LLUUID _rootInventoryFolderID;
/// <summary> /// <summary>
/// The users last registered agent (filled in on the user server) /// The second component of a users account name
/// </summary> /// </summary>
private UserAgentData _currentAgent; private string _surname;
/// <summary>
/// A URI to the users asset server, used for foreigners and large grids.
/// </summary>
private string _userAssetURI = String.Empty;
/// <summary>
/// A URI to the users inventory server, used for foreigners and large grids
/// </summary>
private string _userInventoryURI = String.Empty;
/// <summary>
/// The last used Web_login_key
/// </summary>
private LLUUID _webLoginKey;
/// <summary> /// <summary>
/// The regionhandle of the users preffered home region. If multiple sims occupy the same spot, the grid may decide which region the user logs into /// The regionhandle of the users preffered home region. If multiple sims occupy the same spot, the grid may decide which region the user logs into
/// </summary> /// </summary>
public ulong HomeRegion public ulong HomeRegion
{ {
get { return Helpers.UIntsToLong((_homeRegionX * (uint)Constants.RegionSize), (_homeRegionY * (uint)Constants.RegionSize)); } get { return Helpers.UIntsToLong((_homeRegionX * (uint) Constants.RegionSize), (_homeRegionY * (uint) Constants.RegionSize)); }
set set
{ {
_homeRegionX = (uint) (value >> 40); _homeRegionX = (uint) (value >> 40);
@ -149,232 +150,175 @@ namespace OpenSim.Framework
} }
// Property wrappers // Property wrappers
public LLUUID ID { public LLUUID ID
get { {
return _id; get { return _id; }
} set { _id = value; }
set {
_id = value;
}
} }
public LLUUID WebLoginKey { public LLUUID WebLoginKey
get { {
return _webLoginKey; get { return _webLoginKey; }
} set { _webLoginKey = value; }
set {
_webLoginKey = value;
}
} }
public string FirstName { public string FirstName
get { {
return _firstname; get { return _firstname; }
} set { _firstname = value; }
set {
_firstname = value;
}
} }
public string SurName { public string SurName
get { {
return _surname; get { return _surname; }
} set { _surname = value; }
set {
_surname = value;
}
} }
public string PasswordHash { public string PasswordHash
get { {
return _passwordHash; get { return _passwordHash; }
} set { _passwordHash = value; }
set {
_passwordHash = value;
}
} }
public string PasswordSalt { public string PasswordSalt
get { {
return _passwordSalt; get { return _passwordSalt; }
} set { _passwordSalt = value; }
set {
_passwordSalt = value;
}
} }
public uint HomeRegionX { public uint HomeRegionX
get { {
return _homeRegionX; get { return _homeRegionX; }
} set { _homeRegionX = value; }
set {
_homeRegionX = value;
}
} }
public uint HomeRegionY { public uint HomeRegionY
get { {
return _homeRegionY; get { return _homeRegionY; }
} set { _homeRegionY = value; }
set {
_homeRegionY = value;
}
} }
public LLVector3 HomeLocation { public LLVector3 HomeLocation
get { {
return _homeLocation; get { return _homeLocation; }
} set { _homeLocation = value; }
set {
_homeLocation = value;
}
} }
// for handy serialization // for handy serialization
public float HomeLocationX { public float HomeLocationX
{
get { return _homeLocation.X; } get { return _homeLocation.X; }
set { _homeLocation.X = value; } set { _homeLocation.X = value; }
} }
public float HomeLocationY {
public float HomeLocationY
{
get { return _homeLocation.Y; } get { return _homeLocation.Y; }
set { _homeLocation.Y = value; } set { _homeLocation.Y = value; }
} }
public float HomeLocationZ {
public float HomeLocationZ
{
get { return _homeLocation.Z; } get { return _homeLocation.Z; }
set { _homeLocation.Z = value; } set { _homeLocation.Z = value; }
} }
public LLVector3 HomeLookAt { public LLVector3 HomeLookAt
get { {
return _homeLookAt; get { return _homeLookAt; }
} set { _homeLookAt = value; }
set {
_homeLookAt = value;
}
} }
// for handy serialization // for handy serialization
public float HomeLookAtX { public float HomeLookAtX
{
get { return _homeLookAt.X; } get { return _homeLookAt.X; }
set { _homeLookAt.X = value; } set { _homeLookAt.X = value; }
} }
public float HomeLookAtY {
public float HomeLookAtY
{
get { return _homeLookAt.Y; } get { return _homeLookAt.Y; }
set { _homeLookAt.Y = value; } set { _homeLookAt.Y = value; }
} }
public float HomeLookAtZ {
public float HomeLookAtZ
{
get { return _homeLookAt.Z; } get { return _homeLookAt.Z; }
set { _homeLookAt.Z = value; } set { _homeLookAt.Z = value; }
} }
public int Created { public int Created
get { {
return _created; get { return _created; }
} set { _created = value; }
set {
_created = value;
}
} }
public int LastLogin { public int LastLogin
get { {
return _lastLogin; get { return _lastLogin; }
} set { _lastLogin = value; }
set {
_lastLogin = value;
}
} }
public LLUUID RootInventoryFolderID { public LLUUID RootInventoryFolderID
get { {
return _rootInventoryFolderID; get { return _rootInventoryFolderID; }
} set { _rootInventoryFolderID = value; }
set {
_rootInventoryFolderID = value;
}
} }
public string UserInventoryURI { public string UserInventoryURI
get { {
return _userInventoryURI; get { return _userInventoryURI; }
} set { _userInventoryURI = value; }
set {
_userInventoryURI = value;
}
} }
public string UserAssetURI { public string UserAssetURI
get { {
return _userAssetURI; get { return _userAssetURI; }
} set { _userAssetURI = value; }
set {
_userAssetURI = value;
}
} }
public uint CanDoMask { public uint CanDoMask
get { {
return _profileCanDoMask; get { return _profileCanDoMask; }
} set { _profileCanDoMask = value; }
set {
_profileCanDoMask = value;
}
} }
public uint WantDoMask { public uint WantDoMask
get { {
return _profileWantDoMask; get { return _profileWantDoMask; }
} set { _profileWantDoMask = value; }
set {
_profileWantDoMask = value;
}
} }
public string AboutText { public string AboutText
get { {
return _profileAboutText; get { return _profileAboutText; }
} set { _profileAboutText = value; }
set {
_profileAboutText = value;
}
} }
public string FirstLifeAboutText { public string FirstLifeAboutText
get { {
return _profileFirstText; get { return _profileFirstText; }
} set { _profileFirstText = value; }
set {
_profileFirstText = value;
}
} }
public LLUUID Image { public LLUUID Image
get { {
return _profileImage; get { return _profileImage; }
} set { _profileImage = value; }
set {
_profileImage = value;
}
} }
public LLUUID FirstLifeImage { public LLUUID FirstLifeImage
get { {
return _profileFirstImage; get { return _profileFirstImage; }
} set { _profileFirstImage = value; }
set {
_profileFirstImage = value;
}
} }
public UserAgentData CurrentAgent { public UserAgentData CurrentAgent
get { {
return _currentAgent; get { return _currentAgent; }
} set { _currentAgent = value; }
set {
_currentAgent = value;
}
} }
} }
} }

View File

@ -47,16 +47,15 @@ namespace OpenSim.Framework
{ {
private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
private static Random randomClass = new Random();
private static uint nextXferID = 5000; private static uint nextXferID = 5000;
private static object XferLock = new object(); private static Random randomClass = new Random();
// Get a list of invalid path characters (OS dependent)
private static string regexInvalidPathChars = "[" + new String(Path.GetInvalidPathChars()) + "]";
// Get a list of invalid file characters (OS dependent) // Get a list of invalid file characters (OS dependent)
private static string regexInvalidFileChars = "[" + new String(Path.GetInvalidFileNameChars()) + "]"; private static string regexInvalidFileChars = "[" + new String(Path.GetInvalidFileNameChars()) + "]";
private static string regexInvalidPathChars = "[" + new String(Path.GetInvalidPathChars()) + "]";
private static object XferLock = new object();
#region Vector Equasions #region Vector Equasions
/// <summary> /// <summary>
/// Get the distance between two 3d vectors /// Get the distance between two 3d vectors
/// </summary> /// </summary>
@ -92,7 +91,7 @@ namespace OpenSim.Framework
if (IsZeroVector(a)) if (IsZeroVector(a))
throw new ArgumentException("Vector paramater cannot be a zero vector."); throw new ArgumentException("Vector paramater cannot be a zero vector.");
float Mag = (float)GetMagnitude(a); float Mag = (float) GetMagnitude(a);
return new LLVector3(a.X / Mag, a.Y / Mag, a.Z / Mag); return new LLVector3(a.X / Mag, a.Y / Mag, a.Z / Mag);
} }
@ -112,9 +111,8 @@ namespace OpenSim.Framework
# endregion # endregion
public static ulong UIntsToLong(uint X, uint Y) public Util()
{ {
return Helpers.UIntsToLong(X, Y);
} }
public static Random RandomClass public static Random RandomClass
@ -122,6 +120,11 @@ namespace OpenSim.Framework
get { return randomClass; } get { return randomClass; }
} }
public static ulong UIntsToLong(uint X, uint Y)
{
return Helpers.UIntsToLong(X, Y);
}
public static uint GetNextXferID() public static uint GetNextXferID()
{ {
uint id = 0; uint id = 0;
@ -133,10 +136,6 @@ namespace OpenSim.Framework
return id; return id;
} }
public Util()
{
}
public static string GetFileName(string file) public static string GetFileName(string file)
{ {
// Return just the filename on UNIX platforms // Return just the filename on UNIX platforms
@ -199,7 +198,7 @@ namespace OpenSim.Framework
public static int ToUnixTime(DateTime stamp) public static int ToUnixTime(DateTime stamp)
{ {
TimeSpan t = (stamp.ToUniversalTime() - Convert.ToDateTime("1/1/1970 8:00:00 AM")); TimeSpan t = (stamp.ToUniversalTime() - Convert.ToDateTime("1/1/1970 8:00:00 AM"));
return (int)t.TotalSeconds; return (int) t.TotalSeconds;
} }
public static DateTime ToDateTime(ulong seconds) public static DateTime ToDateTime(ulong seconds)
@ -309,7 +308,7 @@ namespace OpenSim.Framework
for (int j = 0; j < 16 && (i + j) < bytes.Length; j++) for (int j = 0; j < 16 && (i + j) < bytes.Length; j++)
{ {
if (bytes[i + j] >= 0x20 && bytes[i + j] < 0x7E) if (bytes[i + j] >= 0x20 && bytes[i + j] < 0x7E)
output.Append((char)bytes[i + j]); output.Append((char) bytes[i + j]);
else else
output.Append("."); output.Append(".");
} }
@ -397,7 +396,8 @@ namespace OpenSim.Framework
/// <returns>safe filename</returns> /// <returns>safe filename</returns>
public static string safeFileName(string filename) public static string safeFileName(string filename)
{ {
return Regex.Replace(filename, @regexInvalidFileChars, string.Empty); ; return Regex.Replace(filename, @regexInvalidFileChars, string.Empty);
;
} }
// //
@ -454,10 +454,10 @@ namespace OpenSim.Framework
public static void AddDataRowToConfig(IConfigSource config, DataRow row) public static void AddDataRowToConfig(IConfigSource config, DataRow row)
{ {
config.Configs.Add((string)row[0]); config.Configs.Add((string) row[0]);
for (int i = 0; i < row.Table.Columns.Count; i++) for (int i = 0; i < row.Table.Columns.Count; i++)
{ {
config.Configs[(string)row[0]].Set(row.Table.Columns[i].ColumnName, row[i]); config.Configs[(string) row[0]].Set(row.Table.Columns[i].ColumnName, row[i]);
} }
} }
@ -599,13 +599,13 @@ namespace OpenSim.Framework
{ {
//System.Console.WriteLine("StartLocationRequest Contains proper elements"); //System.Console.WriteLine("StartLocationRequest Contains proper elements");
string[] splitstr = startLocationRequest.Split(':');//,2,StringSplitOptions.RemoveEmptyEntries); string[] splitstr = startLocationRequest.Split(':'); //,2,StringSplitOptions.RemoveEmptyEntries);
//System.Console.WriteLine("Found " + splitstr.GetLength(0) + " elements in 1st split result"); //System.Console.WriteLine("Found " + splitstr.GetLength(0) + " elements in 1st split result");
if (splitstr.GetLength(0) == 2) if (splitstr.GetLength(0) == 2)
{ {
string[] splitstr2 = splitstr[1].Split('&');//, 4, StringSplitOptions.RemoveEmptyEntries); string[] splitstr2 = splitstr[1].Split('&'); //, 4, StringSplitOptions.RemoveEmptyEntries);
//System.Console.WriteLine("Found " + splitstr2.GetLength(0) + " elements in 2nd split result"); //System.Console.WriteLine("Found " + splitstr2.GetLength(0) + " elements in 2nd split result");
@ -623,16 +623,15 @@ namespace OpenSim.Framework
return returnstring; return returnstring;
} }
static public XmlRpcResponse XmlRpcCommand(string url, string methodName, params object[] args) public static XmlRpcResponse XmlRpcCommand(string url, string methodName, params object[] args)
{ {
return SendXmlRpcCommand(url, methodName, args); return SendXmlRpcCommand(url, methodName, args);
} }
static public XmlRpcResponse SendXmlRpcCommand(string url, string methodName, object[] args) public static XmlRpcResponse SendXmlRpcCommand(string url, string methodName, object[] args)
{ {
XmlRpcRequest client = new XmlRpcRequest(methodName, args); XmlRpcRequest client = new XmlRpcRequest(methodName, args);
return client.Send(url, 6000); return client.Send(url, 6000);
} }
} }
} }

View File

@ -33,6 +33,10 @@ namespace OpenSim.Framework
[Serializable] [Serializable]
public class sLLVector3 public class sLLVector3
{ {
public float x = 0;
public float y = 0;
public float z = 0;
public sLLVector3() public sLLVector3()
{ {
} }
@ -43,9 +47,5 @@ namespace OpenSim.Framework
y = v.Y; y = v.Y;
z = v.Z; z = v.Z;
} }
public float x=0;
public float y=0;
public float z=0;
} }
} }