/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the cleanrooms-2022-02-17.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.CleanRooms.Model { /// /// Enables query structure and specified queries that produce aggregate statistics. /// public partial class AnalysisRuleAggregation { private List _aggregateColumns = new List(); private List _allowedJoinOperators = new List(); private List _dimensionColumns = new List(); private List _joinColumns = new List(); private JoinRequiredOption _joinRequired; private List _outputConstraints = new List(); private List _scalarFunctions = new List(); /// /// Gets and sets the property AggregateColumns. /// /// The columns that query runners are allowed to use in aggregation queries. /// /// [AWSProperty(Required=true, Min=1)] public List AggregateColumns { get { return this._aggregateColumns; } set { this._aggregateColumns = value; } } // Check to see if AggregateColumns property is set internal bool IsSetAggregateColumns() { return this._aggregateColumns != null && this._aggregateColumns.Count > 0; } /// /// Gets and sets the property AllowedJoinOperators. /// /// Which logical operators (if any) are to be used in an INNER JOIN match condition. /// Default is AND. /// /// [AWSProperty(Min=0, Max=2)] public List AllowedJoinOperators { get { return this._allowedJoinOperators; } set { this._allowedJoinOperators = value; } } // Check to see if AllowedJoinOperators property is set internal bool IsSetAllowedJoinOperators() { return this._allowedJoinOperators != null && this._allowedJoinOperators.Count > 0; } /// /// Gets and sets the property DimensionColumns. /// /// The columns that query runners are allowed to select, group by, or filter by. /// /// [AWSProperty(Required=true)] public List DimensionColumns { get { return this._dimensionColumns; } set { this._dimensionColumns = value; } } // Check to see if DimensionColumns property is set internal bool IsSetDimensionColumns() { return this._dimensionColumns != null && this._dimensionColumns.Count > 0; } /// /// Gets and sets the property JoinColumns. /// /// Columns in configured table that can be used in join statements and/or as aggregate /// columns. They can never be outputted directly. /// /// [AWSProperty(Required=true)] public List JoinColumns { get { return this._joinColumns; } set { this._joinColumns = value; } } // Check to see if JoinColumns property is set internal bool IsSetJoinColumns() { return this._joinColumns != null && this._joinColumns.Count > 0; } /// /// Gets and sets the property JoinRequired. /// /// Control that requires member who runs query to do a join with their configured table /// and/or other configured table in query. /// /// public JoinRequiredOption JoinRequired { get { return this._joinRequired; } set { this._joinRequired = value; } } // Check to see if JoinRequired property is set internal bool IsSetJoinRequired() { return this._joinRequired != null; } /// /// Gets and sets the property OutputConstraints. /// /// Columns that must meet a specific threshold value (after an aggregation function is /// applied to it) for each output row to be returned. /// /// [AWSProperty(Required=true, Min=1)] public List OutputConstraints { get { return this._outputConstraints; } set { this._outputConstraints = value; } } // Check to see if OutputConstraints property is set internal bool IsSetOutputConstraints() { return this._outputConstraints != null && this._outputConstraints.Count > 0; } /// /// Gets and sets the property ScalarFunctions. /// /// Set of scalar functions that are allowed to be used on dimension columns and the output /// of aggregation of metrics. /// /// [AWSProperty(Required=true)] public List ScalarFunctions { get { return this._scalarFunctions; } set { this._scalarFunctions = value; } } // Check to see if ScalarFunctions property is set internal bool IsSetScalarFunctions() { return this._scalarFunctions != null && this._scalarFunctions.Count > 0; } } }