예제 #1
0
        /// <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);
        }