azure_cognitiveservices_contentmoderator 0.16.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator.rb +93 -0
  4. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/content_moderator_client.rb +167 -0
  5. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/image_moderation.rb +1399 -0
  6. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/list_management_image.rb +637 -0
  7. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/list_management_image_lists.rb +610 -0
  8. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/list_management_term.rb +429 -0
  9. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/list_management_term_lists.rb +618 -0
  10. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/address.rb +58 -0
  11. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/apierror.rb +47 -0
  12. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/azure_region_base_url.rb +27 -0
  13. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/body.rb +70 -0
  14. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/body_metadata.rb +57 -0
  15. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/candidate.rb +57 -0
  16. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/classification.rb +82 -0
  17. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/content.rb +47 -0
  18. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/create_review_body_item.rb +101 -0
  19. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/create_review_body_item_metadata_item.rb +58 -0
  20. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item.rb +144 -0
  21. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item_metadata_item.rb +58 -0
  22. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item_video_frames_item.rb +112 -0
  23. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item_video_frames_item_metadata_item.rb +59 -0
  24. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item_video_frames_item_reviewer_result_tags_item.rb +60 -0
  25. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/detected_language.rb +69 -0
  26. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/detected_terms.rb +81 -0
  27. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/email.rb +80 -0
  28. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/error.rb +57 -0
  29. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/evaluate.rb +144 -0
  30. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/face.rb +79 -0
  31. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/found_faces.rb +131 -0
  32. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/frame.rb +97 -0
  33. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/frames.rb +66 -0
  34. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/image.rb +89 -0
  35. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/image_additional_info_item.rb +58 -0
  36. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/image_ids.rb +88 -0
  37. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/image_list.rb +80 -0
  38. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/image_list_metadata.rb +57 -0
  39. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/image_url.rb +59 -0
  40. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/ipa.rb +69 -0
  41. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/job.rb +153 -0
  42. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/job_execution_report_details.rb +57 -0
  43. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/job_id.rb +47 -0
  44. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/job_list_result.rb +54 -0
  45. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/key_value_pair.rb +57 -0
  46. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/match.rb +98 -0
  47. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/match_response.rb +100 -0
  48. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/ocr.rb +131 -0
  49. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/phone.rb +69 -0
  50. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/pii.rb +115 -0
  51. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/refresh_index.rb +100 -0
  52. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/refresh_index_advanced_info_item.rb +58 -0
  53. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/review.rb +163 -0
  54. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/score.rb +48 -0
  55. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/screen.rb +165 -0
  56. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/status.rb +68 -0
  57. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/tag.rb +57 -0
  58. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/term_list.rb +80 -0
  59. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/term_list_metadata.rb +57 -0
  60. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/terms.rb +59 -0
  61. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/terms_data.rb +89 -0
  62. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/terms_in_list.rb +46 -0
  63. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/terms_paging.rb +79 -0
  64. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/transcript_moderation_body_item.rb +67 -0
  65. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/transcript_moderation_body_item_terms_item.rb +58 -0
  66. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/video_frame_body_item.rb +98 -0
  67. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/video_frame_body_item_metadata_item.rb +58 -0
  68. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/models/video_frame_body_item_reviewer_result_tags_item.rb +58 -0
  69. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/module_definition.rb +9 -0
  70. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/reviews.rb +1829 -0
  71. data/lib/1.0/generated/azure_cognitiveservices_contentmoderator/text_moderation.rb +294 -0
  72. data/lib/azure_cognitiveservices_contentmoderator.rb +6 -0
  73. data/lib/module_definition.rb +7 -0
  74. data/lib/profiles/latest/contentmoderator_latest_profile_client.rb +38 -0
  75. data/lib/profiles/latest/contentmoderator_module_definition.rb +8 -0
  76. data/lib/profiles/latest/modules/contentmoderator_profile_module.rb +307 -0
  77. data/lib/version.rb +7 -0
  78. metadata +196 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d6d8a0122c16f1a1134f99027d735d2d4605e121
