protected void Page_Load(object sender, EventArgs e)
        {
            Int64 environmentId;

            String environmentName;

            if (Session["Mercury.Application"] == null)
            {
                Response.RedirectLocation = "/SessionExpired.aspx";

                return;
            }


            application = (Mercury.Client.Application)Session["Mercury.Application"];

            if (!application.HasEnterprisePermission(ManagePermission))
            {
                if (!IsPostBack)
                {
                    Server.Transfer("/PermissionDenied.aspx");
                }

                else
                {
                    Response.RedirectLocation = "/PermissionDenied.aspx";
                }

                return;
            }

            ButtonOk.Click += new EventHandler(this.ButtonOk_OnClick);

            ButtonCancel.Click += new EventHandler(this.ButtonCancel_OnClick);

            if ((application != null) && (!Page.IsPostBack))
            {
                environmentName = Request.QueryString["EnvironmentName"];

                environmentId = 0;

                Session.Add(SessionCachePrefix + "EnvironmentName", environmentName);


                System.Collections.Generic.Dictionary <Int64, String> environmentDictionary = application.EnvironmentDictionary(false);

                foreach (Int64 currentKey in environmentDictionary.Keys)
                {
                    if (environmentDictionary[currentKey] == environmentName)
                    {
                        environmentId = currentKey;

                        Session.Add(SessionCachePrefix + "EnvironmentId", currentKey);

                        break;
                    }
                }

                if (environmentId != 0)
                {
                    environment = application.EnvironmentGet(environmentId);
                }

                else
                {
                    Server.Transfer("/PermissionDenied.aspx");
                }

                Session[SessionCachePrefix + "Environment"] = environment;

                UiEnvironmentName.Text = environment.Name;

                Page.Title = "Delete Environment: " + environment.Name;
            } // Initial Page Load

            else   // Postback

            {
                environment = (Mercury.Server.Application.Environment)Session[SessionCachePrefix + "Environment"];
            }
        } // Page_Load
        protected Boolean ApplyChanges()
        {
            Boolean isModified = false;

            Boolean success = false;

            Int32 poolSizeValue = 0;

            if (!ValidatedValues())
            {
                return(false);
            }

            try {
                environment = (Mercury.Server.Application.Environment)Session[SessionCachePrefix + "Environment" + SessionCacheSuffix];


                if (environment.Id == 0)
                {
                    isModified = true;
                }                                                // new entry

                isModified = isModified || CompareStringValues(environment.Name, EnvironmentName.Text);

                environment.Name = EnvironmentName.Text;

                isModified = isModified || CompareStringValues(environment.ConfidentialityStatement, EnvironmentConfidentialityStatement.Text);

                environment.ConfidentialityStatement = EnvironmentConfidentialityStatement.Text;


                isModified = isModified || CompareStringValues(environment.SqlConfiguration.ServerName, EnvironmentSqlServerName.Text);

                environment.SqlConfiguration.ServerName = EnvironmentSqlServerName.Text;

                isModified = isModified || CompareStringValues(environment.SqlConfiguration.DatabaseName, EnvironmentSqlDatabaseName.Text);

                environment.SqlConfiguration.DatabaseName = EnvironmentSqlDatabaseName.Text;


                isModified = isModified || CompareStringValues(environment.SqlConfiguration.UseTrustedConnection.ToString(), EnvironmentSqlUseTrustedConnection.Checked.ToString());

                environment.SqlConfiguration.UseTrustedConnection = EnvironmentSqlUseTrustedConnection.Checked;

                isModified = isModified || CompareStringValues(environment.SqlConfiguration.SqlUserName, EnvironmentSqlUserName.Text);

                environment.SqlConfiguration.SqlUserName = EnvironmentSqlUserName.Text;


                isModified = isModified || (EnvironmentSqlUserPassword.Text.Length > 0);

                if (EnvironmentSqlUserPassword.Text == EnvironmentSqlUserConfirmPassword.Text)
                {
                    environment.SqlConfiguration.SqlUserPassword = EnvironmentSqlUserPassword.Text;
                }

                else
                {
                    SaveResponseLabel.Text = "Confirmation Password does not match.";

                    return(false);
                }


                isModified = isModified || CompareStringValues(environment.SqlConfiguration.PoolingEnabled.ToString(), EnvironmentSqlUseConnectionPooling.Checked.ToString());

                environment.SqlConfiguration.PoolingEnabled = EnvironmentSqlUseConnectionPooling.Checked;

                isModified = isModified || CompareStringValues(environment.SqlConfiguration.PoolSizeMinimum.ToString(), EnvironmentSqlPoolSizeMinimum.Text);

                environment.SqlConfiguration.PoolSizeMinimum = (Int32.TryParse(EnvironmentSqlPoolSizeMinimum.Text, out poolSizeValue)) ? poolSizeValue : 0;

                isModified = isModified || CompareStringValues(environment.SqlConfiguration.PoolSizeMaximum.ToString(), EnvironmentSqlPoolSizeMaximum.Text);

                environment.SqlConfiguration.PoolSizeMaximum = (Int32.TryParse(EnvironmentSqlPoolSizeMaximum.Text, out poolSizeValue)) ? poolSizeValue : 0;


                if ((environment.SqlConfiguration.PoolSizeMaximum < environment.SqlConfiguration.PoolSizeMinimum) && (environment.SqlConfiguration.PoolingEnabled))
                {
                    SaveResponseLabel.Text = "Invalid Pool Size Configuration.";

                    return(false);
                }


                isModified = isModified || CompareStringValues(environment.SqlConfiguration.CustomAttributes, EnvironmentSqlCustomAttributes.Text);

                environment.SqlConfiguration.CustomAttributes = EnvironmentSqlCustomAttributes.Text;


                if (isModified)
                {
                    success = application.EnvironmentSave(environment);

                    if (success)
                    {
                        environment = application.EnvironmentGet(environment.Name);

                        Session[SessionCachePrefix + "Environment" + SessionCacheSuffix] = environment;

                        SaveResponseLabel.Text = "Save Successful.";

                        Initialize_GeneralPage();
                    }

                    else
                    {
                        SaveResponseLabel.Text = "Unable to Save Service.";

                        if (application.LastException != null)
                        {
                            SaveResponseLabel.Text = SaveResponseLabel.Text + " [" + application.LastException.Message + "]";
                        }
                    }
                }

                else
                {
                    success = true;
                }
            }

            catch (Exception accessViolation) {
                SaveResponseLabel.Text = "Unable to Save Service.";

                SaveResponseLabel.Text = SaveResponseLabel.Text + " [" + accessViolation.Message + "]";

                success = false;
            }

            return(success);
        }
