FindItemsGeneric<TItem extends Item> method
Future<ServiceResponseCollection<FindItemResponse<TItem> > >
FindItemsGeneric<TItem extends Item>(
- Iterable<
FolderId?> parentFolderIds, - SearchFilter? searchFilter,
- String? queryString,
- ViewBase view,
- Grouping? groupBy,
- ServiceErrorHandling errorHandlingMode,
Implementation
//ServiceResponseCollection<MoveCopyItemResponse> InternalCopyItems(
// Iterable<ItemId> itemIds,
// FolderId destinationFolderId,
// bool? returnNewItemIds,
// ServiceErrorHandling errorHandling)
// {
// CopyItemRequest request = new CopyItemRequest(this, errorHandling);
// request.ItemIds.AddRange(itemIds);
// request.DestinationFolderId = destinationFolderId;
// request.ReturnNewItemIds = returnNewItemIds;
//
// return request.Execute();
// }
/// <summary>
/// Copies multiple items in a single call to EWS.
/// </summary>
/// <param name="itemIds">The Ids of the items to copy.</param>
/// <param name="destinationFolderId">The Id of the folder to copy the items to.</param>
/// <returns>A ServiceResponseCollection providing copy results for each of the specified item Ids.</returns>
//ServiceResponseCollection<MoveCopyItemResponse> CopyItems(
// Iterable<ItemId> itemIds,
// FolderId destinationFolderId)
// {
// return this.InternalCopyItems(
// itemIds,
// destinationFolderId,
// null,
// ServiceErrorHandling.ReturnErrors);
// }
/// <summary>
/// Copies multiple items in a single call to EWS.
/// </summary>
/// <param name="itemIds">The Ids of the items to copy.</param>
/// <param name="destinationFolderId">The Id of the folder to copy the items to.</param>
/// <param name="returnNewItemIds">Flag indicating whether service should return new ItemIds or not.</param>
/// <returns>A ServiceResponseCollection providing copy results for each of the specified item Ids.</returns>
//ServiceResponseCollection<MoveCopyItemResponse> CopyItems(
// Iterable<ItemId> itemIds,
// FolderId destinationFolderId,
// bool returnNewItemIds)
// {
// EwsUtilities.ValidateMethodVersion(
// this,
// ExchangeVersion.Exchange2010_SP1,
// "CopyItems");
//
// return this.InternalCopyItems(
// itemIds,
// destinationFolderId,
// returnNewItemIds,
// ServiceErrorHandling.ReturnErrors);
// }
/// <summary>
/// Copies an item. Calling this method results in a call to EWS.
/// </summary>
/// <param name="itemId">The Id of the item to copy.</param>
/// <param name="destinationFolderId">The Id of the folder to copy the item to.</param>
/// <returns>The copy of the item.</returns>
// Item CopyItem(
// ItemId itemId,
// FolderId destinationFolderId)
// {
// return this.InternalCopyItems(
// new ItemId[] { itemId },
// destinationFolderId,
// null,
// ServiceErrorHandling.ThrowOnError)[0].Item;
// }
/// <summary>
/// Moves multiple items in a single call to EWS.
/// </summary>
/// <param name="itemIds">The Ids of the items to move.</param>
/// <param name="destinationFolderId">The Id of the folder to move the items to.</param>
/// <param name="returnNewItemIds">Flag indicating whether service should return new ItemIds or not.</param>
/// <param name="errorHandling">What type of error handling should be performed.</param>
/// <returns>A ServiceResponseCollection providing copy results for each of the specified item Ids.</returns>
//ServiceResponseCollection<MoveCopyItemResponse> InternalMoveItems(
// Iterable<ItemId> itemIds,
// FolderId destinationFolderId,
// bool? returnNewItemIds,
// ServiceErrorHandling errorHandling)
// {
// MoveItemRequest request = new MoveItemRequest(this, errorHandling);
//
// request.ItemIds.AddRange(itemIds);
// request.DestinationFolderId = destinationFolderId;
// request.ReturnNewItemIds = returnNewItemIds;
//
// return request.Execute();
// }
/// <summary>
/// Moves multiple items in a single call to EWS.
/// </summary>
/// <param name="itemIds">The Ids of the items to move.</param>
/// <param name="destinationFolderId">The Id of the folder to move the items to.</param>
/// <returns>A ServiceResponseCollection providing copy results for each of the specified item Ids.</returns>
//ServiceResponseCollection<MoveCopyItemResponse> MoveItems(
// Iterable<ItemId> itemIds,
// FolderId destinationFolderId)
// {
// return this.InternalMoveItems(
// itemIds,
// destinationFolderId,
// null,
// ServiceErrorHandling.ReturnErrors);
// }
/// <summary>
/// Moves multiple items in a single call to EWS.
/// </summary>
/// <param name="itemIds">The Ids of the items to move.</param>
/// <param name="destinationFolderId">The Id of the folder to move the items to.</param>
/// <param name="returnNewItemIds">Flag indicating whether service should return new ItemIds or not.</param>
/// <returns>A ServiceResponseCollection providing copy results for each of the specified item Ids.</returns>
//ServiceResponseCollection<MoveCopyItemResponse> MoveItems(
// Iterable<ItemId> itemIds,
// FolderId destinationFolderId,
// bool returnNewItemIds)
// {
// EwsUtilities.ValidateMethodVersion(
// this,
// ExchangeVersion.Exchange2010_SP1,
// "MoveItems");
//
// return this.InternalMoveItems(
// itemIds,
// destinationFolderId,
// returnNewItemIds,
// ServiceErrorHandling.ReturnErrors);
// }
/// <summary>
/// Move an item.
/// </summary>
/// <param name="itemId">The Id of the item to move.</param>
/// <param name="destinationFolderId">The Id of the folder to move the item to.</param>
/// <returns>The moved item.</returns>
// Item MoveItem(
// ItemId itemId,
// FolderId destinationFolderId)
// {
// return this.InternalMoveItems(
// new ItemId[] { itemId },
// destinationFolderId,
// null,
// ServiceErrorHandling.ThrowOnError)[0].Item;
// }
/// <summary>
/// Archives multiple items in a single call to EWS.
/// </summary>
/// <param name="itemIds">The Ids of the items to move.</param>
/// <param name="sourceFolderId">The Id of the folder in primary corresponding to which items are being archived to.</param>
/// <returns>A ServiceResponseCollection providing copy results for each of the specified item Ids.</returns>
//ServiceResponseCollection<ArchiveItemResponse> ArchiveItems(
// Iterable<ItemId> itemIds,
// FolderId sourceFolderId)
// {
// ArchiveItemRequest request = new ArchiveItemRequest(this, ServiceErrorHandling.ReturnErrors);
//
// request.Ids.AddRange(itemIds);
// request.SourceFolderId = sourceFolderId;
//
// return request.Execute();
// }
/// <summary>
/// Finds items.
/// </summary>
/// <typeparam name="TItem">The type of the item.</typeparam>
/// <param name="parentFolderIds">The parent folder ids.</param>
/// <param name="searchFilter">The search filter. Available search filter classes
/// include SearchFilter.IsEqualTo, SearchFilter.ContainsSubstring and
/// SearchFilter.SearchFilterCollection</param>
/// <param name="queryString">query string to be used for indexed search.</param>
/// <param name="view">The view controlling the number of items returned.</param>
/// <param name="groupBy">The group by.</param>
/// <param name="errorHandlingMode">Indicates the type of error handling should be done.</param>
/// <returns>Service response collection.</returns>
Future<ServiceResponseCollection<FindItemResponse<TItem>>>
FindItemsGeneric<TItem extends Item>(
Iterable<FolderId?> parentFolderIds,
SearchFilter? searchFilter,
String? queryString,
ViewBase view,
Grouping? groupBy,
ServiceErrorHandling errorHandlingMode) async {
EwsUtilities.ValidateParamCollection(parentFolderIds, "parentFolderIds");
EwsUtilities.ValidateParam(view, "view");
EwsUtilities.ValidateParamAllowNull(groupBy, "groupBy");
EwsUtilities.ValidateParamAllowNull(queryString, "queryString");
EwsUtilities.ValidateParamAllowNull(searchFilter, "searchFilter");
FindItemRequest<TItem> request =
await new FindItemRequest<TItem>(this, errorHandlingMode);
request.ParentFolderIds.AddRangeFolderIds(parentFolderIds);
request.SearchFilter = searchFilter;
request.QueryString = queryString;
request.View = view;
request.GroupBy = groupBy;
return request.Execute();
}