Esempio n. 1
0
        public JsonResult Connect(ConnectionSettingsModel connectionSettings)
        {
            try
            {
                InstallationComponentsModel installedComponents  = null;
                InstallationComponentsModel selectedComponents   = null;
                InstallationProgressModel   installationProgress = null;

                if (connectionSettings != null)
                {
                    installedComponents  = SshHelper.Connect(UserId, connectionSettings);
                    installationProgress = CacheHelper.GetInstallationProgress(UserId);
                    selectedComponents   = CacheHelper.GetSelectedComponents(UserId);

                    CacheHelper.SetConnectionSettings(UserId, connectionSettings);
                    CacheHelper.SetInstalledComponents(UserId, installedComponents);
                }
                else
                {
                    CookieHelper.ClearCookie();
                    CacheHelper.ClearCache(UserId);
                }

                return(Json(new
                {
                    success = true,
                    message = string.Empty,
                    connectionSettings = GetJsonString(connectionSettings),
                    installedComponents = GetJsonString(installedComponents),
                    installationProgress = GetJsonString(installationProgress),
                    selectedComponents = GetJsonString(selectedComponents)
                }));
            }
            catch (Exception ex)
            {
                LogManager.GetLogger("ASC").Error(ex.Message, ex);

                return(Json(new
                {
                    success = false,
                    message = ex.Message,
                    errorCode = GetErrorCode(ex.Message)
                }));
            }
        }
Esempio n. 2
0
        public JsonResult Connect(ConnectionSettingsModel connectionSettings, RequestInfoModel requestInfo)
        {
            try
            {
                InstallationComponentsModel installedComponents  = null;
                InstallationComponentsModel selectedComponents   = null;
                InstallationProgressModel   installationProgress = null;
                OsInfo osInfo = null;

                if (connectionSettings != null)
                {
                    if (connectionSettings.Enterprise)
                    {
                        if (string.IsNullOrEmpty(connectionSettings.LicenseKey))
                        {
                            throw new ArgumentException("connectionSettings.licenseKey");
                        }

                        if (connectionSettings.LicenseKey == Settings.TrialFileName && requestInfo == null)
                        {
                            throw new ArgumentNullException("requestInfo");
                        }
                    }

                    var data = SshHelper.Connect(UserId, connectionSettings);

                    osInfo = data.Item1;
                    installedComponents  = data.Item2;
                    installationProgress = CacheHelper.GetInstallationProgress(UserId);
                    selectedComponents   = CacheHelper.GetSelectedComponents(UserId);

                    CacheHelper.SetConnectionSettings(UserId, connectionSettings);
                    CacheHelper.SetInstalledComponents(UserId, installedComponents);
                    CacheHelper.SetRequestInfo(UserId, requestInfo);
                }
                else
                {
                    CookieHelper.ClearCookie();
                    CacheHelper.ClearUserCache(UserId);
                }

                return(Json(new
                {
                    success = true,
                    message = string.Empty,
                    connectionSettings = GetJsonString(connectionSettings),
                    installedComponents = GetJsonString(installedComponents),
                    installationProgress = GetJsonString(installationProgress),
                    selectedComponents = GetJsonString(selectedComponents),
                    osInfo = GetJsonString(osInfo)
                }));
            }
            catch (Exception ex)
            {
                LogManager.GetLogger("ASC").Error(ex.Message, ex);

                return(Json(new
                {
                    success = false,
                    message = ex.Message,
                    errorCode = GetErrorCode(ex.Message)
                }));
            }
        }