/// <summary>
 /// Initializes a new instance of the <see cref="ConfigurationRecipeSnippet" /> class.
 /// </summary>
 /// <param name="aggregationOptions">aggregationOptions.</param>
 /// <param name="modelRules">The set of model rules that are available. There may be multiple rules for Vendors, but only one per model-instrument pair.  Which of these preference sets is used depends upon the model choice selection if specified, or failing that the global default model specification  in the options..</param>
 /// <param name="pricingOptions">pricingOptions.</param>
 /// <param name="marketRules">The set of rules that define how to resolve particular use cases. These can be relatively general or specific in nature.  Nominally any number are possible and will be processed in order where applicable. However, there is evidently a potential  for increased computational cost where many rules must be applied to resolve data. Ensuring that portfolios are structured in  such a way as to reduce the number of rules required is therefore sensible..</param>
 /// <param name="marketOptions">marketOptions.</param>
 /// <param name="recipe">recipe.</param>
 public ConfigurationRecipeSnippet(AggregationOptions aggregationOptions = default(AggregationOptions), List <VendorModelRule> modelRules = default(List <VendorModelRule>), PricingOptions pricingOptions = default(PricingOptions), List <MarketDataKeyRule> marketRules = default(List <MarketDataKeyRule>), MarketOptions marketOptions = default(MarketOptions), ConfigurationRecipe recipe = default(ConfigurationRecipe))
 {
     this.AggregationOptions = aggregationOptions;
     this.ModelRules         = modelRules;
     this.PricingOptions     = pricingOptions;
     this.MarketRules        = marketRules;
     this.MarketOptions      = marketOptions;
     this.Recipe             = recipe;
 }
Esempio n. 2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="AggregationContext" /> class.
 /// </summary>
 /// <param name="options">options.</param>
 public AggregationContext(AggregationOptions options = default(AggregationOptions))
 {
     this.Options = options;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="ConfigurationRecipeSnippet" /> class.
        /// </summary>
        /// <param name="scope">The scope used when updating or inserting the Configuration Recipe snippet (required).</param>
        /// <param name="code">User given string name (code) to identify the recipe. (required).</param>
        /// <param name="aggregationOptions">aggregationOptions.</param>
        /// <param name="modelRules">The set of model rules that are available. There may be multiple rules for Vendors, but only one per model-instrument pair.  Which of these preference sets is used depends upon the model choice selection if specified, or failing that the global default model specification  in the options..</param>
        /// <param name="pricingOptions">pricingOptions.</param>
        /// <param name="marketRules">The set of rules that define how to resolve particular use cases. These can be relatively general or specific in nature.  Nominally any number are possible and will be processed in order where applicable. However, there is evidently a potential  for increased computational cost where many rules must be applied to resolve data. Ensuring that portfolios are structured in  such a way as to reduce the number of rules required is therefore sensible..</param>
        /// <param name="marketOptions">marketOptions.</param>
        /// <param name="recipe">recipe.</param>
        public ConfigurationRecipeSnippet(string scope = default(string), string code = default(string), AggregationOptions aggregationOptions = default(AggregationOptions), List <VendorModelRule> modelRules = default(List <VendorModelRule>), PricingOptions pricingOptions = default(PricingOptions), List <MarketDataKeyRule> marketRules = default(List <MarketDataKeyRule>), MarketOptions marketOptions = default(MarketOptions), ConfigurationRecipe recipe = default(ConfigurationRecipe))
        {
            // to ensure "scope" is required (not null)
            if (scope == null)
            {
                throw new InvalidDataException("scope is a required property for ConfigurationRecipeSnippet and cannot be null");
            }
            else
            {
                this.Scope = scope;
            }

            // to ensure "code" is required (not null)
            if (code == null)
            {
                throw new InvalidDataException("code is a required property for ConfigurationRecipeSnippet and cannot be null");
            }
            else
            {
                this.Code = code;
            }

            this.ModelRules         = modelRules;
            this.MarketRules        = marketRules;
            this.AggregationOptions = aggregationOptions;
            this.ModelRules         = modelRules;
            this.PricingOptions     = pricingOptions;
            this.MarketRules        = marketRules;
            this.MarketOptions      = marketOptions;
            this.Recipe             = recipe;
        }