/// <summary>
        /// Downloads all assets for this sporecast.
        /// </summary>
        public void downloadAllAssets(String filePath)
        {
            var assetIds = getAllAssetIds();

            var server = new SporeServer();

            filePath += "\\" + Id;
            Directory.CreateDirectory(filePath);
            filePath += "\\";

            foreach (var id in assetIds)
            {
                server.downloadAssetPng(id, filePath + id + ".png");

                /*try
                 * {
                 *  server.getAssetInfo(id).Save(filePath + id + "_meta.xml");
                 * }
                 * catch (System.Xml.XmlException)
                 * {
                 *  Console.WriteLine($"Asset ID {id} for sporecast {Id} has invalid data in its Spore.com XML data, this data will not be saved");
                 * }*/

                Console.WriteLine($"Saved asset ID {id} for sporecast {Id}");
            }

            Console.WriteLine($"Saved {assetIds.Count} assets for sporecast {Id}");
        }
        /// <summary>
        /// Gets a collection of IDs for all of this sporecast's assets.
        /// </summary>
        public Queue <long> getAllAssetIds()
        {
            var server = new SporeServer();

            var assetIds = new Queue <long>();

            var doc = server.getSporecastFeed(Id).Element("{http://www.w3.org/2005/Atom}feed");

            if (doc is not null)
            {
                foreach (var asset in doc.Elements("{http://www.w3.org/2005/Atom}entry"))
                {
                    string entryId = asset.Element("{http://www.w3.org/2005/Atom}id") !.Value;
                    long   assetId = long.Parse(entryId.Split('/')[1]);

                    assetIds.Enqueue(assetId);

                    Console.WriteLine($"Found asset ID {assetId} for sporecast {Id}");
                }
                Console.WriteLine($"Found {assetIds.Count} assets for sporecast {Id}");
            }
            else
            {
                Console.WriteLine($"Found no assets for sporecast {Id}, feed did not exist");
            }

            return(assetIds);
        }