예제 #1
0
        private VaultAppModel ToModel(VaultApp app, bool needImpersonate, bool isUpdate = false)
        {
            if (app == null)
            {
                throw new ArgumentNullException("app");
            }
            var vam = new VaultAppModel
            {
                AppId = app.Id,
                Guid  = app.Guid,
                //CloudAppEnabled = app.CloudAppEnabled,
                IsUpdate = isUpdate,
                Version  = app.Version
            };

            try
            {
                if (needImpersonate)
                {
                    using (StorageUtility.GetImpersonator())
                    {
                        vam.ZipFile = File.ReadAllBytes(app.Filepath);
                    }
                }
                else
                {
                    vam.ZipFile = File.ReadAllBytes(app.Filepath);
                }
            }
            catch (Exception ex)
            {
                Log.Info(app.Filepath + ex.Message);
            }
            return(vam);
        }
예제 #2
0
파일: Form1.cs 프로젝트: weijx-xa/test
        private async void buttonapp_Click(object sender, EventArgs e)
        {
            try
            {
                var appver = textBoxappver.Text;
                var ret    = new VaultAppModel
                {
                    AppId    = 1,
                    Guid     = textBoxguid.Text,
                    IsUpdate = true,
                    Version  = appver
                };

                //try
                //{
                //    var di = new DirectoryInfo(textBoxapppath.Text);
                //    var files = di.GetFiles();
                //    foreach (FileInfo fileInfo in files)
                //    {
                //        if (fileInfo.Name.Contains(textBoxappver.Text))
                //        {
                //            var apppath = Path.Combine(textBoxapppath.Text, string.Format("1-{0}.zip", appver));
                //            try
                //            {

                //                ret.ZipFile = File.ReadAllBytes(apppath);
                //            }
                //            catch (Exception ex)
                //            {
                //                richTextBoxlog.AppendText(Environment.NewLine + apppath + ex.Message);
                //                return;
                //            }
                //                break;
                //        }
                //    }
                //}
                //catch (Exception ex)
                //{
                //    richTextBoxlog.AppendText(Environment.NewLine + string.Format("app release error:{0},{1},{2},{3}",
                //        textBoxappver.Text, textBoxweburl.Text, textBoxapppath.Text, ex.Message));
                //    return;
                //}
                richTextBoxlog.AppendText(Environment.NewLine + "PushNewApp. " + " before invoke.");
                await HubProxy.Invoke("PushNewApp", ret);

                richTextBoxlog.AppendText(Environment.NewLine + "PushNewApp." + " ok.");
            }
            catch (Exception ex)
            {
                richTextBoxlog.AppendText(Environment.NewLine + "PushNewApp." + ex.Message);
            }
        }
예제 #3
0
        private VaultAppModel ToModel(VaultApp app, bool isUpdate = false)
        {
            var vam = new VaultAppModel
            {
                AppId    = app.Id,
                Guid     = app.Guid,
                IsUpdate = isUpdate,
                Version  = app.Version
            };

            try
            {
                vam.ZipFile = File.ReadAllBytes(app.Filepath);
            }
            catch (Exception ex)
            {
                Log.Info(app.Filepath + ex.Message);
            }
            return(vam);
        }
예제 #4
0
파일: hub.cs 프로젝트: weijx-xa/test
 public void PushNewApp(VaultAppModel mcc)
 {
     Clients.All.NewApp(mcc);
 }