4
+ data.tar.gz: 125bc9a94a68f8ccef1eb14f894ad32eb5c73512
5
+ SHA512:
6
+ metadata.gz: 98bcc457e923a53af5a99c632916b7cf44e243097f6daf7fb07ed6730ff709ef69aef7c6e45d8c872a031bc5b374c9b1f38134aca8cffe91e939ab25e1a85aa1
7
+ data.tar.gz: d915f63330ead8bc4b178cf3299bb65c5bd4a2d7d1ef97403cafa38aced232472182ec8dafcc1c42deda2240c9423a0a48a073d0927722e5f1649308b310c055
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2015 Microsoft Corporation
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,93 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ require 'uri'
7
+ require 'cgi'
8
+ require 'date'
9
+ require 'json'
10
+ require 'base64'
11
+ require 'erb'
12
+ require 'securerandom'
13
+ require 'time'
14
+ require 'timeliness'
15
+ require 'faraday'
16
+ require 'faraday-cookie_jar'
17
+ require 'concurrent'
18
+ require 'ms_rest'
19
+ require '1.0/generated/azure_cognitiveservices_contentmoderator/module_definition'
20
+ require 'ms_rest_azure'
21
+
22
+ module Azure::CognitiveServices::ContentModerator::V1_0
23
+ autoload :ImageModeration, '1.0/generated/azure_cognitiveservices_contentmoderator/image_moderation.rb'
24
+ autoload :TextModeration, '1.0/generated/azure_cognitiveservices_contentmoderator/text_moderation.rb'
25
+ autoload :ListManagementImageLists, '1.0/generated/azure_cognitiveservices_contentmoderator/list_management_image_lists.rb'
26
+ autoload :ListManagementTermLists, '1.0/generated/azure_cognitiveservices_contentmoderator/list_management_term_lists.rb'
27
+ autoload :ListManagementImage, '1.0/generated/azure_cognitiveservices_contentmoderator/list_management_image.rb'
28
+ autoload :ListManagementTerm, '1.0/generated/azure_cognitiveservices_contentmoderator/list_management_term.rb'
29
+ autoload :Reviews, '1.0/generated/azure_cognitiveservices_contentmoderator/reviews.rb'
30
+ autoload :ContentModeratorClient, '1.0/generated/azure_cognitiveservices_contentmoderator/content_moderator_client.rb'
31
+
32
+ module Models
33
+ autoload :Image, '1.0/generated/azure_cognitiveservices_contentmoderator/models/image.rb'
34
+ autoload :KeyValuePair, '1.0/generated/azure_cognitiveservices_contentmoderator/models/key_value_pair.rb'
35
+ autoload :ImageIds, '1.0/generated/azure_cognitiveservices_contentmoderator/models/image_ids.rb'
36
+ autoload :Frame, '1.0/generated/azure_cognitiveservices_contentmoderator/models/frame.rb'
37
+ autoload :TermsInList, '1.0/generated/azure_cognitiveservices_contentmoderator/models/terms_in_list.rb'
38
+ autoload :Score, '1.0/generated/azure_cognitiveservices_contentmoderator/models/score.rb'
39
+ autoload :TermsData, '1.0/generated/azure_cognitiveservices_contentmoderator/models/terms_data.rb'
40
+ autoload :Status, '1.0/generated/azure_cognitiveservices_contentmoderator/models/status.rb'
41
+ autoload :TermsPaging, '1.0/generated/azure_cognitiveservices_contentmoderator/models/terms_paging.rb'
42
+ autoload :IPA, '1.0/generated/azure_cognitiveservices_contentmoderator/models/ipa.rb'
43
+ autoload :Terms, '1.0/generated/azure_cognitiveservices_contentmoderator/models/terms.rb'
44
+ autoload :Address, '1.0/generated/azure_cognitiveservices_contentmoderator/models/address.rb'
45
+ autoload :Review, '1.0/generated/azure_cognitiveservices_contentmoderator/models/review.rb'
46
+ autoload :DetectedTerms, '1.0/generated/azure_cognitiveservices_contentmoderator/models/detected_terms.rb'
47
+ autoload :JobExecutionReportDetails, '1.0/generated/azure_cognitiveservices_contentmoderator/models/job_execution_report_details.rb'
48
+ autoload :Face, '1.0/generated/azure_cognitiveservices_contentmoderator/models/face.rb'
49
+ autoload :Job, '1.0/generated/azure_cognitiveservices_contentmoderator/models/job.rb'
50
+ autoload :Candidate, '1.0/generated/azure_cognitiveservices_contentmoderator/models/candidate.rb'
51
+ autoload :JobListResult, '1.0/generated/azure_cognitiveservices_contentmoderator/models/job_list_result.rb'
52
+ autoload :Evaluate, '1.0/generated/azure_cognitiveservices_contentmoderator/models/evaluate.rb'
53
+ autoload :JobId, '1.0/generated/azure_cognitiveservices_contentmoderator/models/job_id.rb'
54
+ autoload :MatchResponse, '1.0/generated/azure_cognitiveservices_contentmoderator/models/match_response.rb'
55
+ autoload :Error, '1.0/generated/azure_cognitiveservices_contentmoderator/models/error.rb'
56
+ autoload :ImageListMetadata, '1.0/generated/azure_cognitiveservices_contentmoderator/models/image_list_metadata.rb'
57
+ autoload :APIError, '1.0/generated/azure_cognitiveservices_contentmoderator/models/apierror.rb'
58
+ autoload :TermListMetadata, '1.0/generated/azure_cognitiveservices_contentmoderator/models/term_list_metadata.rb'
59
+ autoload :TranscriptModerationBodyItemTermsItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/transcript_moderation_body_item_terms_item.rb'
60
+ autoload :RefreshIndexAdvancedInfoItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/refresh_index_advanced_info_item.rb'
61
+ autoload :TranscriptModerationBodyItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/transcript_moderation_body_item.rb'
62
+ autoload :ImageAdditionalInfoItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/image_additional_info_item.rb'
63
+ autoload :CreateVideoReviewsBodyItemVideoFramesItemReviewerResultTagsItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item_video_frames_item_reviewer_result_tags_item.rb'
64
+ autoload :Frames, '1.0/generated/azure_cognitiveservices_contentmoderator/models/frames.rb'
65
+ autoload :CreateVideoReviewsBodyItemVideoFramesItemMetadataItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item_video_frames_item_metadata_item.rb'
66
+ autoload :Email, '1.0/generated/azure_cognitiveservices_contentmoderator/models/email.rb'
67
+ autoload :CreateVideoReviewsBodyItemVideoFramesItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item_video_frames_item.rb'
68
+ autoload :PII, '1.0/generated/azure_cognitiveservices_contentmoderator/models/pii.rb'
69
+ autoload :CreateVideoReviewsBodyItemMetadataItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item_metadata_item.rb'
70
+ autoload :FoundFaces, '1.0/generated/azure_cognitiveservices_contentmoderator/models/found_faces.rb'
71
+ autoload :CreateVideoReviewsBodyItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/create_video_reviews_body_item.rb'
72
+ autoload :Match, '1.0/generated/azure_cognitiveservices_contentmoderator/models/match.rb'
73
+ autoload :BodyMetadata, '1.0/generated/azure_cognitiveservices_contentmoderator/models/body_metadata.rb'
74
+ autoload :ImageList, '1.0/generated/azure_cognitiveservices_contentmoderator/models/image_list.rb'
75
+ autoload :Body, '1.0/generated/azure_cognitiveservices_contentmoderator/models/body.rb'
76
+ autoload :RefreshIndex, '1.0/generated/azure_cognitiveservices_contentmoderator/models/refresh_index.rb'
77
+ autoload :ImageUrl, '1.0/generated/azure_cognitiveservices_contentmoderator/models/image_url.rb'
78
+ autoload :Classification, '1.0/generated/azure_cognitiveservices_contentmoderator/models/classification.rb'
79
+ autoload :VideoFrameBodyItemReviewerResultTagsItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/video_frame_body_item_reviewer_result_tags_item.rb'
80
+ autoload :Screen, '1.0/generated/azure_cognitiveservices_contentmoderator/models/screen.rb'
81
+ autoload :VideoFrameBodyItemMetadataItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/video_frame_body_item_metadata_item.rb'
82
+ autoload :DetectedLanguage, '1.0/generated/azure_cognitiveservices_contentmoderator/models/detected_language.rb'
83
+ autoload :VideoFrameBodyItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/video_frame_body_item.rb'
84
+ autoload :Tag, '1.0/generated/azure_cognitiveservices_contentmoderator/models/tag.rb'
85
+ autoload :CreateReviewBodyItemMetadataItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/create_review_body_item_metadata_item.rb'
86
+ autoload :OCR, '1.0/generated/azure_cognitiveservices_contentmoderator/models/ocr.rb'
87
+ autoload :CreateReviewBodyItem, '1.0/generated/azure_cognitiveservices_contentmoderator/models/create_review_body_item.rb'
88
+ autoload :Phone, '1.0/generated/azure_cognitiveservices_contentmoderator/models/phone.rb'
89
+ autoload :Content, '1.0/generated/azure_cognitiveservices_contentmoderator/models/content.rb'
90
+ autoload :TermList, '1.0/generated/azure_cognitiveservices_contentmoderator/models/term_list.rb'
91
+ autoload :AzureRegionBaseUrl, '1.0/generated/azure_cognitiveservices_contentmoderator/models/azure_region_base_url.rb'
92
+ end
93
+ end
@@ -0,0 +1,167 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::CognitiveServices::ContentModerator::V1_0
7
+ #
8
+ # A service client - single point of access to the REST API.
9
+ #
10
+ class ContentModeratorClient < MsRestAzure::AzureServiceClient
11
+ include MsRestAzure
12
+ include MsRestAzure::Serialization
13
+
14
+ # @return [String] the base URI of the service.
15
+ attr_reader :base_url
16
+
17
+ # @return Credentials needed for the client to connect to Azure.
18
+ attr_reader :credentials1
19
+
20
+ # @return [AzureRegionBaseUrl] Supported Azure regions for Content
21
+ # Moderator endpoints. Possible values include:
22
+ # 'westus.api.cognitive.microsoft.com',
23
+ # 'westus2.api.cognitive.microsoft.com',
24
+ # 'eastus.api.cognitive.microsoft.com',
25
+ # 'eastus2.api.cognitive.microsoft.com',
26
+ # 'westcentralus.api.cognitive.microsoft.com',
27
+ # 'southcentralus.api.cognitive.microsoft.com',
28
+ # 'westeurope.api.cognitive.microsoft.com',
29
+ # 'northeurope.api.cognitive.microsoft.com',
30
+ # 'southeastasia.api.cognitive.microsoft.com',
31
+ # 'eastasia.api.cognitive.microsoft.com',
32
+ # 'australiaeast.api.cognitive.microsoft.com',
33
+ # 'brazilsouth.api.cognitive.microsoft.com',
34
+ # 'contentmoderatortest.azure-api.net'
35
+ attr_accessor :base_url
36
+
37
+ # @return Subscription credentials which uniquely identify client
38
+ # subscription.
39
+ attr_accessor :credentials
40
+
41
+ # @return [String] Gets or sets the preferred language for the response.
42
+ attr_accessor :accept_language
43
+
44
+ # @return [Integer] Gets or sets the retry timeout in seconds for Long
45
+ # Running Operations. Default value is 30.
46
+ attr_accessor :long_running_operation_retry_timeout
47
+
48
+ # @return [Boolean] When set to true a unique x-ms-client-request-id value
49
+ # is generated and included in each request. Default is true.
50
+ attr_accessor :generate_client_request_id
51
+
52
+ # @return [ImageModeration] image_moderation
53
+ attr_reader :image_moderation
54
+
55
+ # @return [TextModeration] text_moderation
56
+ attr_reader :text_moderation
57
+
58
+ # @return [ListManagementImageLists] list_management_image_lists
59
+ attr_reader :list_management_image_lists
60
+
61
+ # @return [ListManagementTermLists] list_management_term_lists
62
+ attr_reader :list_management_term_lists
63
+
64
+ # @return [ListManagementImage] list_management_image
65
+ attr_reader :list_management_image
66
+
67
+ # @return [ListManagementTerm] list_management_term
68
+ attr_reader :list_management_term
69
+
70
+ # @return [Reviews] reviews
71
+ attr_reader :reviews
72
+
73
+ #
74
+ # Creates initializes a new instance of the ContentModeratorClient class.
75
+ # @param credentials [MsRest::ServiceClientCredentials] credentials to authorize HTTP requests made by the service client.
76
+ # @param options [Array] filters to be applied to the HTTP requests.
77
+ #
78
+ def initialize(credentials = nil, options = nil)
79
+ super(credentials, options)
80
+ @base_url = 'https://{baseUrl}/'
81
+
82
+ fail ArgumentError, 'invalid type of credentials input parameter' unless credentials.is_a?(MsRest::ServiceClientCredentials) unless credentials.nil?
83
+ @credentials = credentials
84
+
85
+ @image_moderation = ImageModeration.new(self)
86
+ @text_moderation = TextModeration.new(self)
87
+ @list_management_image_lists = ListManagementImageLists.new(self)
88
+ @list_management_term_lists = ListManagementTermLists.new(self)
89
+ @list_management_image = ListManagementImage.new(self)
90
+ @list_management_term = ListManagementTerm.new(self)
91
+ @reviews = Reviews.new(self)
92
+ @accept_language = 'en-US'
93
+ @long_running_operation_retry_timeout = 30
94
+ @generate_client_request_id = true
95
+ add_telemetry
96
+ end
97
+
98
+ #
99
+ # Makes a request and returns the body of the response.
100
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
101
+ # @param path [String] the path, relative to {base_url}.
102
+ # @param options [Hash{String=>String}] specifying any request options like :body.
103
+ # @return [Hash{String=>String}] containing the body of the response.
104
+ # Example:
105
+ #
106
+ # request_content = "{'location':'westus','tags':{'tag1':'val1','tag2':'val2'}}"
107
+ # path = "/path"
108
+ # options = {
109
+ # body: request_content,
110
+ # query_params: {'api-version' => '2016-02-01'}
111
+ # }
112
+ # result = @client.make_request(:put, path, options)
113
+ #
114
+ def make_request(method, path, options = {})
115
+ result = make_request_with_http_info(method, path, options)
116
+ result.body unless result.nil?
117
+ end
118
+
119
+ #
120
+ # Makes a request and returns the operation response.
121
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
122
+ # @param path [String] the path, relative to {base_url}.
123
+ # @param options [Hash{String=>String}] specifying any request options like :body.
124
+ # @return [MsRestAzure::AzureOperationResponse] Operation response containing the request, response and status.
125
+ #
126
+ def make_request_with_http_info(method, path, options = {})
127
+ result = make_request_async(method, path, options).value!
128
+ result.body = result.response.body.to_s.empty? ? nil : JSON.load(result.response.body)
129
+ result
130
+ end
131
+
132
+ #
133
+ # Makes a request asynchronously.
134
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
135
+ # @param path [String] the path, relative to {base_url}.
136
+ # @param options [Hash{String=>String}] specifying any request options like :body.
137
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
138
+ #
139
+ def make_request_async(method, path, options = {})
140
+ fail ArgumentError, 'method is nil' if method.nil?
141
+ fail ArgumentError, 'path is nil' if path.nil?
142
+
143
+ request_url = options[:base_url] || @base_url
144
+ if(!options[:headers].nil? && !options[:headers]['Content-Type'].nil?)
145
+ @request_headers['Content-Type'] = options[:headers]['Content-Type']
146
+ end
147
+
148
+ request_headers = @request_headers
149
+ request_headers.merge!({'accept-language' => @accept_language}) unless @accept_language.nil?
150
+ options.merge!({headers: request_headers.merge(options[:headers] || {})})
151
+ options.merge!({credentials: @credentials}) unless @credentials.nil?
152
+
153
+ super(request_url, method, path, options)
154
+ end
155
+
156
+
157
+ private
158
+ #
159
+ # Adds telemetry information.
160
+ #
161
+ def add_telemetry
162
+ sdk_information = 'azure_cognitiveservices_contentmoderator'
163
+ sdk_information = "#{sdk_information}/0.16.0"
164
+ add_user_agent_information(sdk_information)
165
+ end
166
+ end
167
+ end
@@ -0,0 +1,1399 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::CognitiveServices::ContentModerator::V1_0
7
+ #
8
+ # You use the API to scan your content as it is generated. Content Moderator
9
+ # then processes your content and sends the results along with relevant
10
+ # information either back to your systems or to the built-in review tool. You
11
+ # can use this information to take decisions e.g. take it down, send to human
12
+ # judge, etc.
13
+ #
14
+ # When using the API, images need to have a minimum of 128 pixels and a
15
+ # maximum file size of 4MB.
16
+ # Text can be at most 1024 characters long.
17
+ # If the content passed to the text API or the image API exceeds the size
18
+ # limits, the API will return an error code that informs about the issue.
19
+ #
20
+ # This API is currently available in:
21
+ #
22
+ # * West US - westus.api.cognitive.microsoft.com
23
+ # * East US 2 - eastus2.api.cognitive.microsoft.com
24
+ # * West Central US - westcentralus.api.cognitive.microsoft.com
25
+ # * West Europe - westeurope.api.cognitive.microsoft.com
26
+ # * Southeast Asia - southeastasia.api.cognitive.microsoft.com .
27
+ #
28
+ class ImageModeration
29
+ include MsRestAzure
30
+
31
+ #
32
+ # Creates and initializes a new instance of the ImageModeration class.
33
+ # @param client service class for accessing basic functionality.
34
+ #
35
+ def initialize(client)
36
+ @client = client
37
+ end
38
+
39
+ # @return [ContentModeratorClient] reference to the ContentModeratorClient
40
+ attr_reader :client
41
+
42
+ #
43
+ # Returns the list of faces found.
44
+ #
45
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
46
+ # use; defaults to false if omitted.
47
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
48
+ # will be added to the HTTP request.
49
+ #
50
+ # @return [FoundFaces] operation results.
51
+ #
52
+ def find_faces(cache_image:nil, custom_headers:nil)
53
+ response = find_faces_async(cache_image:cache_image, custom_headers:custom_headers).value!
54
+ response.body unless response.nil?
55
+ end
56
+
57
+ #
58
+ # Returns the list of faces found.
59
+ #
60
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
61
+ # use; defaults to false if omitted.
62
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
63
+ # will be added to the HTTP request.
64
+ #
65
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
66
+ #
67
+ def find_faces_with_http_info(cache_image:nil, custom_headers:nil)
68
+ find_faces_async(cache_image:cache_image, custom_headers:custom_headers).value!
69
+ end
70
+
71
+ #
72
+ # Returns the list of faces found.
73
+ #
74
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
75
+ # use; defaults to false if omitted.
76
+ # @param [Hash{String => String}] A hash of custom headers that will be added
77
+ # to the HTTP request.
78
+ #
79
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
80
+ #
81
+ def find_faces_async(cache_image:nil, custom_headers:nil)
82
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
83
+
84
+
85
+ request_headers = {}
86
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
87
+
88
+ # Set Headers
89
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
90
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
91
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/FindFaces'
92
+
93
+ request_url = @base_url || @client.base_url
94
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
95
+
96
+ options = {
97
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
98
+ query_params: {'CacheImage' => cache_image},
99
+ headers: request_headers.merge(custom_headers || {}),
100
+ base_url: request_url
101
+ }
102
+ promise = @client.make_request_async(:post, path_template, options)
103
+
104
+ promise = promise.then do |result|
105
+ http_response = result.response
106
+ status_code = http_response.status
107
+ response_content = http_response.body
108
+ unless status_code == 200
109
+ error_model = JSON.load(response_content)
110
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
111
+ end
112
+
113
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
114
+ # Deserialize Response
115
+ if status_code == 200
116
+ begin
117
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
118
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::FoundFaces.mapper()
119
+ result.body = @client.deserialize(result_mapper, parsed_response)
120
+ rescue Exception => e
121
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
122
+ end
123
+ end
124
+
125
+ result
126
+ end
127
+
128
+ promise.execute
129
+ end
130
+
131
+ #
132
+ # Returns any text found in the image for the language specified. If no
133
+ # language is specified in input then the detection defaults to English.
134
+ #
135
+ # @param language [String] Language of the terms.
136
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
137
+ # use; defaults to false if omitted.
138
+ # @param enhanced [Boolean] When set to True, the image goes through additional
139
+ # processing to come with additional candidates.
140
+ #
141
+ # image/tiff is not supported when enhanced is set to true
142
+ #
143
+ # Note: This impacts the response time.
144
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
145
+ # will be added to the HTTP request.
146
+ #
147
+ # @return [OCR] operation results.
148
+ #
149
+ def ocrmethod(language, cache_image:nil, enhanced:false, custom_headers:nil)
150
+ response = ocrmethod_async(language, cache_image:cache_image, enhanced:enhanced, custom_headers:custom_headers).value!
151
+ response.body unless response.nil?
152
+ end
153
+
154
+ #
155
+ # Returns any text found in the image for the language specified. If no
156
+ # language is specified in input then the detection defaults to English.
157
+ #
158
+ # @param language [String] Language of the terms.
159
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
160
+ # use; defaults to false if omitted.
161
+ # @param enhanced [Boolean] When set to True, the image goes through additional
162
+ # processing to come with additional candidates.
163
+ #
164
+ # image/tiff is not supported when enhanced is set to true
165
+ #
166
+ # Note: This impacts the response time.
167
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
168
+ # will be added to the HTTP request.
169
+ #
170
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
171
+ #
172
+ def ocrmethod_with_http_info(language, cache_image:nil, enhanced:false, custom_headers:nil)
173
+ ocrmethod_async(language, cache_image:cache_image, enhanced:enhanced, custom_headers:custom_headers).value!
174
+ end
175
+
176
+ #
177
+ # Returns any text found in the image for the language specified. If no
178
+ # language is specified in input then the detection defaults to English.
179
+ #
180
+ # @param language [String] Language of the terms.
181
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
182
+ # use; defaults to false if omitted.
183
+ # @param enhanced [Boolean] When set to True, the image goes through additional
184
+ # processing to come with additional candidates.
185
+ #
186
+ # image/tiff is not supported when enhanced is set to true
187
+ #
188
+ # Note: This impacts the response time.
189
+ # @param [Hash{String => String}] A hash of custom headers that will be added
190
+ # to the HTTP request.
191
+ #
192
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
193
+ #
194
+ def ocrmethod_async(language, cache_image:nil, enhanced:false, custom_headers:nil)
195
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
196
+ fail ArgumentError, 'language is nil' if language.nil?
197
+
198
+
199
+ request_headers = {}
200
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
201
+
202
+ # Set Headers
203
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
204
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
205
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/OCR'
206
+
207
+ request_url = @base_url || @client.base_url
208
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
209
+
210
+ options = {
211
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
212
+ query_params: {'language' => language,'CacheImage' => cache_image,'enhanced' => enhanced},
213
+ headers: request_headers.merge(custom_headers || {}),
214
+ base_url: request_url
215
+ }
216
+ promise = @client.make_request_async(:post, path_template, options)
217
+
218
+ promise = promise.then do |result|
219
+ http_response = result.response
220
+ status_code = http_response.status
221
+ response_content = http_response.body
222
+ unless status_code == 200
223
+ error_model = JSON.load(response_content)
224
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
225
+ end
226
+
227
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
228
+ # Deserialize Response
229
+ if status_code == 200
230
+ begin
231
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
232
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::OCR.mapper()
233
+ result.body = @client.deserialize(result_mapper, parsed_response)
234
+ rescue Exception => e
235
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
236
+ end
237
+ end
238
+
239
+ result
240
+ end
241
+
242
+ promise.execute
243
+ end
244
+
245
+ #
246
+ # Returns probabilities of the image containing racy or adult content.
247
+ #
248
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
249
+ # use; defaults to false if omitted.
250
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
251
+ # will be added to the HTTP request.
252
+ #
253
+ # @return [Evaluate] operation results.
254
+ #
255
+ def evaluate_method(cache_image:nil, custom_headers:nil)
256
+ response = evaluate_method_async(cache_image:cache_image, custom_headers:custom_headers).value!
257
+ response.body unless response.nil?
258
+ end
259
+
260
+ #
261
+ # Returns probabilities of the image containing racy or adult content.
262
+ #
263
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
264
+ # use; defaults to false if omitted.
265
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
266
+ # will be added to the HTTP request.
267
+ #
268
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
269
+ #
270
+ def evaluate_method_with_http_info(cache_image:nil, custom_headers:nil)
271
+ evaluate_method_async(cache_image:cache_image, custom_headers:custom_headers).value!
272
+ end
273
+
274
+ #
275
+ # Returns probabilities of the image containing racy or adult content.
276
+ #
277
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
278
+ # use; defaults to false if omitted.
279
+ # @param [Hash{String => String}] A hash of custom headers that will be added
280
+ # to the HTTP request.
281
+ #
282
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
283
+ #
284
+ def evaluate_method_async(cache_image:nil, custom_headers:nil)
285
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
286
+
287
+
288
+ request_headers = {}
289
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
290
+
291
+ # Set Headers
292
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
293
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
294
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/Evaluate'
295
+
296
+ request_url = @base_url || @client.base_url
297
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
298
+
299
+ options = {
300
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
301
+ query_params: {'CacheImage' => cache_image},
302
+ headers: request_headers.merge(custom_headers || {}),
303
+ base_url: request_url
304
+ }
305
+ promise = @client.make_request_async(:post, path_template, options)
306
+
307
+ promise = promise.then do |result|
308
+ http_response = result.response
309
+ status_code = http_response.status
310
+ response_content = http_response.body
311
+ unless status_code == 200
312
+ error_model = JSON.load(response_content)
313
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
314
+ end
315
+
316
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
317
+ # Deserialize Response
318
+ if status_code == 200
319
+ begin
320
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
321
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::Evaluate.mapper()
322
+ result.body = @client.deserialize(result_mapper, parsed_response)
323
+ rescue Exception => e
324
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
325
+ end
326
+ end
327
+
328
+ result
329
+ end
330
+
331
+ promise.execute
332
+ end
333
+
334
+ #
335
+ # Fuzzily match an image against one of your custom Image Lists. You can create
336
+ # and manage your custom image lists using <a
337
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
338
+ # API.
339
+ #
340
+ # Returns ID and tags of matching image.<br/>
341
+ # <br/>
342
+ # Note: Refresh Index must be run on the corresponding Image List before
343
+ # additions and removals are reflected in the response.
344
+ #
345
+ # @param list_id [String] The list Id.
346
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
347
+ # use; defaults to false if omitted.
348
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
349
+ # will be added to the HTTP request.
350
+ #
351
+ # @return [MatchResponse] operation results.
352
+ #
353
+ def match_method(list_id:nil, cache_image:nil, custom_headers:nil)
354
+ response = match_method_async(list_id:list_id, cache_image:cache_image, custom_headers:custom_headers).value!
355
+ response.body unless response.nil?
356
+ end
357
+
358
+ #
359
+ # Fuzzily match an image against one of your custom Image Lists. You can create
360
+ # and manage your custom image lists using <a
361
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
362
+ # API.
363
+ #
364
+ # Returns ID and tags of matching image.<br/>
365
+ # <br/>
366
+ # Note: Refresh Index must be run on the corresponding Image List before
367
+ # additions and removals are reflected in the response.
368
+ #
369
+ # @param list_id [String] The list Id.
370
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
371
+ # use; defaults to false if omitted.
372
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
373
+ # will be added to the HTTP request.
374
+ #
375
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
376
+ #
377
+ def match_method_with_http_info(list_id:nil, cache_image:nil, custom_headers:nil)
378
+ match_method_async(list_id:list_id, cache_image:cache_image, custom_headers:custom_headers).value!
379
+ end
380
+
381
+ #
382
+ # Fuzzily match an image against one of your custom Image Lists. You can create
383
+ # and manage your custom image lists using <a
384
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
385
+ # API.
386
+ #
387
+ # Returns ID and tags of matching image.<br/>
388
+ # <br/>
389
+ # Note: Refresh Index must be run on the corresponding Image List before
390
+ # additions and removals are reflected in the response.
391
+ #
392
+ # @param list_id [String] The list Id.
393
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
394
+ # use; defaults to false if omitted.
395
+ # @param [Hash{String => String}] A hash of custom headers that will be added
396
+ # to the HTTP request.
397
+ #
398
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
399
+ #
400
+ def match_method_async(list_id:nil, cache_image:nil, custom_headers:nil)
401
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
402
+
403
+
404
+ request_headers = {}
405
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
406
+
407
+ # Set Headers
408
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
409
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
410
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/Match'
411
+
412
+ request_url = @base_url || @client.base_url
413
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
414
+
415
+ options = {
416
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
417
+ query_params: {'listId' => list_id,'CacheImage' => cache_image},
418
+ headers: request_headers.merge(custom_headers || {}),
419
+ base_url: request_url
420
+ }
421
+ promise = @client.make_request_async(:post, path_template, options)
422
+
423
+ promise = promise.then do |result|
424
+ http_response = result.response
425
+ status_code = http_response.status
426
+ response_content = http_response.body
427
+ unless status_code == 200
428
+ error_model = JSON.load(response_content)
429
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
430
+ end
431
+
432
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
433
+ # Deserialize Response
434
+ if status_code == 200
435
+ begin
436
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
437
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::MatchResponse.mapper()
438
+ result.body = @client.deserialize(result_mapper, parsed_response)
439
+ rescue Exception => e
440
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
441
+ end
442
+ end
443
+
444
+ result
445
+ end
446
+
447
+ promise.execute
448
+ end
449
+
450
+ #
451
+ # Returns the list of faces found.
452
+ #
453
+ # @param image_stream The image file.
454
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
455
+ # use; defaults to false if omitted.
456
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
457
+ # will be added to the HTTP request.
458
+ #
459
+ # @return [FoundFaces] operation results.
460
+ #
461
+ def find_faces_file_input(image_stream, cache_image:nil, custom_headers:nil)
462
+ response = find_faces_file_input_async(image_stream, cache_image:cache_image, custom_headers:custom_headers).value!
463
+ response.body unless response.nil?
464
+ end
465
+
466
+ #
467
+ # Returns the list of faces found.
468
+ #
469
+ # @param image_stream The image file.
470
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
471
+ # use; defaults to false if omitted.
472
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
473
+ # will be added to the HTTP request.
474
+ #
475
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
476
+ #
477
+ def find_faces_file_input_with_http_info(image_stream, cache_image:nil, custom_headers:nil)
478
+ find_faces_file_input_async(image_stream, cache_image:cache_image, custom_headers:custom_headers).value!
479
+ end
480
+
481
+ #
482
+ # Returns the list of faces found.
483
+ #
484
+ # @param image_stream The image file.
485
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
486
+ # use; defaults to false if omitted.
487
+ # @param [Hash{String => String}] A hash of custom headers that will be added
488
+ # to the HTTP request.
489
+ #
490
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
491
+ #
492
+ def find_faces_file_input_async(image_stream, cache_image:nil, custom_headers:nil)
493
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
494
+ fail ArgumentError, 'image_stream is nil' if image_stream.nil?
495
+
496
+
497
+ request_headers = {}
498
+ request_headers['Content-Type'] = 'image/gif'
499
+
500
+ # Set Headers
501
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
502
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
503
+
504
+ # Serialize Request
505
+ request_mapper = {
506
+ client_side_validation: true,
507
+ required: true,
508
+ serialized_name: 'ImageStream',
509
+ type: {
510
+ name: 'Stream'
511
+ }
512
+ }
513
+ request_content = @client.serialize(request_mapper, image_stream)
514
+
515
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/FindFaces'
516
+
517
+ request_url = @base_url || @client.base_url
518
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
519
+
520
+ options = {
521
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
522
+ query_params: {'CacheImage' => cache_image},
523
+ body: request_content,
524
+ headers: request_headers.merge(custom_headers || {}),
525
+ base_url: request_url
526
+ }
527
+ promise = @client.make_request_async(:post, path_template, options)
528
+
529
+ promise = promise.then do |result|
530
+ http_response = result.response
531
+ status_code = http_response.status
532
+ response_content = http_response.body
533
+ unless status_code == 200
534
+ error_model = JSON.load(response_content)
535
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
536
+ end
537
+
538
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
539
+ # Deserialize Response
540
+ if status_code == 200
541
+ begin
542
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
543
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::FoundFaces.mapper()
544
+ result.body = @client.deserialize(result_mapper, parsed_response)
545
+ rescue Exception => e
546
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
547
+ end
548
+ end
549
+
550
+ result
551
+ end
552
+
553
+ promise.execute
554
+ end
555
+
556
+ #
557
+ # Returns the list of faces found.
558
+ #
559
+ # @param content_type [String] The content type.
560
+ # @param image_url [ImageUrl] The image url.
561
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
562
+ # use; defaults to false if omitted.
563
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
564
+ # will be added to the HTTP request.
565
+ #
566
+ # @return [FoundFaces] operation results.
567
+ #
568
+ def find_faces_url_input(content_type, image_url, cache_image:nil, custom_headers:nil)
569
+ response = find_faces_url_input_async(content_type, image_url, cache_image:cache_image, custom_headers:custom_headers).value!
570
+ response.body unless response.nil?
571
+ end
572
+
573
+ #
574
+ # Returns the list of faces found.
575
+ #
576
+ # @param content_type [String] The content type.
577
+ # @param image_url [ImageUrl] The image url.
578
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
579
+ # use; defaults to false if omitted.
580
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
581
+ # will be added to the HTTP request.
582
+ #
583
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
584
+ #
585
+ def find_faces_url_input_with_http_info(content_type, image_url, cache_image:nil, custom_headers:nil)
586
+ find_faces_url_input_async(content_type, image_url, cache_image:cache_image, custom_headers:custom_headers).value!
587
+ end
588
+
589
+ #
590
+ # Returns the list of faces found.
591
+ #
592
+ # @param content_type [String] The content type.
593
+ # @param image_url [ImageUrl] The image url.
594
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
595
+ # use; defaults to false if omitted.
596
+ # @param [Hash{String => String}] A hash of custom headers that will be added
597
+ # to the HTTP request.
598
+ #
599
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
600
+ #
601
+ def find_faces_url_input_async(content_type, image_url, cache_image:nil, custom_headers:nil)
602
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
603
+ fail ArgumentError, 'content_type is nil' if content_type.nil?
604
+ fail ArgumentError, 'image_url is nil' if image_url.nil?
605
+
606
+
607
+ request_headers = {}
608
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
609
+
610
+ # Set Headers
611
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
612
+ request_headers['Content-Type'] = content_type unless content_type.nil?
613
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
614
+
615
+ # Serialize Request
616
+ request_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::ImageUrl.mapper()
617
+ request_content = @client.serialize(request_mapper, image_url)
618
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
619
+
620
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/FindFaces'
621
+
622
+ request_url = @base_url || @client.base_url
623
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
624
+
625
+ options = {
626
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
627
+ query_params: {'CacheImage' => cache_image},
628
+ body: request_content,
629
+ headers: request_headers.merge(custom_headers || {}),
630
+ base_url: request_url
631
+ }
632
+ promise = @client.make_request_async(:post, path_template, options)
633
+
634
+ promise = promise.then do |result|
635
+ http_response = result.response
636
+ status_code = http_response.status
637
+ response_content = http_response.body
638
+ unless status_code == 200
639
+ error_model = JSON.load(response_content)
640
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
641
+ end
642
+
643
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
644
+ # Deserialize Response
645
+ if status_code == 200
646
+ begin
647
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
648
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::FoundFaces.mapper()
649
+ result.body = @client.deserialize(result_mapper, parsed_response)
650
+ rescue Exception => e
651
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
652
+ end
653
+ end
654
+
655
+ result
656
+ end
657
+
658
+ promise.execute
659
+ end
660
+
661
+ #
662
+ # Returns any text found in the image for the language specified. If no
663
+ # language is specified in input then the detection defaults to English.
664
+ #
665
+ # @param language [String] Language of the terms.
666
+ # @param content_type [String] The content type.
667
+ # @param image_url [ImageUrl] The image url.
668
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
669
+ # use; defaults to false if omitted.
670
+ # @param enhanced [Boolean] When set to True, the image goes through additional
671
+ # processing to come with additional candidates.
672
+ #
673
+ # image/tiff is not supported when enhanced is set to true
674
+ #
675
+ # Note: This impacts the response time.
676
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
677
+ # will be added to the HTTP request.
678
+ #
679
+ # @return [OCR] operation results.
680
+ #
681
+ def ocrurl_input(language, content_type, image_url, cache_image:nil, enhanced:false, custom_headers:nil)
682
+ response = ocrurl_input_async(language, content_type, image_url, cache_image:cache_image, enhanced:enhanced, custom_headers:custom_headers).value!
683
+ response.body unless response.nil?
684
+ end
685
+
686
+ #
687
+ # Returns any text found in the image for the language specified. If no
688
+ # language is specified in input then the detection defaults to English.
689
+ #
690
+ # @param language [String] Language of the terms.
691
+ # @param content_type [String] The content type.
692
+ # @param image_url [ImageUrl] The image url.
693
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
694
+ # use; defaults to false if omitted.
695
+ # @param enhanced [Boolean] When set to True, the image goes through additional
696
+ # processing to come with additional candidates.
697
+ #
698
+ # image/tiff is not supported when enhanced is set to true
699
+ #
700
+ # Note: This impacts the response time.
701
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
702
+ # will be added to the HTTP request.
703
+ #
704
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
705
+ #
706
+ def ocrurl_input_with_http_info(language, content_type, image_url, cache_image:nil, enhanced:false, custom_headers:nil)
707
+ ocrurl_input_async(language, content_type, image_url, cache_image:cache_image, enhanced:enhanced, custom_headers:custom_headers).value!
708
+ end
709
+
710
+ #
711
+ # Returns any text found in the image for the language specified. If no
712
+ # language is specified in input then the detection defaults to English.
713
+ #
714
+ # @param language [String] Language of the terms.
715
+ # @param content_type [String] The content type.
716
+ # @param image_url [ImageUrl] The image url.
717
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
718
+ # use; defaults to false if omitted.
719
+ # @param enhanced [Boolean] When set to True, the image goes through additional
720
+ # processing to come with additional candidates.
721
+ #
722
+ # image/tiff is not supported when enhanced is set to true
723
+ #
724
+ # Note: This impacts the response time.
725
+ # @param [Hash{String => String}] A hash of custom headers that will be added
726
+ # to the HTTP request.
727
+ #
728
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
729
+ #
730
+ def ocrurl_input_async(language, content_type, image_url, cache_image:nil, enhanced:false, custom_headers:nil)
731
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
732
+ fail ArgumentError, 'language is nil' if language.nil?
733
+ fail ArgumentError, 'content_type is nil' if content_type.nil?
734
+ fail ArgumentError, 'image_url is nil' if image_url.nil?
735
+
736
+
737
+ request_headers = {}
738
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
739
+
740
+ # Set Headers
741
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
742
+ request_headers['Content-Type'] = content_type unless content_type.nil?
743
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
744
+
745
+ # Serialize Request
746
+ request_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::ImageUrl.mapper()
747
+ request_content = @client.serialize(request_mapper, image_url)
748
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
749
+
750
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/OCR'
751
+
752
+ request_url = @base_url || @client.base_url
753
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
754
+
755
+ options = {
756
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
757
+ query_params: {'language' => language,'CacheImage' => cache_image,'enhanced' => enhanced},
758
+ body: request_content,
759
+ headers: request_headers.merge(custom_headers || {}),
760
+ base_url: request_url
761
+ }
762
+ promise = @client.make_request_async(:post, path_template, options)
763
+
764
+ promise = promise.then do |result|
765
+ http_response = result.response
766
+ status_code = http_response.status
767
+ response_content = http_response.body
768
+ unless status_code == 200
769
+ error_model = JSON.load(response_content)
770
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
771
+ end
772
+
773
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
774
+ # Deserialize Response
775
+ if status_code == 200
776
+ begin
777
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
778
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::OCR.mapper()
779
+ result.body = @client.deserialize(result_mapper, parsed_response)
780
+ rescue Exception => e
781
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
782
+ end
783
+ end
784
+
785
+ result
786
+ end
787
+
788
+ promise.execute
789
+ end
790
+
791
+ #
792
+ # Returns any text found in the image for the language specified. If no
793
+ # language is specified in input then the detection defaults to English.
794
+ #
795
+ # @param language [String] Language of the terms.
796
+ # @param image_stream The image file.
797
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
798
+ # use; defaults to false if omitted.
799
+ # @param enhanced [Boolean] When set to True, the image goes through additional
800
+ # processing to come with additional candidates.
801
+ #
802
+ # image/tiff is not supported when enhanced is set to true
803
+ #
804
+ # Note: This impacts the response time.
805
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
806
+ # will be added to the HTTP request.
807
+ #
808
+ # @return [OCR] operation results.
809
+ #
810
+ def ocrfile_input(language, image_stream, cache_image:nil, enhanced:false, custom_headers:nil)
811
+ response = ocrfile_input_async(language, image_stream, cache_image:cache_image, enhanced:enhanced, custom_headers:custom_headers).value!
812
+ response.body unless response.nil?
813
+ end
814
+
815
+ #
816
+ # Returns any text found in the image for the language specified. If no
817
+ # language is specified in input then the detection defaults to English.
818
+ #
819
+ # @param language [String] Language of the terms.
820
+ # @param image_stream The image file.
821
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
822
+ # use; defaults to false if omitted.
823
+ # @param enhanced [Boolean] When set to True, the image goes through additional
824
+ # processing to come with additional candidates.
825
+ #
826
+ # image/tiff is not supported when enhanced is set to true
827
+ #
828
+ # Note: This impacts the response time.
829
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
830
+ # will be added to the HTTP request.
831
+ #
832
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
833
+ #
834
+ def ocrfile_input_with_http_info(language, image_stream, cache_image:nil, enhanced:false, custom_headers:nil)
835
+ ocrfile_input_async(language, image_stream, cache_image:cache_image, enhanced:enhanced, custom_headers:custom_headers).value!
836
+ end
837
+
838
+ #
839
+ # Returns any text found in the image for the language specified. If no
840
+ # language is specified in input then the detection defaults to English.
841
+ #
842
+ # @param language [String] Language of the terms.
843
+ # @param image_stream The image file.
844
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
845
+ # use; defaults to false if omitted.
846
+ # @param enhanced [Boolean] When set to True, the image goes through additional
847
+ # processing to come with additional candidates.
848
+ #
849
+ # image/tiff is not supported when enhanced is set to true
850
+ #
851
+ # Note: This impacts the response time.
852
+ # @param [Hash{String => String}] A hash of custom headers that will be added
853
+ # to the HTTP request.
854
+ #
855
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
856
+ #
857
+ def ocrfile_input_async(language, image_stream, cache_image:nil, enhanced:false, custom_headers:nil)
858
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
859
+ fail ArgumentError, 'language is nil' if language.nil?
860
+ fail ArgumentError, 'image_stream is nil' if image_stream.nil?
861
+
862
+
863
+ request_headers = {}
864
+ request_headers['Content-Type'] = 'image/gif'
865
+
866
+ # Set Headers
867
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
868
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
869
+
870
+ # Serialize Request
871
+ request_mapper = {
872
+ client_side_validation: true,
873
+ required: true,
874
+ serialized_name: 'ImageStream',
875
+ type: {
876
+ name: 'Stream'
877
+ }
878
+ }
879
+ request_content = @client.serialize(request_mapper, image_stream)
880
+
881
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/OCR'
882
+
883
+ request_url = @base_url || @client.base_url
884
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
885
+
886
+ options = {
887
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
888
+ query_params: {'language' => language,'CacheImage' => cache_image,'enhanced' => enhanced},
889
+ body: request_content,
890
+ headers: request_headers.merge(custom_headers || {}),
891
+ base_url: request_url
892
+ }
893
+ promise = @client.make_request_async(:post, path_template, options)
894
+
895
+ promise = promise.then do |result|
896
+ http_response = result.response
897
+ status_code = http_response.status
898
+ response_content = http_response.body
899
+ unless status_code == 200
900
+ error_model = JSON.load(response_content)
901
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
902
+ end
903
+
904
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
905
+ # Deserialize Response
906
+ if status_code == 200
907
+ begin
908
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
909
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::OCR.mapper()
910
+ result.body = @client.deserialize(result_mapper, parsed_response)
911
+ rescue Exception => e
912
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
913
+ end
914
+ end
915
+
916
+ result
917
+ end
918
+
919
+ promise.execute
920
+ end
921
+
922
+ #
923
+ # Returns probabilities of the image containing racy or adult content.
924
+ #
925
+ # @param image_stream The image file.
926
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
927
+ # use; defaults to false if omitted.
928
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
929
+ # will be added to the HTTP request.
930
+ #
931
+ # @return [Evaluate] operation results.
932
+ #
933
+ def evaluate_file_input(image_stream, cache_image:nil, custom_headers:nil)
934
+ response = evaluate_file_input_async(image_stream, cache_image:cache_image, custom_headers:custom_headers).value!
935
+ response.body unless response.nil?
936
+ end
937
+
938
+ #
939
+ # Returns probabilities of the image containing racy or adult content.
940
+ #
941
+ # @param image_stream The image file.
942
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
943
+ # use; defaults to false if omitted.
944
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
945
+ # will be added to the HTTP request.
946
+ #
947
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
948
+ #
949
+ def evaluate_file_input_with_http_info(image_stream, cache_image:nil, custom_headers:nil)
950
+ evaluate_file_input_async(image_stream, cache_image:cache_image, custom_headers:custom_headers).value!
951
+ end
952
+
953
+ #
954
+ # Returns probabilities of the image containing racy or adult content.
955
+ #
956
+ # @param image_stream The image file.
957
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
958
+ # use; defaults to false if omitted.
959
+ # @param [Hash{String => String}] A hash of custom headers that will be added
960
+ # to the HTTP request.
961
+ #
962
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
963
+ #
964
+ def evaluate_file_input_async(image_stream, cache_image:nil, custom_headers:nil)
965
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
966
+ fail ArgumentError, 'image_stream is nil' if image_stream.nil?
967
+
968
+
969
+ request_headers = {}
970
+ request_headers['Content-Type'] = 'image/gif'
971
+
972
+ # Set Headers
973
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
974
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
975
+
976
+ # Serialize Request
977
+ request_mapper = {
978
+ client_side_validation: true,
979
+ required: true,
980
+ serialized_name: 'ImageStream',
981
+ type: {
982
+ name: 'Stream'
983
+ }
984
+ }
985
+ request_content = @client.serialize(request_mapper, image_stream)
986
+
987
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/Evaluate'
988
+
989
+ request_url = @base_url || @client.base_url
990
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
991
+
992
+ options = {
993
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
994
+ query_params: {'CacheImage' => cache_image},
995
+ body: request_content,
996
+ headers: request_headers.merge(custom_headers || {}),
997
+ base_url: request_url
998
+ }
999
+ promise = @client.make_request_async(:post, path_template, options)
1000
+
1001
+ promise = promise.then do |result|
1002
+ http_response = result.response
1003
+ status_code = http_response.status
1004
+ response_content = http_response.body
1005
+ unless status_code == 200
1006
+ error_model = JSON.load(response_content)
1007
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
1008
+ end
1009
+
1010
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1011
+ # Deserialize Response
1012
+ if status_code == 200
1013
+ begin
1014
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1015
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::Evaluate.mapper()
1016
+ result.body = @client.deserialize(result_mapper, parsed_response)
1017
+ rescue Exception => e
1018
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1019
+ end
1020
+ end
1021
+
1022
+ result
1023
+ end
1024
+
1025
+ promise.execute
1026
+ end
1027
+
1028
+ #
1029
+ # Returns probabilities of the image containing racy or adult content.
1030
+ #
1031
+ # @param content_type [String] The content type.
1032
+ # @param image_url [ImageUrl] The image url.
1033
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1034
+ # use; defaults to false if omitted.
1035
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1036
+ # will be added to the HTTP request.
1037
+ #
1038
+ # @return [Evaluate] operation results.
1039
+ #
1040
+ def evaluate_url_input(content_type, image_url, cache_image:nil, custom_headers:nil)
1041
+ response = evaluate_url_input_async(content_type, image_url, cache_image:cache_image, custom_headers:custom_headers).value!
1042
+ response.body unless response.nil?
1043
+ end
1044
+
1045
+ #
1046
+ # Returns probabilities of the image containing racy or adult content.
1047
+ #
1048
+ # @param content_type [String] The content type.
1049
+ # @param image_url [ImageUrl] The image url.
1050
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1051
+ # use; defaults to false if omitted.
1052
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1053
+ # will be added to the HTTP request.
1054
+ #
1055
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1056
+ #
1057
+ def evaluate_url_input_with_http_info(content_type, image_url, cache_image:nil, custom_headers:nil)
1058
+ evaluate_url_input_async(content_type, image_url, cache_image:cache_image, custom_headers:custom_headers).value!
1059
+ end
1060
+
1061
+ #
1062
+ # Returns probabilities of the image containing racy or adult content.
1063
+ #
1064
+ # @param content_type [String] The content type.
1065
+ # @param image_url [ImageUrl] The image url.
1066
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1067
+ # use; defaults to false if omitted.
1068
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1069
+ # to the HTTP request.
1070
+ #
1071
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1072
+ #
1073
+ def evaluate_url_input_async(content_type, image_url, cache_image:nil, custom_headers:nil)
1074
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
1075
+ fail ArgumentError, 'content_type is nil' if content_type.nil?
1076
+ fail ArgumentError, 'image_url is nil' if image_url.nil?
1077
+
1078
+
1079
+ request_headers = {}
1080
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1081
+
1082
+ # Set Headers
1083
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1084
+ request_headers['Content-Type'] = content_type unless content_type.nil?
1085
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1086
+
1087
+ # Serialize Request
1088
+ request_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::ImageUrl.mapper()
1089
+ request_content = @client.serialize(request_mapper, image_url)
1090
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
1091
+
1092
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/Evaluate'
1093
+
1094
+ request_url = @base_url || @client.base_url
1095
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
1096
+
1097
+ options = {
1098
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1099
+ query_params: {'CacheImage' => cache_image},
1100
+ body: request_content,
1101
+ headers: request_headers.merge(custom_headers || {}),
1102
+ base_url: request_url
1103
+ }
1104
+ promise = @client.make_request_async(:post, path_template, options)
1105
+
1106
+ promise = promise.then do |result|
1107
+ http_response = result.response
1108
+ status_code = http_response.status
1109
+ response_content = http_response.body
1110
+ unless status_code == 200
1111
+ error_model = JSON.load(response_content)
1112
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
1113
+ end
1114
+
1115
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1116
+ # Deserialize Response
1117
+ if status_code == 200
1118
+ begin
1119
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1120
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::Evaluate.mapper()
1121
+ result.body = @client.deserialize(result_mapper, parsed_response)
1122
+ rescue Exception => e
1123
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1124
+ end
1125
+ end
1126
+
1127
+ result
1128
+ end
1129
+
1130
+ promise.execute
1131
+ end
1132
+
1133
+ #
1134
+ # Fuzzily match an image against one of your custom Image Lists. You can create
1135
+ # and manage your custom image lists using <a
1136
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
1137
+ # API.
1138
+ #
1139
+ # Returns ID and tags of matching image.<br/>
1140
+ # <br/>
1141
+ # Note: Refresh Index must be run on the corresponding Image List before
1142
+ # additions and removals are reflected in the response.
1143
+ #
1144
+ # @param content_type [String] The content type.
1145
+ # @param image_url [ImageUrl] The image url.
1146
+ # @param list_id [String] The list Id.
1147
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1148
+ # use; defaults to false if omitted.
1149
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1150
+ # will be added to the HTTP request.
1151
+ #
1152
+ # @return [MatchResponse] operation results.
1153
+ #
1154
+ def match_url_input(content_type, image_url, list_id:nil, cache_image:nil, custom_headers:nil)
1155
+ response = match_url_input_async(content_type, image_url, list_id:list_id, cache_image:cache_image, custom_headers:custom_headers).value!
1156
+ response.body unless response.nil?
1157
+ end
1158
+
1159
+ #
1160
+ # Fuzzily match an image against one of your custom Image Lists. You can create
1161
+ # and manage your custom image lists using <a
1162
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
1163
+ # API.
1164
+ #
1165
+ # Returns ID and tags of matching image.<br/>
1166
+ # <br/>
1167
+ # Note: Refresh Index must be run on the corresponding Image List before
1168
+ # additions and removals are reflected in the response.
1169
+ #
1170
+ # @param content_type [String] The content type.
1171
+ # @param image_url [ImageUrl] The image url.
1172
+ # @param list_id [String] The list Id.
1173
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1174
+ # use; defaults to false if omitted.
1175
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1176
+ # will be added to the HTTP request.
1177
+ #
1178
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1179
+ #
1180
+ def match_url_input_with_http_info(content_type, image_url, list_id:nil, cache_image:nil, custom_headers:nil)
1181
+ match_url_input_async(content_type, image_url, list_id:list_id, cache_image:cache_image, custom_headers:custom_headers).value!
1182
+ end
1183
+
1184
+ #
1185
+ # Fuzzily match an image against one of your custom Image Lists. You can create
1186
+ # and manage your custom image lists using <a
1187
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
1188
+ # API.
1189
+ #
1190
+ # Returns ID and tags of matching image.<br/>
1191
+ # <br/>
1192
+ # Note: Refresh Index must be run on the corresponding Image List before
1193
+ # additions and removals are reflected in the response.
1194
+ #
1195
+ # @param content_type [String] The content type.
1196
+ # @param image_url [ImageUrl] The image url.
1197
+ # @param list_id [String] The list Id.
1198
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1199
+ # use; defaults to false if omitted.
1200
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1201
+ # to the HTTP request.
1202
+ #
1203
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1204
+ #
1205
+ def match_url_input_async(content_type, image_url, list_id:nil, cache_image:nil, custom_headers:nil)
1206
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
1207
+ fail ArgumentError, 'content_type is nil' if content_type.nil?
1208
+ fail ArgumentError, 'image_url is nil' if image_url.nil?
1209
+
1210
+
1211
+ request_headers = {}
1212
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
1213
+
1214
+ # Set Headers
1215
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1216
+ request_headers['Content-Type'] = content_type unless content_type.nil?
1217
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1218
+
1219
+ # Serialize Request
1220
+ request_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::ImageUrl.mapper()
1221
+ request_content = @client.serialize(request_mapper, image_url)
1222
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
1223
+
1224
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/Match'
1225
+
1226
+ request_url = @base_url || @client.base_url
1227
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
1228
+
1229
+ options = {
1230
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1231
+ query_params: {'listId' => list_id,'CacheImage' => cache_image},
1232
+ body: request_content,
1233
+ headers: request_headers.merge(custom_headers || {}),
1234
+ base_url: request_url
1235
+ }
1236
+ promise = @client.make_request_async(:post, path_template, options)
1237
+
1238
+ promise = promise.then do |result|
1239
+ http_response = result.response
1240
+ status_code = http_response.status
1241
+ response_content = http_response.body
1242
+ unless status_code == 200
1243
+ error_model = JSON.load(response_content)
1244
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
1245
+ end
1246
+
1247
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1248
+ # Deserialize Response
1249
+ if status_code == 200
1250
+ begin
1251
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1252
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::MatchResponse.mapper()
1253
+ result.body = @client.deserialize(result_mapper, parsed_response)
1254
+ rescue Exception => e
1255
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1256
+ end
1257
+ end
1258
+
1259
+ result
1260
+ end
1261
+
1262
+ promise.execute
1263
+ end
1264
+
1265
+ #
1266
+ # Fuzzily match an image against one of your custom Image Lists. You can create
1267
+ # and manage your custom image lists using <a
1268
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
1269
+ # API.
1270
+ #
1271
+ # Returns ID and tags of matching image.<br/>
1272
+ # <br/>
1273
+ # Note: Refresh Index must be run on the corresponding Image List before
1274
+ # additions and removals are reflected in the response.
1275
+ #
1276
+ # @param image_stream The image file.
1277
+ # @param list_id [String] The list Id.
1278
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1279
+ # use; defaults to false if omitted.
1280
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1281
+ # will be added to the HTTP request.
1282
+ #
1283
+ # @return [MatchResponse] operation results.
1284
+ #
1285
+ def match_file_input(image_stream, list_id:nil, cache_image:nil, custom_headers:nil)
1286
+ response = match_file_input_async(image_stream, list_id:list_id, cache_image:cache_image, custom_headers:custom_headers).value!
1287
+ response.body unless response.nil?
1288
+ end
1289
+
1290
+ #
1291
+ # Fuzzily match an image against one of your custom Image Lists. You can create
1292
+ # and manage your custom image lists using <a
1293
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
1294
+ # API.
1295
+ #
1296
+ # Returns ID and tags of matching image.<br/>
1297
+ # <br/>
1298
+ # Note: Refresh Index must be run on the corresponding Image List before
1299
+ # additions and removals are reflected in the response.
1300
+ #
1301
+ # @param image_stream The image file.
1302
+ # @param list_id [String] The list Id.
1303
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1304
+ # use; defaults to false if omitted.
1305
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
1306
+ # will be added to the HTTP request.
1307
+ #
1308
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
1309
+ #
1310
+ def match_file_input_with_http_info(image_stream, list_id:nil, cache_image:nil, custom_headers:nil)
1311
+ match_file_input_async(image_stream, list_id:list_id, cache_image:cache_image, custom_headers:custom_headers).value!
1312
+ end
1313
+
1314
+ #
1315
+ # Fuzzily match an image against one of your custom Image Lists. You can create
1316
+ # and manage your custom image lists using <a
1317
+ # href="/docs/services/578ff44d2703741568569ab9/operations/578ff7b12703741568569abe">this</a>
1318
+ # API.
1319
+ #
1320
+ # Returns ID and tags of matching image.<br/>
1321
+ # <br/>
1322
+ # Note: Refresh Index must be run on the corresponding Image List before
1323
+ # additions and removals are reflected in the response.
1324
+ #
1325
+ # @param image_stream The image file.
1326
+ # @param list_id [String] The list Id.
1327
+ # @param cache_image [Boolean] Whether to retain the submitted image for future
1328
+ # use; defaults to false if omitted.
1329
+ # @param [Hash{String => String}] A hash of custom headers that will be added
1330
+ # to the HTTP request.
1331
+ #
1332
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
1333
+ #
1334
+ def match_file_input_async(image_stream, list_id:nil, cache_image:nil, custom_headers:nil)
1335
+ fail ArgumentError, '@client.base_url is nil' if @client.base_url.nil?
1336
+ fail ArgumentError, 'image_stream is nil' if image_stream.nil?
1337
+
1338
+
1339
+ request_headers = {}
1340
+ request_headers['Content-Type'] = 'image/gif'
1341
+
1342
+ # Set Headers
1343
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
1344
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
1345
+
1346
+ # Serialize Request
1347
+ request_mapper = {
1348
+ client_side_validation: true,
1349
+ required: true,
1350
+ serialized_name: 'ImageStream',
1351
+ type: {
1352
+ name: 'Stream'
1353
+ }
1354
+ }
1355
+ request_content = @client.serialize(request_mapper, image_stream)
1356
+
1357
+ path_template = 'contentmoderator/moderate/v1.0/ProcessImage/Match'
1358
+
1359
+ request_url = @base_url || @client.base_url
1360
+ request_url = request_url.gsub('{baseUrl}', @client.base_url)
1361
+
1362
+ options = {
1363
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
1364
+ query_params: {'listId' => list_id,'CacheImage' => cache_image},
1365
+ body: request_content,
1366
+ headers: request_headers.merge(custom_headers || {}),
1367
+ base_url: request_url
1368
+ }
1369
+ promise = @client.make_request_async(:post, path_template, options)
1370
+
1371
+ promise = promise.then do |result|
1372
+ http_response = result.response
1373
+ status_code = http_response.status
1374
+ response_content = http_response.body
1375
+ unless status_code == 200
1376
+ error_model = JSON.load(response_content)
1377
+ fail MsRest::HttpOperationError.new(result.request, http_response, error_model)
1378
+ end
1379
+
1380
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
1381
+ # Deserialize Response
1382
+ if status_code == 200
1383
+ begin
1384
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
1385
+ result_mapper = Azure::CognitiveServices::ContentModerator::V1_0::Models::MatchResponse.mapper()
1386
+ result.body = @client.deserialize(result_mapper, parsed_response)
1387
+ rescue Exception => e
1388
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
1389
+ end
1390
+ end
1391
+
1392
+ result
1393
+ end
1394
+
1395
+ promise.execute
1396
+ end
1397
+
1398
+ end
1399
+ end