public override void OnFinish(object sender, EventArgs e) { var modelReference = (IModelReference)((DataEntityToken)EntityToken).Data; var newName = GetBinding <string>("Name"); var definition = DefinitionsFacade.GetDefinition(modelReference.Name); DefinitionsFacade.Copy(definition, newName); LocalizationsFacade.CopyNamespace(Localization.KeyPrefix + "." + modelReference.Name, Localization.KeyPrefix + "." + newName, Localization.ResourceSet); CreateSpecificTreeRefresher().PostRefreshMessages(new FormElementProviderEntityToken()); }
protected void Save(IDynamicDefinition definition) { SaveExtraSettings(definition); var token = GetBinding <DataEntityToken>("BoundToken"); var modelReference = (IModelReference)token.Data; var name = GetBinding <string>("Name"); var introText = GetBinding <string>("IntroText"); var successResponse = GetBinding <string>("SuccessResponse"); using (var writer = ResourceFacade.GetResourceWriter()) { writer.AddResource(GetKey("IntroText"), introText); writer.AddResource(GetKey("SuccessResponse"), successResponse); } var isNewName = name != modelReference.Name; if (isNewName) { LocalizationsFacade.RenameNamespace(Localization.KeyPrefix + "." + modelReference.Name, Localization.KeyPrefix + "." + name, Localization.ResourceSet); DefinitionsFacade.Copy(definition, name); DefinitionsFacade.Delete(definition); modelReference = ModelReferenceFacade.GetModelReference(name); token = modelReference.GetDataEntityToken(); UpdateBinding("BoundToken", token); SetSaveStatus(true, token); } else { DefinitionsFacade.Save(definition); SetSaveStatus(true); } CreateParentTreeRefresher().PostRefreshMessages(EntityToken); }