public void AddToDlQueue(string url, string saveas, DownloadLocation saveloc)
        {
            FDInfo newInfo = new FDInfo();

            newInfo.www          = new WWW(url);
            newInfo.name         = saveas;
            newInfo.saveLocation = saveloc;

            infos.Add(newInfo);
        }
Exemple #2
0
        public void AddDownloadLocation()
        {
            var newLoc = SetDefaultPath();
            var dwLoc  = new DownloadLocation {
                Location = newLoc
            };

            if (!(_configurationContext.DownloadLocation.Find().Where(x => x.Location == newLoc).Execute().FirstOrDefault() is DownloadLocation))
            {
                _configurationViewModel.Configuartion.DownloadLocations.Add(dwLoc);
                _configurationContext.DownloadLocation.Save(dwLoc);
            }
        }
Exemple #3
0
 /// <see cref="IComponentUpdateChecker.DownloadLatestAsync"/>
 public override Task DownloadLatestAsync(IProgress <DownloadProgressChangedEventArgs> progress, CancellationToken cancellationToken)
 {
     Process.Start(DownloadLocation.ToString());
     return(Task.CompletedTask);
 }
Exemple #4
0
        private void DoInstallationChecks(List<FileInfo> results)
        {
            Debug.Assert(m_tasks != null);
            HashSet<string> alreadyInspected = new HashSet<string>();
            //for each existing file
            foreach (var file in results)
            {
                IncrementPatchProgressBar_ThreadSafe(false);
                string name = m_cache.GetRelativeName(file);

                if (name == m_cache.GetRelativeName(CacheFile))
                    continue;

                alreadyInspected.Add(name);
                DateTime stamp = file.LastWriteTimeUtc;

                PatchManifest.AssetInfo patchFile = m_patch.GetFileInfo(name);
                if (patchFile == null)
                {
                    Log_ThreadSafe("\t delete " + name + ", not in patch manifest");
                    m_tasks.toDelete.Add(file);
                }
                else
                {
                    if (!m_cache.IsFileValid(name, file, patchFile.hash))
                    {
                        Log_ThreadSafe("\t Invalid: " + name + ", get from " + patchFile.uri.ToString());
                        var dl = new DownloadLocation(file, TempDownloadFile(name));
                        m_tasks.toDownload.Add(dl, patchFile.uri);
                    }
                //	else
                //		Log_ThreadSafe("\t Valid: " + name + ", " + stamp.ToString());
                }
            }
            foreach (var patchFile in m_patch.assets)
            {
                IncrementPatchProgressBar_ThreadSafe(false);
                if(alreadyInspected.Contains(patchFile.Key.ToLowerInvariant()))
                    continue;
                Log_ThreadSafe("\t Missing: " + patchFile.Key + ", get from " + patchFile.Value.uri.ToString());
                var dl = new DownloadLocation(m_cache.GetAbsoluteFile(patchFile.Key), TempDownloadFile(patchFile.Key));
                m_tasks.toDownload.Add(dl, patchFile.Value.uri);
            }

            m_cache.Save(CacheFile);
        }
Exemple #5
0
 public CompressionTask(DownloadLocation d)
 {
     dl = d;
     done = false;
 }
        void OnGUI()
        {
            //		GUILayout.Label ("Base Settings", EditorStyles.boldLabel);
            URLToDl      = EditorGUILayout.TextField("URL", URLToDl);
            nameToSaveAs = EditorGUILayout.TextField("Save as", nameToSaveAs);

            EditorGUILayout.BeginHorizontal();
            saveLocation = (DownloadLocation)EditorGUILayout.EnumPopup("Save to", saveLocation);
            if (GUILayout.Button("Open Location"))
            {
                string toOpen = null;
                switch (saveLocation)
                {
                case DownloadLocation.AssetFolder:
                    toOpen = Application.dataPath + "/";
                    break;

                case DownloadLocation.ResourceFolder:
                    toOpen = Application.dataPath + "/Resources/";
                    break;

                case DownloadLocation.TempFolder:
                    toOpen = Application.temporaryCachePath + "/";
                    break;

                case DownloadLocation.PersistFolder:
                    toOpen = Application.persistentDataPath + "/";
                    break;
                }

                System.Diagnostics.Process.Start(toOpen);
            }

            EditorGUILayout.EndHorizontal();
            //
            //		groupEnabled = EditorGUILayout.BeginToggleGroup ("Optional Settings", groupEnabled);
            //		myBool = EditorGUILayout.Toggle ("Toggle", myBool);
            //		myFloat = EditorGUILayout.Slider ("Slider", myFloat, -3, 3);
            //		EditorGUILayout.EndToggleGroup ();


            if (GUILayout.Button("Download"))
            {
                AddToDlQueue(URLToDl, nameToSaveAs, saveLocation);
            }



            GUILayout.Label("Active Downloads:");

            for (int i = 0; i < infos.Count; i++)
            {
                EditorGUILayout.BeginHorizontal();
                GUILayout.Label(infos[i].name);

                //FKN annoying, www class doesn't give in progress information in a useful way.
                //	in fact some of its properties turn it into a blocking download:(
                //	GUILayout.Label(infos[i].www.bytesDownloaded.ToString());
                //	GUILayout.Label(infos[i].www.progress.ToString());
                EditorGUILayout.EndHorizontal();
            }
        }
 private void BeforeWebDriverSetupSetps()
 {
     downloadLocation = new Lazy <string>(() => DownloadLocation.CreateWebDriverDirectory(appConfigMember.Browser.ToString() + appConfigMember.ExecutionType.ToString(), appConfigMember.RootDownloadLocation));
     uploadLocation   = new Lazy <UploadLocation>(() => UploadLocation.Create(appConfigMember.Browser.ToString() + appConfigMember.ExecutionType.ToString(), true, appConfigMember.RootUploadLocation));
 }
Exemple #8
0
 /// <see cref="IComponentUpdateChecker.DownloadLatestAsync"/>
 public override Task DownloadLatestAsync(IProgress <DownloadProgressChangedEventArgs> progress, CancellationToken cancellationToken)
 {
     Process.Start(DownloadLocation.ToString());
     return(Task.FromResult <object>(null));
 }