Beispiel #1
0
 public ISceneObject DeserializeGroupFromXml2(string xmlString, IScene scene)
 {
     if (scene is Scene)
     {
         return(SceneXmlLoader.DeserializeGroupFromXml2(xmlString, (Scene)scene));
     }
     return(null);
 }
        public GroupDisplayData Load(UUID userId, UUID itemId, GroupLoader.LoaderParams parms)
        {
            OpenSim.Data.IInventoryStorage inv = _invSelector.GetProvider(userId);

            InventoryItemBase item = inv.GetItem(itemId, UUID.Zero);

            if (item == null)
            {
                throw new Exceptions.PrimExporterPermissionException("The item could not be found");
            }

            var asset = _stratus.RequestAssetSync(item.AssetID);

            if (item.Owner != userId)
            {
                throw new Exceptions.PrimExporterPermissionException("You do not own that object");
            }

            if (((parms.Checks & LoaderChecks.UserMustBeCreator) != 0) && item.CreatorIdAsUuid != userId)
            {
                throw new Exceptions.PrimExporterPermissionException("You are not the creator of the base object");
            }

            //get the user name
            string userName = LookupUserName(item.CreatorIdAsUuid);

            //try thoosa first
            SceneObjectGroup sog;

            InventoryObjectSerializer engine = new InventoryObjectSerializer();

            if (engine.CanDeserialize(asset.Data))
            {
                sog = engine.DeserializeGroupFromInventoryBytes(asset.Data);
            }
            else
            {
                sog = SceneXmlLoader.DeserializeGroupFromXml2(Utils.BytesToString(asset.Data));
            }

            return(GroupDisplayDataFromSOG(userId, parms, sog, inv, userName, item));
        }
 public ISceneObject DeserializeGroupFromXml2(byte[] xml, IScene scene)
 {
     return(SceneXmlLoader.DeserializeGroupFromXml2(xml, scene));
 }
 public ISceneObject DeserializeGroupFromXml2(string xmlString, IScene scene)
 {
     return(SceneXmlLoader.DeserializeGroupFromXml2(xmlString, scene));
 }
 public SceneObjectGroup DeserializeGroupFromXml2(string xmlString)
 {
     return(SceneXmlLoader.DeserializeGroupFromXml2(xmlString));
 }
        public GroupDisplayData LoadFromXML(string xmlData, GroupLoader.LoaderParams parms)
        {
            SceneObjectGroup sog = SceneXmlLoader.DeserializeGroupFromXml2(xmlData);

            return(GroupDisplayDataFromSOG(UUID.Zero, parms, sog, null, string.Empty, null));
        }