Less refs to UserProfileCacheService. Compiles but likely doesn't run.

This commit is contained in:
Diva Canto
2010-01-09 09:09:32 -08:00
parent 6b60f3cce5
commit 25fdbd6cbc
10 changed files with 163 additions and 113 deletions

View File

@@ -29,6 +29,7 @@ using System;
using System.Reflection;
using Nini.Config;
using OpenSim.Data;
using OpenSim.Framework.Console;
using OpenSim.Services.Interfaces;
using System.Collections.Generic;
using OpenMetaverse;
@@ -37,10 +38,17 @@ namespace OpenSim.Services.UserAccountService
{
public class UserAccountService : UserAccountServiceBase, IUserAccountService
{
public UserAccountService(IConfigSource config) : base(config)
public UserAccountService(IConfigSource config)
: base(config)
{
MainConsole.Instance.Commands.AddCommand("UserService", false,
"create user",
"create user [<first> [<last> [<pass> [<x> <y> [<email>]]]]]",
"Create a new user", HandleCreateUser);
}
#region IUserAccountService
public UserAccount GetUserAccount(UUID scopeID, string firstName,
string lastName)
{
@@ -49,14 +57,14 @@ namespace OpenSim.Services.UserAccountService
if (scopeID != UUID.Zero)
{
d = m_Database.Get(
new string[] {"ScopeID", "FirstName", "LastName"},
new string[] {scopeID.ToString(), firstName, lastName});
new string[] { "ScopeID", "FirstName", "LastName" },
new string[] { scopeID.ToString(), firstName, lastName });
}
else
{
d = m_Database.Get(
new string[] {"FirstName", "LastName"},
new string[] {firstName, lastName});
new string[] { "FirstName", "LastName" },
new string[] { firstName, lastName });
}
if (d.Length < 1)
@@ -75,12 +83,12 @@ namespace OpenSim.Services.UserAccountService
u.Email = d.Data["Email"].ToString();
u.Created = Convert.ToInt32(d.Data["Created"].ToString());
string[] URLs = d.Data["ServiceURLs"].ToString().Split(new char[] {' '});
string[] URLs = d.Data["ServiceURLs"].ToString().Split(new char[] { ' ' });
u.ServiceURLs = new Dictionary<string, object>();
foreach(string url in URLs)
foreach (string url in URLs)
{
string[] parts = url.Split(new char[] {'='});
string[] parts = url.Split(new char[] { '=' });
if (parts.Length != 2)
continue;
@@ -101,14 +109,14 @@ namespace OpenSim.Services.UserAccountService
if (scopeID != UUID.Zero)
{
d = m_Database.Get(
new string[] {"ScopeID", "Email"},
new string[] {scopeID.ToString(), email});
new string[] { "ScopeID", "Email" },
new string[] { scopeID.ToString(), email });
}
else
{
d = m_Database.Get(
new string[] {"Email"},
new string[] {email});
new string[] { "Email" },
new string[] { email });
}
if (d.Length < 1)
@@ -116,7 +124,7 @@ namespace OpenSim.Services.UserAccountService
return MakeUserAccount(d[0]);
}
public UserAccount GetUserAccount(UUID scopeID, UUID principalID)
{
UserAccountData[] d;
@@ -124,14 +132,14 @@ namespace OpenSim.Services.UserAccountService
if (scopeID != UUID.Zero)
{
d = m_Database.Get(
new string[] {"ScopeID", "PrincipalID"},
new string[] {scopeID.ToString(), principalID.ToString()});
new string[] { "ScopeID", "PrincipalID" },
new string[] { scopeID.ToString(), principalID.ToString() });
}
else
{
d = m_Database.Get(
new string[] {"PrincipalID"},
new string[] {principalID.ToString()});
new string[] { "PrincipalID" },
new string[] { principalID.ToString() });
}
if (d.Length < 1)
@@ -148,13 +156,13 @@ namespace OpenSim.Services.UserAccountService
d.LastName = data.LastName;
d.PrincipalID = data.PrincipalID;
d.ScopeID = data.ScopeID;
d.Data = new Dictionary<string,string>();
d.Data = new Dictionary<string, string>();
d.Data["Email"] = data.Email;
d.Data["Created"] = data.Created.ToString();
List<string> parts = new List<string>();
foreach (KeyValuePair<string,object> kvp in data.ServiceURLs)
foreach (KeyValuePair<string, object> kvp in data.ServiceURLs)
{
string key = System.Web.HttpUtility.UrlEncode(kvp.Key);
string val = System.Web.HttpUtility.UrlEncode(kvp.Value.ToString());
@@ -180,5 +188,66 @@ namespace OpenSim.Services.UserAccountService
return ret;
}
#endregion
#region Console commands
/// <summary>
/// Create a new user
/// </summary>
/// <param name="cmdparams">string array with parameters: firstname, lastname, password, locationX, locationY, email</param>
protected void HandleCreateUser(string module, string[] cmdparams)
{
string firstName;
string lastName;
string password;
string email;
uint regX = 1000;
uint regY = 1000;
// IConfig standalone;
// if ((standalone = m_config.Source.Configs["StandAlone"]) != null)
// {
// regX = (uint)standalone.GetInt("default_location_x", (int)regX);
// regY = (uint)standalone.GetInt("default_location_y", (int)regY);
// }
// if (cmdparams.Length < 3)
// firstName = MainConsole.Instance.CmdPrompt("First name", "Default");
// else firstName = cmdparams[2];
// if (cmdparams.Length < 4)
// lastName = MainConsole.Instance.CmdPrompt("Last name", "User");
// else lastName = cmdparams[3];
// if (cmdparams.Length < 5)
// password = MainConsole.Instance.PasswdPrompt("Password");
// else password = cmdparams[4];
// if (cmdparams.Length < 6)
// regX = Convert.ToUInt32(MainConsole.Instance.CmdPrompt("Start Region X", regX.ToString()));
// else regX = Convert.ToUInt32(cmdparams[5]);
// if (cmdparams.Length < 7)
// regY = Convert.ToUInt32(MainConsole.Instance.CmdPrompt("Start Region Y", regY.ToString()));
// else regY = Convert.ToUInt32(cmdparams[6]);
// if (cmdparams.Length < 8)
// email = MainConsole.Instance.CmdPrompt("Email", "");
// else email = cmdparams[7];
// if (null == m_commsManager.UserProfileCacheService.GetUserDetails(firstName, lastName))
// {
// m_commsManager.UserAdminService.AddUser(firstName, lastName, password, email, regX, regY);
// }
// else
// {
// m_log.ErrorFormat("[CONSOLE]: A user with the name {0} {1} already exists!", firstName, lastName);
// }
//}
}
#endregion
}
}