protected virtual void CacheMetadata(NativeActivityMetadata metadata)
 {
     Activity.ReflectedInformation information = new Activity.ReflectedInformation(this);
     base.SetArgumentsCollection(information.GetArguments(), metadata.CreateEmptyBindings);
     base.SetChildrenCollection(information.GetChildren());
     base.SetDelegatesCollection(information.GetDelegates());
     base.SetVariablesCollection(information.GetVariables());
 }
 internal sealed override void OnInternalCacheMetadata(bool createEmptyBindings)
 {
     Activity activity = null;
     if (this.Implementation != null)
     {
         activity = this.Implementation();
     }
     if (activity != null)
     {
         base.SetImplementationChildrenCollection(new Collection<Activity> { activity });
     }
     this.runtimeImplementation = activity;
     Activity.ReflectedInformation information = new Activity.ReflectedInformation(this);
     base.SetImportedChildrenCollection(information.GetChildren());
     base.SetVariablesCollection(information.GetVariables());
     base.SetImportedDelegatesCollection(information.GetDelegates());
     base.SetArgumentsCollection(information.GetArguments(), createEmptyBindings);
 }