Aurora.Services.WebAPIHandler.UserInfo2InfoWebOSD C# (CSharp) Метод

UserInfo2InfoWebOSD() приватный Метод

private UserInfo2InfoWebOSD ( OpenSim.Services.Interfaces.UserInfo userinfo ) : OSDMap
userinfo OpenSim.Services.Interfaces.UserInfo
Результат OSDMap
        private OSDMap UserInfo2InfoWebOSD(UserInfo userinfo)
        {
            OSDMap resp = new OSDMap();

            IUserAccountService accountService = m_registry.RequestModuleInterface<IUserAccountService>();
            IGridService gs = m_registry.RequestModuleInterface<IGridService>();
            UserAccount user = accountService.GetUserAccount(null, new UUID(userinfo.UserID));

            GridRegion homeRegion = gs.GetRegionByUUID(null, userinfo.HomeRegionID);
            GridRegion currentRegion = userinfo.CurrentRegionID != UUID.Zero ? gs.GetRegionByUUID(null, userinfo.CurrentRegionID) : null;

            resp["UUID"] = OSD.FromUUID(user.PrincipalID);
            resp["HomeUUID"] = OSD.FromUUID((homeRegion == null) ? UUID.Zero : homeRegion.RegionID);
            resp["HomeName"] = OSD.FromString((homeRegion == null) ? "" : homeRegion.RegionName);
            resp["CurrentRegionUUID"] = OSD.FromUUID((userinfo == null) ? UUID.Zero : userinfo.CurrentRegionID);
            resp["CurrentRegionName"] = OSD.FromString((currentRegion == null) ? "" : currentRegion.RegionName);
            resp["Online"] = OSD.FromBoolean((userinfo == null) ? false : userinfo.IsOnline);
            resp["Email"] = OSD.FromString(user.Email);
            resp["Name"] = OSD.FromString(user.Name);
            resp["FirstName"] = OSD.FromString(user.FirstName);
            resp["LastName"] = OSD.FromString(user.LastName);
            resp["LastLogin"] = userinfo == null ? OSD.FromBoolean(false) : OSD.FromInteger((int)Utils.DateTimeToUnixTime(userinfo.LastLogin));
            resp["LastLogout"] = userinfo == null ? OSD.FromBoolean(false) : OSD.FromInteger((int)Utils.DateTimeToUnixTime(userinfo.LastLogout));

            return resp;
        }