protected void OnApplicationPoolValidate(object source, ServerValidateEventArgs e)
        {
            if (e != null && e.IsValid)
            {
                string uniqueID    = DialogMaster.OkButton.UniqueID;
                string eventTarget = Request.Params["__EVENTTARGET"];

                if (!string.IsNullOrEmpty(eventTarget) && eventTarget == uniqueID)
                {
                    try
                    {
                        IisWebServiceApplicationPoolSection section = ApplicationPoolSection as IisWebServiceApplicationPoolSection;
                        _applicationPool = (section == null) ? null : section.GetOrCreateApplicationPool();
                    }
                    catch (Exception ex)
                    {
                        if (ex is SPDuplicateObjectException)
                        {
                            ApplicationPoolValidator.ErrorMessage = "Application Pool with the given name already exists";
                        }
                        else
                        {
                            ApplicationPoolValidator.ErrorMessage = "Application Pool could not be created";
                        }

                        e.IsValid = false;
                    }
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Creates the service application.
        /// </summary>
        private void CreateApplication()
        {
            using (SPLongOperation operation = new SPLongOperation(this))
            {
                operation.LeadingHTML  = HttpContext.GetGlobalResourceObject("ClubCloud.Service.ServiceAdminResources", "CreateOperationLeadingHtml", CultureInfo.CurrentCulture).ToString();
                operation.TrailingHTML = HttpContext.GetGlobalResourceObject("ClubCloud.Service.ServiceAdminResources", "CreateOperationTrailingHtml", CultureInfo.CurrentCulture).ToString();
                operation.Begin();

                try
                {
                    ClubCloudService      service      = ClubCloudService.GetOrCreateService();
                    ClubCloudServiceProxy serviceProxy = ClubCloudServiceProxy.GetOrCreateServiceProxy();

                    // Create the application pool
                    IisWebServiceApplicationPoolSection applicationPoolSectionCasted = this.applicationPoolSection as IisWebServiceApplicationPoolSection;
                    SPIisWebServiceApplicationPool      applicationPool = applicationPoolSectionCasted.GetOrCreateApplicationPool();

                    // Create the service application
                    ClubCloudServiceApplication application = new ClubCloudServiceApplication(
                        this.textBoxServiceName.Text.Trim(),
                        service,
                        applicationPool);
                    application.Update();
                    application.Provision();

                    // Create the service application proxy
                    ClubCloudServiceApplicationProxy proxy = new ClubCloudServiceApplicationProxy(
                        string.Format(
                            CultureInfo.CurrentCulture,
                            HttpContext.GetGlobalResourceObject("ClubCloud.Service.ServiceAdminResources", "ServiceApplicationProxyNameTemplate", CultureInfo.CurrentCulture).ToString(),
                            this.textBoxServiceName.Text.Trim()),
                        serviceProxy,
                        application.Uri);
                    proxy.Update();
                    proxy.Provision();

                    if (this.checkBoxIncludeInDefaultProxy.Checked)
                    {
                        SPServiceApplicationProxyGroup group = SPServiceApplicationProxyGroup.Default;
                        group.Add(proxy);
                        group.Update();
                    }

                    operation.EndScript("window.frameElement.commitPopup();");
                }
                catch (Exception ex)
                {
                    SPUtility.TransferToErrorPage(ex.ToString());
                }
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Click event.
        /// </summary>
        /// <param name="sender">The Sender.</param>
        /// <param name="e">The EventArgs.</param>
        protected void OkButton_Click(object sender, EventArgs e)
        {
            this.Validate();

            if (this.IsValid)
            {
                using (SPLongOperation operation = new SPLongOperation(this))
                {
                    operation.Begin();
                    this.ServiceApplication.Name = this.textBoxServiceName.Text.Trim();
                    IisWebServiceApplicationPoolSection iisSection = this.applicationPoolSection as IisWebServiceApplicationPoolSection;
                    this.ServiceApplication.ApplicationPool = iisSection.GetOrCreateApplicationPool();
                    this.ServiceApplication.Update();
                    operation.EndScript("window.frameElement.commitPopup();");
                }
            }
        }