aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/UpdateServiceHelper.cs
blob: 067e4470dc047f94e5555edf44d3904207fcb3ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
using System;
using System.Collections.Generic;
using System.Linq;
using System.ServiceModel;
using System.Text;
using System.Threading.Tasks;
using Tango.Settings;

namespace Tango.MachineStudio.Common.Update
{
    public static class UpdateServiceHelper
    {
        public static ChannelFactory<IMachineStudioUpdateService> GetUpdateServiceChannel()
        {
            BasicHttpBinding binding = new BasicHttpBinding(BasicHttpSecurityMode.None);
            binding.ReceiveTimeout = TimeSpan.FromSeconds(60);
            binding.SendTimeout = TimeSpan.FromSeconds(60);
            binding.MaxBufferPoolSize = 6553600;
            binding.MaxBufferSize = 6553600;
            binding.MaxReceivedMessageSize = 6553600;
            binding.ReaderQuotas.MaxDepth = 6553600;
            binding.ReaderQuotas.MaxStringContentLength = 6553600;
            binding.ReaderQuotas.MaxArrayLength = 6553600;
            binding.ReaderQuotas.MaxBytesPerRead = 6553600;

            return new ChannelFactory<IMachineStudioUpdateService>(binding, SettingsManager.Default.GetOrCreate<MachineStudioSettings>().UpdateServiceAddress);
        }
    }
}
span class="p">} public DateTime DateCreated { get; set; } public long Size { get; set; } public String Name { get { return OnGetName(); } } public FileSystemItem() { DateModified = DateTime.Now; Size = 1000 * 1000; } protected virtual String OnGetName() { return System.IO.Path.GetFileName(Path); } public override string ToString() { return Name; } public static FileSystemItem FromDTO(FileSystemItemDTO dto) { FileSystemItem item = null; if (dto.Type == FileSystemItemType.Drive) { item = new DriveItem() { DriveType = dto.DriveType, Label = dto.DriveLabel, Items = dto.Items?.Select(x => FromDTO(x)).ToObservableCollection() }; } else if (dto.Type == FileSystemItemType.Folder) { item = new FolderItem() { Items = dto.Items?.Select(x => FromDTO(x)).ToObservableCollection(), IsRoot = dto.IsRoot, }; } else if (dto.Type == FileSystemItemType.File) { item = new FileItem(); } item.DateModified = dto.DateModified; item.DateCreated = dto.DateCreated; item.Path = dto.Path; item.Size = dto.Size; item.Type = dto.Type; return item; } public String GetParent() { if (Path == "/") return null; String root = System.IO.Path.GetPathRoot(Path); var parent = Directory.GetParent(Path); if (root == "\\") { return parent.FullName.Replace(parent.Root.FullName, "/").Replace("\\", "/"); } else if (parent != null) { return parent.FullName; } else { return null; } } } }