protected override void CacheMetadata(ActivityMetadata metadata) { if (string.IsNullOrEmpty(this.OperationName)) { metadata.AddValidationError(System.ServiceModel.Activities.SR.MissingOperationName(base.DisplayName)); } MessagingActivityHelper.ValidateCorrelationInitializer(metadata, this.correlationInitializers, false, base.DisplayName, this.OperationName); MessagingActivityHelper.AddRuntimeArgument(this.CorrelatesWith, "CorrelatesWith", Constants.CorrelationHandleType, ArgumentDirection.In, metadata); this.InternalContent.CacheMetadata(metadata, this, this.OperationName); if (this.correlationInitializers != null) { for (int i = 0; i < this.correlationInitializers.Count; i++) { CorrelationInitializer initializer = this.correlationInitializers[i]; initializer.ArgumentName = "Parameter" + i; RuntimeArgument argument = new RuntimeArgument(initializer.ArgumentName, Constants.CorrelationHandleType, ArgumentDirection.In); metadata.Bind(initializer.CorrelationHandle, argument); metadata.AddArgument(argument); } } if (!metadata.HasViolations) { this.internalReceive = this.CreateInternalReceive(); this.InternalContent.ConfigureInternalReceive(this.internalReceive, out this.requestFormatter); } else { this.internalReceive = null; this.requestFormatter = null; } }
protected override void CacheMetadata(ActivityMetadata metadata) { if (string.IsNullOrEmpty(this.OperationName)) { metadata.AddValidationError(System.ServiceModel.Activities.SR.MissingOperationName(base.DisplayName)); } MessagingActivityHelper.ValidateCorrelationInitializer(metadata, this.correlationInitializers, false, base.DisplayName, this.OperationName); MessagingActivityHelper.AddRuntimeArgument(this.CorrelatesWith, "CorrelatesWith", Constants.CorrelationHandleType, ArgumentDirection.In, metadata); this.InternalContent.CacheMetadata(metadata, this, this.OperationName); if (this.correlationInitializers != null) { for (int i = 0; i < this.correlationInitializers.Count; i++) { CorrelationInitializer initializer = this.correlationInitializers[i]; initializer.ArgumentName = "Parameter" + i; RuntimeArgument argument = new RuntimeArgument(initializer.ArgumentName, Constants.CorrelationHandleType, ArgumentDirection.In); metadata.Bind(initializer.CorrelationHandle, argument); metadata.AddArgument(argument); } } if (!metadata.HasViolations) { this.internalReceive = this.CreateInternalReceive(); this.InternalContent.ConfigureInternalReceive(this.internalReceive, out this.requestFormatter); } else { this.internalReceive = null; this.requestFormatter = null; } }
internal override void ConfigureInternalReceive(InternalReceiveMessage internalReceiveMessage, out FromRequest requestFormatter) { requestFormatter = new FromRequest(); foreach (KeyValuePair <string, OutArgument> parameter in this.Parameters) { requestFormatter.Parameters.Add(OutArgument.CreateReference(parameter.Value, parameter.Key)); } }
internal override void ConfigureInternalReceive(InternalReceiveMessage internalReceiveMessage, out FromRequest requestFormatter) { requestFormatter = new FromRequest(); foreach (KeyValuePair<string, OutArgument> pair in this.Parameters) { requestFormatter.Parameters.Add(OutArgument.CreateReference(pair.Value, pair.Key)); } }
internal override void ConfigureInternalReceive(InternalReceiveMessage internalReceiveMessage, out FromRequest requestFormatter) { if (this.InternalDeclaredMessageType == MessageDescription.TypeOfUntypedMessage) { internalReceiveMessage.Message = new OutArgument<System.ServiceModel.Channels.Message>(context => ((OutArgument<System.ServiceModel.Channels.Message>) this.Message).Get(context)); requestFormatter = null; } else { requestFormatter = new FromRequest(); if (this.Message != null) { requestFormatter.Parameters.Add(OutArgument.CreateReference(this.Message, "Message")); } } }
internal override void ConfigureInternalReceive(InternalReceiveMessage internalReceiveMessage, out FromRequest requestFormatter) { if (this.InternalDeclaredMessageType == MessageDescription.TypeOfUntypedMessage) { internalReceiveMessage.Message = new OutArgument <Message>(context => ((OutArgument <Message>) this.Message).Get(context)); requestFormatter = null; } else { requestFormatter = new FromRequest(); if (this.Message != null) { requestFormatter.Parameters.Add(OutArgument.CreateReference(this.Message, "Message")); } } }
internal abstract void ConfigureInternalReceive(InternalReceiveMessage internalReceiveMessage, out FromRequest requestFormatter);
internal abstract void ConfigureInternalReceive(InternalReceiveMessage internalReceiveMessage, out FromRequest requestFormatter);