/// <summary> /// Creates a new reactive processing context using the specified proxy objects. /// </summary> /// <param name="expressionServices">Expression tree services.</param> /// <param name="clientProxy">Client-side operation proxy.</param> /// <param name="definitionProxy">Definition operation proxy.</param> /// <param name="metadataProxy">Metadata service proxy.</param> protected ReactiveClientContext(IReactiveExpressionServices expressionServices, ReactiveClientProxy clientProxy, ReactiveDefinitionProxy definitionProxy, ReactiveMetadataProxy metadataProxy) { if (expressionServices == null) { throw new ArgumentNullException(nameof(expressionServices)); } Client = clientProxy; Definition = definitionProxy; Metadata = metadataProxy; var thisParameter = ResourceNaming.GetThisReferenceExpression(this); expressionServices.RegisterObject(this, thisParameter); }
/// <summary> /// Creates a new reactive processing context using the specified service objects. /// </summary> /// <param name="expressionServices">Expression tree services.</param> /// <param name="client">Client-side operation service object.</param> /// <param name="definition">Definition operation service object.</param> /// <param name="metadata">Metadata service object.</param> protected ReactiveServiceContext(IReactiveExpressionServices expressionServices, ReactiveClient client, ReactiveDefinition definition, ReactiveMetadata metadata) { if (expressionServices == null) { throw new ArgumentNullException(nameof(expressionServices)); } Client = client ?? throw new ArgumentNullException(nameof(client)); Definition = definition ?? throw new ArgumentNullException(nameof(definition)); Metadata = metadata ?? throw new ArgumentNullException(nameof(metadata)); var thisParameter = ResourceNaming.GetThisReferenceExpression(this); expressionServices.RegisterObject(this, thisParameter); }