public void Handle (TMessageInternal message) { if (message.NotNull ()) { if (message.IsModule (TResource.TModule.Factory)) { // from parent if (message.Node.IsParentToMe (TChild.List)) { // DatabaseValidated if (message.IsAction (TInternalMessageAction.DatabaseValidated)) { TDispatcher.Invoke (RequestDataDispatcher); } // Response if (message.IsAction (TInternalMessageAction.Response)) { // Collection-Full if (message.Support.Argument.Types.IsOperation (TOperation.Collection, TExtension.Full)) { if (message.Result.IsValid) { // Gadget Material if (message.Support.Argument.Types.IsOperationCategory (TCategory.Material)) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (MaterialCollectionFullDispatcher, action); } } } } } // from sibilig if (message.Node.IsSiblingToMe (TChild.List, TypeInfo)) { // PropertySelect if (message.IsAction (TInternalMessageAction.PropertySelect)) { var propertyName = message.Support.Argument.Args.PropertyName; if (propertyName.Equals ("edit", StringComparison.InvariantCulture)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { TDispatcher.BeginInvoke (EditDispatcher, component); } } if (propertyName.Equals ("GadgetAdd", StringComparison.InvariantCulture) || propertyName.Equals ("GadgetRemove", StringComparison.InvariantCulture)) { Model.PropertyChanged (message.Support.Argument.Args.PropertyName, message.Support.Argument.Types.ReportData.Locked); TDispatcher.Invoke (RefreshAllDispatcher); } } // Reload if (message.IsAction (TInternalMessageAction.Reload)) { // to parent DelegateCommand.PublishInternalMessage.Execute (message); } // Cleanup if (message.IsAction (TInternalMessageAction.Cleanup)) { Model.Cleanup (); TDispatcher.Invoke (RefreshAllDispatcher); } } } } }
public void Handle (TMessageInternal message) { if (message.NotNull ()) { if (message.IsModule (TResource.TModule.Factory)) { // from Sibling if (message.Node.IsSiblingToMe (TChild.Design, TypeInfo)) { // PropertySelect if (message.IsAction (TInternalMessageAction.PropertySelect)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { var propertyName = message.Support.Argument.Args.PropertyName; Model.SelectModel (component); } TDispatcher.Invoke (RefreshDesignDispatcher); } // Request if (message.IsAction (TInternalMessageAction.Request)) { TDispatcher.BeginInvoke (RequestDesignDispatcher, TEntityAction.Request (message.Support.Argument.Types.EntityAction)); } // Cleanup if (message.IsAction (TInternalMessageAction.Cleanup)) { TDispatcher.Invoke (RefreshDesignDispatcher); } } } } }
public void Handle (TMessageInternal message) { if (message.NotNull ()) { if (message.IsModule (TResource.TModule.Collection)) { // from parent if (message.Node.IsParentToMe (TChild.List)) { // DatabaseValidated if (message.IsAction (TInternalMessageAction.DatabaseValidated)) { TDispatcher.Invoke (RequestDataDispatcher); } // Response if (message.IsAction (TInternalMessageAction.Response)) { // Collection-Full if (message.Support.Argument.Types.IsOperation (Server.Models.Infrastructure.TOperation.Collection, Server.Models.Infrastructure.TExtension.Full)) { if (message.Result.IsValid) { // Gadget Target if (message.Support.Argument.Types.IsOperationCategory (Server.Models.Infrastructure.TCategory.Target)) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (ResponseDataDispatcher, action); } // Gadget Material if (message.Support.Argument.Types.IsOperationCategory (Server.Models.Infrastructure.TCategory.Material)) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (RefreshModelDispatcher, action); } } } // Select-ById if (message.Support.Argument.Types.IsOperation (Server.Models.Infrastructure.TOperation.Select, Server.Models.Infrastructure.TExtension.ById)) { if (message.Result.IsValid) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (ResponseModelDispatcher, action); } } } // Reload if (message.IsAction (TInternalMessageAction.Reload)) { TDispatcher.Invoke (RefreshAllDispatcher); TDispatcher.Invoke (RequestDataDispatcher); } } // from sibilig if (message.Node.IsSiblingToMe (TChild.List, TypeInfo)) { // Reload if (message.IsAction (TInternalMessageAction.Reload)) { TDispatcher.Invoke (RefreshAllDispatcher); TDispatcher.Invoke (RequestDataDispatcher); TDispatcher.Invoke (ReloadDispatcher); } } } } }
public void Handle (TMessageInternal message) { if (message.NotNull ()) { if (message.IsModule (TResource.TModule.Factory)) { // from Sibling if (message.Node.IsSiblingToMe (TChild.Design, TypeInfo)) { // PropertySelect if (message.IsAction (TInternalMessageAction.PropertySelect)) { var propertyName = message.Support.Argument.Args.PropertyName; if (propertyName.Equals ("GadgetAdd", StringComparison.InvariantCulture)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { Model.AddModel (component); } TDispatcher.Invoke (RefreshDesignDispatcher); } if (propertyName.Equals ("GadgetRemove", StringComparison.InvariantCulture)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { Model.RemoveModel (component); } TDispatcher.Invoke (RefreshDesignDispatcher); } if (propertyName.Equals ("edit", StringComparison.InvariantCulture)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { Model.Edit (component); } TDispatcher.Invoke (RefreshDesignDispatcher); } var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); if (action.NotNull ()) { action.Param1 = propertyName; TDispatcher.BeginInvoke (PropertySelectDispatcher, action); } } // Cleanup if (message.IsAction (TInternalMessageAction.Cleanup)) { Model.Cleanup (); TDispatcher.Invoke (RefreshDesignDispatcher); } } } } }
public void Handle (TMessageInternal message) { if (message.NotNull ()) { if (message.IsModule (TResource.TModule.Factory)) { // from parent if (message.Node.IsParentToMe (TChild.Property)) { // RefreshModel if (message.IsAction (TInternalMessageAction.RefreshModel)) { TDispatcher.BeginInvoke (RefreshModelDispatcher, TEntityAction.Request (message.Support.Argument.Types.EntityAction)); } // Edit if (message.IsAction (TInternalMessageAction.Edit)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { TDispatcher.BeginInvoke (EditDispatcher, component); } } // EditLeave if (message.IsAction (TInternalMessageAction.EditLeave)) { if (IsViewModeEdit) { OnCancelCommadClicked (); } } // Response if (message.IsAction (TInternalMessageAction.Response)) { // Insert if (message.Support.Argument.Types.IsOperation (TOperation.Insert)) { TDispatcher.Invoke (InsertSuccessDispatcher); } // Change - Full if (message.Support.Argument.Types.IsOperation (TOperation.Change, TExtension.Full)) { TDispatcher.Invoke (ChangeSuccessDispatcher); } } } // from Sibling if (message.Node.IsSiblingToMe (TChild.Property, TypeInfo)) { // Response if (message.IsAction (TInternalMessageAction.Response)) { TDispatcher.BeginInvoke (ResponseModelDispatcher, TEntityAction.Request (message.Support.Argument.Types.EntityAction)); } } } } }
public void Invoke (IModelContext modelContext, IEntityAction entityAction, TExtension extension) { if (modelContext.NotNull ()) { var context = TModelContext.CastTo (modelContext); var relationList = context.CategoryRelation .ToList () ; if (entityAction.NotNull ()) { var action = TEntityAction.Request (entityAction); action.CollectionAction.SetCollection (relationList); if (action.Operation.HasExtension) { switch (extension) { case TExtension.Full: { CollectionFull (context, action); } break; case TExtension.Minimum: { CollectionMinimum (context, action); } break; case TExtension.ById: case TExtension.Idle: case TExtension.Many: case TExtension.Zap: { Models.Infrastructure.THelper.FormatExtensionNotImplementedException (action); } break; } } else { Models.Infrastructure.THelper.FormatExtensionMustExistException (action); } } } }
public void Handle (TMessageInternal message) { if (message.NotNull ()) { if (message.IsModule (TResource.TModule.Factory)) { // from Sibling if (message.Node.IsSiblingToMe (TChild.Design, TypeInfo)) { // PropertySelect if (message.IsAction (TInternalMessageAction.PropertySelect)) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); var propertyName = message.Support.Argument.Args.PropertyName; if (propertyName.Equals ("edit", StringComparison.InvariantCulture)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { Model.SelectModel (component, propertyName); } } else { var component = TActionComponent.Create (TCategory.Target); TActionConverter.Select (TCategory.Target, component, action); Model.SelectModel (component, propertyName); } TDispatcher.Invoke (RefreshDesignDispatcher); } // Request if (message.IsAction (TInternalMessageAction.Request)) { TDispatcher.BeginInvoke (RequestDesignDispatcher, TEntityAction.Request (message.Support.Argument.Types.EntityAction)); } // Cleanup if (message.IsAction (TInternalMessageAction.Cleanup)) { Model.Cleanup (); TDispatcher.Invoke (RefreshDesignDispatcher); } } } } }
public void Invoke (IModelContext modelContext, IEntityAction entityAction, Server.Models.Infrastructure.TExtension extension) { if (modelContext.NotNull ()) { var context = TModelContext.CastTo (modelContext); var relationList = context.CategoryRelation .ToList () ; if (entityAction.NotNull ()) { var action = TEntityAction.Request (entityAction); action.CollectionAction.SetCollection (relationList); if (action.Operation.HasExtension) { Server.Models.Infrastructure.THelper.FormatExtensionNotImplementedException (action); } else { Insert (context, action); } } } }
public void Invoke (IModelContext modelContext, IEntityAction entityAction, TExtension extension) { if (modelContext.NotNull ()) { var context = TModelContext.CastTo (modelContext); var relationList = context.CategoryRelation .ToList () ; if (entityAction.NotNull ()) { var action = TEntityAction.Request (entityAction); action.CollectionAction.SetCollection (relationList); if (action.Operation.HasExtension) { switch (extension) { case TExtension.Settings: { SelectSettings (context, action); } break; case TExtension.ById: { SelectById (context, action); } break; case TExtension.Relation: { SelectRelation (context, action); } break; case TExtension.Many: { SelectMany (context, action); } break; case TExtension.Node: { SelectNode (context, action); } break; case TExtension.Zap: { SelectZap (context, action); } break; case TExtension.Summary: { SelectSummary (context, action); } break; case TExtension.Idle: { //SelectIdle (context, action); } break; case TExtension.Full: { Server.Models.Infrastructure.THelper.FormatExtensionNotImplementedException (action); } break; } } else { Server.Models.Infrastructure.THelper.FormatExtensionMustExistException (action); } } } }
public void Handle (TMessageInternal message) { if (message.NotNull ()) { if (message.IsModule (TResource.TModule.Factory)) { // from parent if (message.Node.IsParentToMe (TChild.Property)) { // RefreshModel if (message.IsAction (TInternalMessageAction.RefreshModel)) { TDispatcher.BeginInvoke (RefreshModelDispatcher, TEntityAction.Request (message.Support.Argument.Types.EntityAction)); } // Edit if (message.IsAction (TInternalMessageAction.Edit)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { TDispatcher.BeginInvoke (EditDispatcher, component); } } // EditLeave if (message.IsAction (TInternalMessageAction.EditLeave)) { if (IsViewModeEdit) { OnCancelCommadClicked (); } } // Modify if (message.IsAction (TInternalMessageAction.Modify)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { TDispatcher.BeginInvoke (ModifyDispatcher, component); } } // Response if (message.IsAction (TInternalMessageAction.Response)) { // Insert if (message.Support.Argument.Types.IsOperation (TOperation.Insert)) { TDispatcher.Invoke (InsertSuccessDispatcher); } // Change - Full if (message.Support.Argument.Types.IsOperation (TOperation.Change, TExtension.Full)) { TDispatcher.Invoke (ChangeSuccessDispatcher); } } } // from Sibling if (message.Node.IsSiblingToMe (TChild.Property, TypeInfo)) { // Response if (message.IsAction (TInternalMessageAction.Response)) { TDispatcher.BeginInvoke (ResponseModelDispatcher, TEntityAction.Request (message.Support.Argument.Types.EntityAction)); } // Response if (message.IsAction (TInternalMessageAction.PropertySelect)) { if (message.Support.Argument.Args.PropertyName.Equals ("RegistrationChanged", StringComparison.InvariantCulture)) { if (message.Support.Argument.Args.Param1 is GadgetRegistration gadget) { Model.Select (gadget); ApplyChanges (); } } } // Back if (message.IsAction (TInternalMessageAction.Back)) { TDispatcher.Invoke (ChangeSuccessDispatcher); } } } } }
public void Handle (TMessageInternal message) { if (message.NotNull ()) { if (message.IsModule (TResource.TModule.Factory)) { // from parent if (message.Node.IsParentToMe (TChild.List)) { // DatabaseValidated if (message.IsAction (TInternalMessageAction.DatabaseValidated)) { TDispatcher.Invoke (RequestDataDispatcher); } // Response if (message.IsAction (TInternalMessageAction.Response)) { // Collection - Full if (message.Support.Argument.Types.IsOperation (TOperation.Collection, TExtension.Full)) { if (message.Result.IsValid) { // Gadget Test if (message.Support.Argument.Types.IsOperationCategory (TCategory.Test)) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (ResponseDataDispatcher, action); } } } // Select - Many if (message.Support.Argument.Types.IsOperation (TOperation.Select, TExtension.Many)) { if (message.Result.IsValid) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (ResponseSelectManyDispatcher, action); } } // Select - ById if (message.Support.Argument.Types.IsOperation (TOperation.Select, TExtension.ById)) { if (message.Result.IsValid) { // Gadget Test if (message.Support.Argument.Types.IsOperationCategory (TCategory.Test)) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (ResponseSelectByIdDispatcher, action); } } } } } // from sibilig if (message.Node.IsSiblingToMe (TChild.List, TypeInfo)) { // Select if (message.IsAction (TInternalMessageAction.Select)) { // material if (message.Support.Argument.Args.Param1 is TActionComponent component) { Model.MaterialItemChanged (component); } TDispatcher.Invoke (RefreshAllDispatcher); } // PropertySelect if (message.IsAction (TInternalMessageAction.PropertySelect)) { if (message.Support.Argument.Args.PropertyName.Equals ("edit", StringComparison.InvariantCulture)) { if (message.Support.Argument.Args.Param1 is TActionComponent component) { TDispatcher.BeginInvoke (EditDispatcher, component); } } } // Request if (message.IsAction (TInternalMessageAction.Request)) { TDispatcher.BeginInvoke (RequestDesignDispatcher, TEntityAction.Request (message.Support.Argument.Types.EntityAction)); } // Cleanup if (message.IsAction (TInternalMessageAction.Cleanup)) { Model.Cleanup (); TDispatcher.Invoke (RefreshAllDispatcher); TDispatcher.Invoke (RequestDataDispatcher); } } } } }
public override void ProcessMessage (TMessageModule message) { if (message.NotNull ()) { // services if (message.IsModule (TResource.TModule.Services)) { SelectAuthentication (message.Support.Argument.Types.Authentication); // SettingsValidated if (message.IsAction (TMessageAction.SettingsValidated)) { // Success if (message.Support.IsActionStatus (TActionStatus.Success)) { TDispatcher.Invoke (DatabaseSettingsSuccessDispatcher); } // Error if (message.Support.IsActionStatus (TActionStatus.Error)) { TDispatcher.Invoke (DatabaseSettingsErrorDispatcher); } } // Response if (message.IsAction (TMessageAction.Response)) { // (Select - Settings) if (message.Support.Argument.Types.IsOperation (TOperation.Select, TExtension.Settings)) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (SelectSettingsDispatcher, action); } // (Change - Settings) if (message.Support.Argument.Types.IsOperation (TOperation.Change, TExtension.Settings)) { var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); TDispatcher.BeginInvoke (SelectSettingsDispatcher, action); } } } // factory if (message.IsModule (TResource.TModule.Factory)) { // Changed if (message.IsAction (TMessageAction.Changed)) { Model.Lock (); Model.ShowPanels (); Model.SnackbarContent.SetMessage (Properties.Resource.RES_VALIDATING); ApplyChanges (); TDispatcher.Invoke (OpenSnackbarDispatcher); TDispatcher.BeginInvoke (SaveSettingsDispatcher, message.Support.Argument.Types.ConnectionData); } // Authentication if (message.IsAction (TMessageAction.Authentication)) { Model.Lock (); Model.ShowPanels (); Model.SnackbarContent.SetMessage (Properties.Resource.RES_VALIDATING); ApplyChanges (); TDispatcher.Invoke (OpenSnackbarDispatcher); TDispatcher.BeginInvoke (ChangeAuthenticationDispatcher, message.Support.Argument.Types.Authentication); } // Request if (message.IsAction (TMessageAction.Request)) { Model.Lock (); Model.ShowPanels (); Model.SnackbarContent.SetMessage (Properties.Resource.RES_VALIDATING); ApplyChanges (); TDispatcher.Invoke (OpenSnackbarDispatcher); var action = TEntityAction.Request (message.Support.Argument.Types.EntityAction); var msg = new TShellMessage (TMessageAction.Request, TypeInfo); msg.Support.Argument.Types.Select (action); DelegateCommand.PublishModuleMessage.Execute (msg); } } } }