From 25fdbd6cbcfc857c444042745d7d4fa8e495a982 Mon Sep 17 00:00:00 2001 From: Diva Canto Date: Sat, 9 Jan 2010 09:09:32 -0800 Subject: Less refs to UserProfileCacheService. Compiles but likely doesn't run. --- .../UserAccountService/UserAccountService.cs | 107 +++++++++++++++++---- 1 file changed, 88 insertions(+), 19 deletions(-) (limited to 'OpenSim/Services') diff --git a/OpenSim/Services/UserAccountService/UserAccountService.cs b/OpenSim/Services/UserAccountService/UserAccountService.cs index c14651d..dacfa51 100644 --- a/OpenSim/Services/UserAccountService/UserAccountService.cs +++ b/OpenSim/Services/UserAccountService/UserAccountService.cs @@ -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 [ [ [ [ []]]]]", + "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(); - 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(); + d.Data = new Dictionary(); d.Data["Email"] = data.Email; d.Data["Created"] = data.Created.ToString(); List parts = new List(); - foreach (KeyValuePair kvp in data.ServiceURLs) + foreach (KeyValuePair 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 + /// + /// Create a new user + /// + /// string array with parameters: firstname, lastname, password, locationX, locationY, email + 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 } } -- cgit v1.1