/*
* 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 sagemaker-2017-07-24.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.SageMaker.Model
{
///
/// Container for the parameters to the Search operation.
/// Finds SageMaker resources that match a search query. Matching resources are returned
/// as a list of SearchRecord
objects in the response. You can sort the search
/// results by any resource property in a ascending or descending order.
///
///
///
/// You can query against the following value types: numeric, text, Boolean, and timestamp.
///
///
///
/// The Search API may provide access to otherwise restricted data. See Amazon
/// SageMaker API Permissions: Actions, Permissions, and Resources Reference for more
/// information.
///
///
///
public partial class SearchRequest : AmazonSageMakerRequest
{
private CrossAccountFilterOption _crossAccountFilterOption;
private int? _maxResults;
private string _nextToken;
private ResourceType _resource;
private SearchExpression _searchExpression;
private string _sortBy;
private SearchSortOrder _sortOrder;
///
/// Gets and sets the property CrossAccountFilterOption.
///
/// A cross account filter option. When the value is "CrossAccount"
the
/// search results will only include resources made discoverable to you from other accounts.
/// When the value is "SameAccount"
or null
the search results
/// will only include resources from your account. Default is null
. For more
/// information on searching for resources made discoverable to your account, see
/// Search discoverable resources in the SageMaker Developer Guide. The maximum number
/// of ResourceCatalog
s viewable is 1000.
///
///
public CrossAccountFilterOption CrossAccountFilterOption
{
get { return this._crossAccountFilterOption; }
set { this._crossAccountFilterOption = value; }
}
// Check to see if CrossAccountFilterOption property is set
internal bool IsSetCrossAccountFilterOption()
{
return this._crossAccountFilterOption != null;
}
///
/// Gets and sets the property MaxResults.
///
/// The maximum number of results to return.
///
///
[AWSProperty(Min=1, Max=100)]
public int MaxResults
{
get { return this._maxResults.GetValueOrDefault(); }
set { this._maxResults = value; }
}
// Check to see if MaxResults property is set
internal bool IsSetMaxResults()
{
return this._maxResults.HasValue;
}
///
/// Gets and sets the property NextToken.
///
/// If more than MaxResults
resources match the specified SearchExpression
,
/// the response includes a NextToken
. The NextToken
can be
/// passed to the next SearchRequest
to continue retrieving results.
///
///
[AWSProperty(Max=8192)]
public string NextToken
{
get { return this._nextToken; }
set { this._nextToken = value; }
}
// Check to see if NextToken property is set
internal bool IsSetNextToken()
{
return this._nextToken != null;
}
///
/// Gets and sets the property Resource.
///
/// The name of the SageMaker resource to search for.
///
///
[AWSProperty(Required=true)]
public ResourceType Resource
{
get { return this._resource; }
set { this._resource = value; }
}
// Check to see if Resource property is set
internal bool IsSetResource()
{
return this._resource != null;
}
///
/// Gets and sets the property SearchExpression.
///
/// A Boolean conditional statement. Resources must satisfy this condition to be included
/// in search results. You must provide at least one subexpression, filter, or nested
/// filter. The maximum number of recursive SubExpressions
, NestedFilters
,
/// and Filters
that can be included in a SearchExpression
object
/// is 50.
///
///
public SearchExpression SearchExpression
{
get { return this._searchExpression; }
set { this._searchExpression = value; }
}
// Check to see if SearchExpression property is set
internal bool IsSetSearchExpression()
{
return this._searchExpression != null;
}
///
/// Gets and sets the property SortBy.
///
/// The name of the resource property used to sort the SearchResults
. The
/// default is LastModifiedTime
.
///
///
[AWSProperty(Min=1, Max=255)]
public string SortBy
{
get { return this._sortBy; }
set { this._sortBy = value; }
}
// Check to see if SortBy property is set
internal bool IsSetSortBy()
{
return this._sortBy != null;
}
///
/// Gets and sets the property SortOrder.
///
/// How SearchResults
are ordered. Valid values are Ascending
/// or Descending
. The default is Descending
.
///
///
public SearchSortOrder SortOrder
{
get { return this._sortOrder; }
set { this._sortOrder = value; }
}
// Check to see if SortOrder property is set
internal bool IsSetSortOrder()
{
return this._sortOrder != null;
}
}
}