/// <summary> /// Initiates a Search object to Scan a DynamoDB table, with the /// specified config. /// /// No calls are made until the Search object is used. /// </summary> /// <param name="config">Configuration to use.</param> /// <returns>Resultant Search container.</returns> public Search Scan(ScanOperationConfig config) { var currentConfig = config ?? new ScanOperationConfig(); Search ret = new Search(SearchType.Scan) { SourceTable = this, TableName = TableName, Limit = currentConfig.Limit, Filter = currentConfig.Filter, FilterExpression = currentConfig.FilterExpression, ConditionalOperator = currentConfig.ConditionalOperator, AttributesToGet = currentConfig.AttributesToGet, Select = currentConfig.Select, CollectResults = currentConfig.CollectResults, IndexName = currentConfig.IndexName }; if (currentConfig.TotalSegments != 0) { ret.TotalSegments = currentConfig.TotalSegments; ret.Segment = currentConfig.Segment; } return ret; }
/// <summary> /// Initiates a Search object to Query a DynamoDB table, with the /// specified config. /// /// No calls are made until the Search object is used. /// </summary> /// <param name="config">Configuration to use.</param> /// <returns>Resultant Search container.</returns> public Search Query(QueryOperationConfig config) { if (config == null) throw new ArgumentNullException("config"); Search ret = new Search(SearchType.Query) { SourceTable = this, TableName = TableName, AttributesToGet = config.AttributesToGet, Filter = config.Filter, FilterExpression = config.FilterExpression, ConditionalOperator = config.ConditionalOperator, Limit = config.Limit, IsConsistentRead = config.ConsistentRead, IsBackwardSearch = config.BackwardSearch, IndexName = config.IndexName, Select = config.Select, CollectResults = config.CollectResults }; return ret; }
/// <summary> /// Initiates a Search object to Scan a DynamoDB table, with the /// specified config. /// /// No calls are made until the Search object is used. /// </summary> /// <param name="config">Configuration to use.</param> /// <returns>Resultant Search container.</returns> public Search Scan(ScanOperationConfig config) { var currentConfig = config ?? new ScanOperationConfig(); Search ret = new Search(SearchType.Scan) { SourceTable = this, TableName = TableName, Limit = currentConfig.Limit, Filter = currentConfig.Filter, AttributesToGet = currentConfig.AttributesToGet, Select = currentConfig.Select }; return ret; }