예제 #1
0
        private static bool DownloadPackage(string packageName, string packageUrl, string downloadPath, bool overwriteFiles)
        {
            bool           ok             = true;
            InstallPackage installPackage = new InstallPackage();

            ok = DownloadFile(packageName, packageUrl, downloadPath, true);
            if (ok)
            {
                try
                {
                    installPackage = installPackage.LoadFromXML(Path.Combine(downloadPath, packageName));
                }
                catch
                {
                    ok = false;
                }
                if (ok)
                {
                    var downloadElements = installPackage.DownloadElementToArray();
                    foreach (var element in downloadElements)
                    {
                        ok = DownloadFile(element.FileName, Path.Combine(element.Url, element.Subdir), Path.Combine(downloadPath, element.Subdir), overwriteFiles);
                        if (!ok)
                        {
                            break;
                        }
                    }
                }
            }
            return(ok);
        }
예제 #2
0
		private static bool DownloadPackage(string packageName, string packageUrl, string downloadPath, bool overwriteFiles)
		{
			bool ok = true;
			InstallPackage installPackage = new InstallPackage();
			ok = DownloadFile(packageName, packageUrl, downloadPath, true);
			if(ok)
			{
				try
				{
					installPackage = installPackage.LoadFromXML(Path.Combine(downloadPath,packageName));
				}
				catch
				{
					ok = false;
				}
				if(ok)
				{
					var downloadElements = installPackage.DownloadElementToArray();
					foreach(var element in downloadElements)
					{
						ok = DownloadFile(element.FileName, Path.Combine(element.Url, element.Subdir), Path.Combine(downloadPath, element.Subdir), overwriteFiles);
						if(!ok)
						{
							break;
						}
					}
				}
			}
			return ok;
		}
예제 #3
0
        public InstallPackage LoadFromXML(String filepath)
        {
            XmlSerializer  deserializer  = new XmlSerializer(typeof(InstallPackage));
            TextReader     textReader    = new StreamReader(filepath);
            Object         obj           = deserializer.Deserialize(textReader);
            InstallPackage myNewSettings = (InstallPackage)obj;

            textReader.Close();
            return(myNewSettings);
        }
예제 #4
0
		public static void Main (string[] args)
		{
			if (args.Length > 0)
				url = args [0];
			else 
				url = "";
			currentDir = Directory.GetCurrentDirectory ();
			DirSearch (currentDir);
			InstallPackage installSettings = new InstallPackage();
			foreach (var element in downloadList) 
			{
				installSettings.AddDownloadElement(element);
			}
			installSettings.SaveToXML(Path.Combine(currentDir, installFileName));
		}