private void finalizeCodeActivity_ExecuteCode(object sender, EventArgs e) { var justAdded = false; var isValid = ValidateBindings(); var helper = GetDataTypeDescriptorFormsHelper(); var newData = GetBinding <IData>("NewData"); if (!BindAndValidate(helper, newData)) { isValid = false; } if (isValid) { if (!BindingExist("DataAdded")) { newData = DataFacade.AddNew(newData); justAdded = true; AcquireLock(newData.GetDataEntityToken()); UpdateBinding("NewData", newData); Bindings.Add("DataAdded", true); PublishControlledHelper.PublishIfNeeded(newData, _doPublish, Bindings, ShowMessage); var specificTreeRefresher = CreateParentTreeRefresher(); specificTreeRefresher.PostRefreshMesseges(EntityToken); } else { var updateTreeRefresher = CreateUpdateTreeRefresher(EntityToken); DataFacade.Update(newData); EntityTokenCacheFacade.ClearCache(newData.GetDataEntityToken()); var published = PublishControlledHelper.PublishIfNeeded(newData, _doPublish, Bindings, ShowMessage); if (!published) { updateTreeRefresher.PostRefreshMesseges(EntityToken); } } } if (justAdded) { SetSaveStatus(true, newData); } else { SetSaveStatus(isValid); } }
private void saveCodeActivity_ExecuteCode(object sender, EventArgs e) { var isValid = ValidateBindings(); var updateTreeRefresher = CreateUpdateTreeRefresher(EntityToken); var helper = GetDataTypeDescriptorFormsHelper(); var data = ((DataEntityToken)EntityToken).Data; if (!BindAndValidate(helper, data)) { isValid = false; } var fieldsWithBrokenReferences = new List <string>(); if (!data.TryValidateForeignKeyIntegrity(fieldsWithBrokenReferences)) { isValid = false; foreach (var fieldName in fieldsWithBrokenReferences) { ShowFieldMessage(fieldName, StringResourceSystemFacade.GetString("Composite.Management", "Validation.BrokenReference")); } } if (isValid) { // published data stayed as published data - change to draft if status is published if (data is IPublishControlled) { var publishControlledData = (IPublishControlled)data; if (publishControlledData.PublicationStatus == GenericPublishProcessController.Published) { publishControlledData.PublicationStatus = GenericPublishProcessController.Draft; } } DataFacade.Update(data); EntityTokenCacheFacade.ClearCache(EntityToken); updateTreeRefresher.PostRefreshMesseges(EntityToken); PublishControlledHelper.PublishIfNeeded(data, _doPublish, Bindings, ShowMessage); SetSaveStatus(true); } else { SetSaveStatus(false); } }
private void saveCodeActivity_UpdateData_ExecuteCode(object sender, EventArgs e) { UpdateTreeRefresher updateTreeRefresher = this.CreateUpdateTreeRefresher(this.EntityToken); IData data = ((DataEntityToken)this.EntityToken).Data; bool isValid = ValidateBindings(); if (!BindAndValidate(this.FormsHelper, data)) { isValid = false; } var fieldsWithBrokenReferences = new List <string>(); if (!data.TryValidateForeignKeyIntegrity(fieldsWithBrokenReferences)) { isValid = false; foreach (string fieldName in fieldsWithBrokenReferences) { ShowFieldMessage(fieldName, LocalizationFiles.Composite_Management.Validation_BrokenReference); } } if (isValid) { if (data is IPublishControlled) { IPublishControlled publishControlledData = (IPublishControlled)data; if (publishControlledData.PublicationStatus == GenericPublishProcessController.Published) { publishControlledData.PublicationStatus = GenericPublishProcessController.Draft; } } DataFacade.Update(data); EntityTokenCacheFacade.ClearCache(EntityToken); updateTreeRefresher.PostRefreshMesseges(this.EntityToken); PublishControlledHelper.PublishIfNeeded(data, _doPublish, Bindings, ShowMessage); } SetSaveStatus(isValid); }
private void saveDataCodeActivity_ExecuteCode(object sender, EventArgs e) { var isValid = ValidateBindings(); var updateTreeRefresher = CreateUpdateTreeRefresher(EntityToken); var helper = GetDataTypeDescriptorFormsHelper(); var data = ((DataEntityToken)EntityToken).Data; if (!BindAndValidate(helper, data)) { isValid = false; } if (isValid) { // published data stayed as published data - change to draft if status is published if (data is IPublishControlled) { var publishControlledData = (IPublishControlled)data; if (publishControlledData.PublicationStatus == GenericPublishProcessController.Published) { publishControlledData.PublicationStatus = GenericPublishProcessController.Draft; } } DataFacade.Update(data); EntityTokenCacheFacade.ClearCache(data.GetDataEntityToken()); var published = PublishControlledHelper.PublishIfNeeded(data, _doPublish, Bindings, ShowMessage); if (!published) { updateTreeRefresher.PostRefreshMesseges(EntityToken); } SetSaveStatus(true); } else { SetSaveStatus(false); } }
private void saveCodeActivity_SaveData_ExecuteCode(object sender, EventArgs e) { Initialize(); bool isValid = ValidateBindings(); IData newData = this.GetBinding <IData>("NewData"); if (!BindAndValidate(FormsHelper, newData)) { isValid = false; } if (!isValid) { SetSaveStatus(false); return; } this.RefreshCurrentEntityToken(); if (!this.BindingExist("DataAdded")) { newData = DataFacade.AddNew(newData); this.AcquireLock(newData.GetDataEntityToken()); this.UpdateBinding("NewData", newData); this.Bindings.Add("DataAdded", true); SetSaveStatus(true, newData); } else { DataFacade.Update(newData); SetSaveStatus(true); } PublishControlledHelper.PublishIfNeeded(newData, _doPublish, Bindings, ShowMessage); }
private void finalizeCodeActivity_ExecuteCode(object sender, EventArgs e) { var dataTypeDescriptor = GetBinding <DataTypeDescriptor>("DataTypeDescriptor"); var newData = GetBinding <IData>("NewData"); var helper = new DataTypeDescriptorFormsHelper(dataTypeDescriptor, true, newData.GetDataEntityToken()); var generatedTypesHelper = new GeneratedTypesHelper(dataTypeDescriptor); helper.AddReadOnlyFields(generatedTypesHelper.NotEditableDataFieldDescriptorNames); var isValid = ValidateBindings(); if (!BindAndValidate(helper, newData)) { isValid = false; } var justAdded = false; if (isValid) { var published = false; if (!BindingExist("DataAdded")) { var dataScopeIdentifier = DataScopeIdentifier.Public; if (dataTypeDescriptor.SuperInterfaces.Contains(typeof(IPublishControlled))) { dataScopeIdentifier = DataScopeIdentifier.Administrated; } using (new DataScope(dataScopeIdentifier)) { newData = DataFacade.AddNew(newData); justAdded = true; } PublishControlledHelper.PublishIfNeeded(newData, _doPublish, Bindings, ShowMessage); AcquireLock(newData.GetDataEntityToken()); UpdateBinding("NewData", newData); Bindings.Add("DataAdded", true); } else { var publishedControlled = newData as IPublishControlled; if (publishedControlled != null) { var refreshedData = (IPublishControlled)DataFacade.GetDataFromDataSourceId(newData.DataSourceId); if (refreshedData != null && refreshedData.PublicationStatus == GenericPublishProcessController.Published) { refreshedData.PublicationStatus = GenericPublishProcessController.Draft; DataFacade.Update(refreshedData); } } DataFacade.Update(newData); published = PublishControlledHelper.PublishIfNeeded(newData, _doPublish, Bindings, ShowMessage); EntityTokenCacheFacade.ClearCache(newData.GetDataEntityToken()); } if (!published) { var specificTreeRefresher = CreateParentTreeRefresher(); specificTreeRefresher.PostRefreshMesseges(EntityToken); } if (justAdded) { SetSaveStatus(true, newData); } else { SetSaveStatus(true); } } else { SetSaveStatus(false); } }