/// <summary> /// Removes a label from a ScraperTarget. /// </summary> /// <param name="label">the label of a ScraperTarget</param> /// <param name="scraperTargetResponse">a ScraperTarget of a owner</param> /// <returns>delete has been accepted</returns> public Task DeleteLabelAsync(Label label, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); Arguments.CheckNotNull(label, nameof(label)); return(DeleteLabelAsync(label.Id, scraperTargetResponse.Id)); }
/// <summary> /// Removes a owner from a ScraperTarget. /// </summary> /// <param name="owner">the owner of a scraperTarget</param> /// <param name="scraperTargetResponse">the ScraperTarget of a owner</param> /// <returns>async task</returns> public Task DeleteOwnerAsync(User owner, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); Arguments.CheckNotNull(owner, nameof(owner)); return(DeleteOwnerAsync(owner.Id, scraperTargetResponse.Id)); }
/// <summary> /// Add a ScraperTarget member. /// </summary> /// <param name="member">the member of a scraperTarget</param> /// <param name="scraperTargetResponse">the ScraperTarget of a member</param> /// <returns>created mapping</returns> public Task <ResourceMember> AddMemberAsync(User member, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); Arguments.CheckNotNull(member, nameof(member)); return(AddMemberAsync(member.Id, scraperTargetResponse.Id)); }
/// <summary> /// Add a ScraperTarget label. /// </summary> /// <param name="label">the label of a ScraperTarget</param> /// <param name="scraperTargetResponse">a ScraperTarget of a label</param> /// <returns>added label</returns> public async Task <Label> AddLabel(Label label, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); Arguments.CheckNotNull(label, nameof(label)); return(await AddLabel(label.Id, scraperTargetResponse.Id)); }
/// <summary> /// Removes a label from a ScraperTarget. /// </summary> /// <param name="label">the label of a ScraperTarget</param> /// <param name="scraperTargetResponse">a ScraperTarget of a owner</param> /// <returns>delete has been accepted</returns> public async Task DeleteLabel(Label label, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); Arguments.CheckNotNull(label, nameof(label)); await DeleteLabel(label.Id, scraperTargetResponse.Id); }
/// <summary> /// Removes a owner from a ScraperTarget. /// </summary> /// <param name="owner">the owner of a scraperTarget</param> /// <param name="scraperTargetResponse">the ScraperTarget of a owner</param> /// <returns>async task</returns> public async Task DeleteOwner(User owner, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); Arguments.CheckNotNull(owner, nameof(owner)); await DeleteOwner(owner.Id, scraperTargetResponse.Id); }
/// <summary> /// Add a ScraperTarget owner. /// </summary> /// <param name="owner">the owner of a ScraperTarget</param> /// <param name="scraperTargetResponse">the ScraperTarget of a owner</param> /// <returns>created mapping</returns> public async Task <ResourceOwner> AddOwner(User owner, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); Arguments.CheckNotNull(owner, nameof(owner)); return(await AddOwner(owner.Id, scraperTargetResponse.Id)); }
/// <summary> /// Removes a member from a ScraperTarget. /// </summary> /// <param name="member">the member of a ScraperTarget</param> /// <param name="scraperTargetResponse">the ScraperTarget of a member</param> /// <returns>async task</returns> public async Task DeleteMemberAsync(User member, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); Arguments.CheckNotNull(member, nameof(member)); await DeleteMemberAsync(member.Id, scraperTargetResponse.Id); }
/// <summary> /// Clone a ScraperTarget. /// </summary> /// <param name="clonedName">name of cloned ScraperTarget</param> /// <param name="scraperTargetResponse">ScraperTarget to clone</param> /// <returns>cloned ScraperTarget</returns> public async Task <ScraperTargetResponse> CloneScraperTargetAsync(string clonedName, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNonEmptyString(clonedName, nameof(clonedName)); Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); var cloned = new ScraperTargetRequest(clonedName, scraperTargetResponse.Type, scraperTargetResponse.Url, scraperTargetResponse.OrgID, scraperTargetResponse.BucketID); var created = await CreateScraperTargetAsync(cloned).ConfigureAwait(false); var labels = await GetLabelsAsync(scraperTargetResponse).ConfigureAwait(false); foreach (var label in labels) { await AddLabelAsync(label, created).ConfigureAwait(false); } return(created); }
/// <summary> /// Clone a ScraperTarget. /// </summary> /// <param name="clonedName">name of cloned ScraperTarget</param> /// <param name="scraperTargetResponse">ScraperTarget to clone</param> /// <returns>cloned ScraperTarget</returns> public async Task <ScraperTargetResponse> CloneScraperTarget(string clonedName, ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNonEmptyString(clonedName, nameof(clonedName)); Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); var cloned = new ScraperTargetRequest(clonedName, scraperTargetResponse.Type, scraperTargetResponse.Url, scraperTargetResponse.OrgID, scraperTargetResponse.BucketID); return(await CreateScraperTarget(cloned).ContinueWith(created => { // // Add labels // return GetLabels(scraperTargetResponse) .ContinueWith(labels => { return labels.Result.Select(label => AddLabel(label, created.Result)); }) .ContinueWith(async tasks => { await Task.WhenAll(tasks.Result); return created.Result; }) .Unwrap(); }).Unwrap()); }
/// <summary> /// Delete a ScraperTarget. /// </summary> /// <param name="scraperTargetResponse">ScraperTarget to delete</param> /// <returns>scraper target deleted</returns> public Task DeleteScraperTargetAsync(ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); return(DeleteScraperTargetAsync(scraperTargetResponse.Id)); }
/// <summary> /// Update a ScraperTarget. /// </summary> /// <param name="scraperTargetResponse">ScraperTarget update to apply</param> /// <returns>updated ScraperTarget</returns> public Task <ScraperTargetResponse> UpdateScraperTargetAsync(ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); return(UpdateScraperTargetAsync(scraperTargetResponse.Id, scraperTargetResponse)); }
/// <summary> /// List all labels of a ScraperTarget. /// </summary> /// <param name="scraperTargetResponse">a ScraperTarget of the labels</param> /// <returns>the List all labels of a ScraperTarget</returns> public Task <List <Label> > GetLabelsAsync(ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); return(GetLabelsAsync(scraperTargetResponse.Id)); }
/// <summary> /// List all owners of a ScraperTarget. /// </summary> /// <param name="scraperTargetResponse">ScraperTarget of the owners</param> /// <returns>the List all owners of a ScraperTarget</returns> public Task <List <ResourceOwner> > GetOwnersAsync(ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); return(GetOwnersAsync(scraperTargetResponse.Id)); }
/// <summary> /// Delete a ScraperTarget. /// </summary> /// <param name="scraperTargetResponse">ScraperTarget to delete</param> /// <returns>scraper target deleted</returns> public async Task DeleteScraperTarget(ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); await DeleteScraperTarget(scraperTargetResponse.Id); }
/// <summary> /// List all members of a ScraperTarget. /// </summary> /// <param name="scraperTargetResponse">ScraperTarget of the members</param> /// <returns>the List all members of a ScraperTarget</returns> public async Task <List <ResourceMember> > GetMembers(ScraperTargetResponse scraperTargetResponse) { Arguments.CheckNotNull(scraperTargetResponse, nameof(scraperTargetResponse)); return(await GetMembers(scraperTargetResponse.Id)); }