public virtual AddImageResponse AddImage(Stream stream, string listId, ContentModeratorTag tag = ContentModeratorTag.None, string label = "")
 {
     return(PolicyService.ExecuteRetryAndCapture400Errors(
                "ContentModeratorService.AddImage",
                ApiKeys.ContentModeratorRetryInSeconds,
                () =>
     {
         var result = ContentModeratorRepository.AddImage(stream, listId, tag, label);
         return result;
     },
                null));
 }
        public virtual AddImageResponse AddImage(Stream stream, string listId, ContentModeratorTag tag = ContentModeratorTag.None, string label = "")
        {
            try
            {
                var result = Task.Run(async() => await ContentModeratorRepository.AddImageAsync(stream, listId, tag, label)).Result;

                return(result);
            }
            catch (Exception ex)
            {
                Logger.Error("ContentModeratorService.AddImage failed", this, ex);
            }

            return(null);
        }
        public virtual AddImageResponse AddImage(string imageUrl, string listId, ContentModeratorTag tag = ContentModeratorTag.None, string label = "")
        {
            try
            {
                var result = ContentModeratorRepository.AddImage(imageUrl, listId, tag, label);

                return(result);
            }
            catch (Exception ex)
            {
                Logger.Error($"ContentModeratorService.AddImage failed: {imageUrl}", this, ex);
            }

            return(null);
        }
Пример #4
0
        protected virtual string GetAddImageQuerystring(ContentModeratorTag tag, string label)
        {
            StringBuilder sb = new StringBuilder();

            if (tag != ContentModeratorTag.None)
            {
                sb.Append($"?tag={(int)tag}");
            }

            if (!string.IsNullOrEmpty(label))
            {
                var concat = sb.Length > 0 ? "&" : "?";
                sb.Append($"{concat}label={label}");
            }

            return(sb.ToString());
        }
Пример #5
0
        public virtual async Task <AddImageResponse> AddImageAsync(Stream stream, string listId, ContentModeratorTag tag = ContentModeratorTag.None, string label = "")
        {
            var response = await RepositoryClient.SendImagePostAsync(ApiKeys.ContentModerator, $"{ApiKeys.ContentModeratorEndpoint}{listUrl}{listId}/images{GetAddImageQuerystring(tag, label)}", stream);

            return(JsonConvert.DeserializeObject <AddImageResponse>(response));
        }
Пример #6
0
        public virtual async Task <AddImageResponse> AddImageAsync(string imageUrl, string listId, ContentModeratorTag tag = ContentModeratorTag.None, string label = "")
        {
            var request = new AddImageRequest()
            {
                Value = imageUrl
            };
            var response = await RepositoryClient.SendJsonPostAsync(ApiKeys.ContentModerator, $"{ApiKeys.ContentModeratorEndpoint}{listUrl}{listId}/images{GetAddImageQuerystring(tag, label)}", JsonConvert.SerializeObject(request));

            return(JsonConvert.DeserializeObject <AddImageResponse>(response));
        }
Пример #7
0
        public virtual AddImageResponse AddImage(string imageUrl, string listId, ContentModeratorTag tag = ContentModeratorTag.None, string label = "")
        {
            var response = RepositoryClient.SendJsonPost(ApiKeys.ContentModerator, $"{ApiKeys.ContentModeratorEndpoint}{listUrl}{listId}/images{GetAddImageQuerystring(tag, label)}", GetImageUrlData(imageUrl));

            return(JsonConvert.DeserializeObject <AddImageResponse>(response));
        }
        public virtual async Task <AddImageResponse> AddImageAsync(string imageUrl, string listId, ContentModeratorTag tag = ContentModeratorTag.None, string label = "")
        {
            string data = $"{{ \"DataRepresentation\":\"URL\", \"Value\":\"{imageUrl}\" }}";

            var response = await RepositoryClient.SendJsonPostAsync(ApiKeys.ContentModerator, $"{listUrl}{listId}/images{GetAddImageQuerystring(tag, label)}", data);

            return(JsonConvert.DeserializeObject <AddImageResponse>(response));
        }