Esempio n. 1
0
    void ResultChangedDispatcher (GadgetResult gadget)
    {
      if (gadget.IsNull ()) {
        // to Sibling (Cleanup)
        var message = new TCollectionSiblingMessageInternal (TInternalMessageAction.Cleanup, TChild.List, TypeInfo);
        DelegateCommand.PublishInternalMessage.Execute (message);
      }

      else {
        // to Sibling (Select)
        var component = TActionComponent.Create (TCategory.Result);
        component.Models.GadgetResultModel.CopyFrom (gadget);
        
        var materialDictionary = new Dictionary<Guid, GadgetMaterial> ();
        Model.RequestMaterial (materialDictionary);

        var message = new TCollectionSiblingMessageInternal (TInternalMessageAction.Select, TChild.List, TypeInfo);
        message.Support.Argument.Args.Select (component, materialDictionary);

        DelegateCommand.PublishInternalMessage.Execute (message);
      }
    }
Esempio n. 2
0
    public void Request (GadgetResult gadget)
    {
      if (gadget.NotNull ()) {
        var category = TCategoryType.FromValue (Category);

        // Registration
        if (category.Equals (TCategory.Registration)) {
          var gadgetRegistration = GadgetRegistration.CreateDefault;
          RequestData (gadgetRegistration);

          gadget.AddContent (gadgetRegistration);
        }

        // Test
        if (category.Equals (TCategory.Test)) {
          var gadgetTest = GadgetTest.CreateDefault;
          Request (this, gadgetTest);
 
          gadget.AddContent (gadgetTest);
        }
      }
    }
Esempio n. 3
0
 public void OnResultChanged (GadgetResult gadget)
 {
   TDispatcher.BeginInvoke (ResultChangedDispatcher, gadget);
 }