Ejemplo n.º 3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            String environmentName;

            String roleName;


            if (Session["Mercury.Application"] == null)
            {
                Response.RedirectLocation = "/SessionExpired.aspx"; return;
            }

            application = (Mercury.Client.Application)Session["Mercury.Application"];

            if (!application.HasEnterprisePermission(Mercury.Server.EnterprisePermissions.EnvironmentReview))
            {
                if (!IsPostBack)
                {
                    Server.Transfer("/PermissionDenied.aspx");
                }

                else
                {
                    Response.RedirectLocation = "/PermissionDenied.aspx";
                }

                return;
            }

            ButtonApply.Click += new EventHandler(this.ButtonApply_OnClick);

            ButtonOk.Click += new EventHandler(this.ButtonOk_OnClick);

            ButtonCancel.Click += new EventHandler(this.ButtonCancel_OnClick);

            if ((application != null) && (!Page.IsPostBack))
            {
                #region Initial Page Load

                SessionCachePrefix = Form.Name;

                PageInstanceId.Text = Guid.NewGuid().ToString().Replace("-", "");

                SessionCacheSuffix = PageInstanceId.Text;


                environmentName = Request.QueryString["EnvironmentName"];

                roleName = Request.QueryString["RoleName"];


                environment = application.EnvironmentGet(environmentName);

                environmentRole = application.EnvironmentRoleGet(environmentName, roleName);

                if ((environmentRole == null) && !(roleName == String.Empty))
                {
                    Server.Transfer("/PermissionDenied.aspx");
                }

                else if (environmentRole == null)
                {
                    environmentRole = new Mercury.Client.Environment.Role(application);

                    environmentRole.Name = String.Empty;

                    environmentRole.Description = String.Empty;

                    environmentRole.CreateAccountInfo = new Mercury.Server.Application.AuthorityAccountStamp();

                    environmentRole.CreateAccountInfo.ActionDate = EnvironmentRoleCreateDate.MinDate;

                    environmentRole.ModifiedAccountInfo = new Mercury.Server.Application.AuthorityAccountStamp();

                    environmentRole.ModifiedAccountInfo.ActionDate = EnvironmentRoleModifiedDate.MinDate;
                }


                Session.Add(SessionCachePrefix + "Environment" + SessionCacheSuffix, environment);

                Session.Add(SessionCachePrefix + "EnvironmentRole" + SessionCacheSuffix, environmentRole);

                Session.Add(SessionCachePrefix + "EnvironmentRoleUnmodified" + SessionCacheSuffix, environmentRole.Copy());


                Initialize_GeneralPage();

                if (application.HasEnvironmentPermission(environment.Name, Mercury.Server.EnvironmentPermissions.RoleReview))
                {
                    // Initialize Enterprise Permission and Environment Access

                    Initialize_RolePermissions();

                    Initialize_RoleMembership();

                    Initialize_SecurityAuthoritySelection();

                    Initialize_SecurityGroupSelection();
                }

                else
                {
                    PropertiesTab.Tabs[1].Visible = false;

                    PropertiesContent.PageViews[1].Visible = false;

                    PropertiesTab.Tabs[2].Visible = false;

                    PropertiesContent.PageViews[2].Visible = false;
                }

                #endregion
            } // Initial Page Load

            else   // Postback

            {
                SessionCachePrefix = Form.Name;

                SessionCacheSuffix = PageInstanceId.Text;

                environment = (Mercury.Server.Application.Environment)Session[SessionCachePrefix + "Environment" + SessionCacheSuffix];

                environmentRole = (Client.Environment.Role)Session[SessionCachePrefix + "EnvironmentRole" + SessionCacheSuffix];
            }

            return;
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            Int64 environmentId;

            String environmentName;


            if (Session["Mercury.Application"] == null)
            {
                Response.RedirectLocation = "/SessionExpired.aspx"; return;
            }

            application = (Mercury.Client.Application)Session["Mercury.Application"];

            if (!application.HasEnterprisePermission(Mercury.Server.EnterprisePermissions.EnvironmentReview))
            {
                if (!IsPostBack)
                {
                    Server.Transfer("/PermissionDenied.aspx");
                }

                else
                {
                    Response.RedirectLocation = "/PermissionDenied.aspx";
                }

                return;
            }


            if ((application != null) && (!Page.IsPostBack))
            {
                #region Initial Page Load

                SessionCachePrefix = Form.Name;

                PageInstanceId.Text = Guid.NewGuid().ToString().Replace("-", "");

                SessionCacheSuffix = PageInstanceId.Text;


                environmentName = Request.QueryString["EnvironmentName"];

                environmentId = 0;

                Session.Add(SessionCachePrefix + "EnvironmentName", environmentName);


                System.Collections.Generic.Dictionary <Int64, String> environmentDictionary = application.EnvironmentDictionary(false);

                foreach (Int64 currentKey in environmentDictionary.Keys)
                {
                    if (environmentDictionary[currentKey] == environmentName)
                    {
                        environmentId = currentKey;

                        Session.Add(SessionCachePrefix + "EnvironmentId" + SessionCacheSuffix, currentKey);

                        break;
                    }
                }

                if (environmentId != 0)
                {
                    environment = application.EnvironmentGet(environmentName);

                    Page.Title = "Environment Properties";

                    Page.Title = Page.Title + " (" + environmentName + ")";
                }

                else
                {
                    Session.Add(SessionCachePrefix + "EnvironmentId" + SessionCacheSuffix, 0);

                    environment = new Mercury.Server.Application.Environment();

                    environment.SqlConfiguration = new Mercury.Server.Application.SqlConfiguration();

                    environment.CreateAccountInfo = new Mercury.Server.Application.AuthorityAccountStamp();

                    environment.ModifiedAccountInfo = new Mercury.Server.Application.AuthorityAccountStamp();


                    Page.Title = "New Environment";

                    if (!application.HasEnterprisePermission(Mercury.Server.EnterprisePermissions.EnvironmentManage))
                    {
                        Server.Transfer("/PermissionDenied.aspx");
                    }
                }

                Session[SessionCachePrefix + "Environment" + SessionCacheSuffix] = environment;

                if (environmentId != 0)
                {
                    Initialize_GeneralPage();
                }

                ApplySecurity();

                #endregion
            } // Initial Page Load

            else   // Postback

            {
                SessionCachePrefix = Form.Name;

                SessionCacheSuffix = PageInstanceId.Text;


                environmentId = Int64.Parse(Session[SessionCachePrefix + "EnvironmentId" + SessionCacheSuffix].ToString());

                environmentName = (String)Session[SessionCachePrefix + "EnvironmentName" + SessionCacheSuffix];

                environment = (Mercury.Server.Application.Environment)Session[SessionCachePrefix + "Environment" + SessionCacheSuffix];
            }

            return;
        }