diff --git a/README.md b/README.md index 8211b5758ec6..b0f0296208ba 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,6 @@ -## All PRs should be opened against master branch. This branch is being retired and will be deleted. - -### Microsoft Azure SDK for .NET +# Microsoft Azure SDK for .NET ---------- The Microsoft Azure SDK for .NET allows you to build applications that take advantage of scalable cloud computing resources. diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestFaceList.json b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestFaceList.json deleted file mode 100644 index 899a124ffa22..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestFaceList.json +++ /dev/null @@ -1,720 +0,0 @@ -{ - "Entries": [ - { - "RequestUri": "/face/v1.0/facelists/source-face-list-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9mYWNlbGlzdHMvc291cmNlLWZhY2UtbGlzdC1pZA==", - "RequestMethod": "PUT", - "RequestBody": "{\r\n \"name\": \"namesource-face-list-id\",\r\n \"userData\": \"userdatasource-face-list-id\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "87" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:41 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "63431b24-2325-4e30-ae41-ddc56cafa1dc" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/facelists/source-face-list-id/persistedfaces", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9mYWNlbGlzdHMvc291cmNlLWZhY2UtbGlzdC1pZC9wZXJzaXN0ZWRmYWNlcw==", - "RequestMethod": "POST", - "RequestBody": "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", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/octet-stream" - ], - "Content-Length": [ - "9344" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:42 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "2bf23d45-d7db-45ff-8b02-198ebbf5f7f3" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "58" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"persistedFaceId\": \"60de9ca0-a9ab-4f3c-aac0-b326a0de90d0\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHM=", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"type\": \"FaceList\",\r\n \"objectId\": \"source-face-list-id\",\r\n \"applyScope\": [\r\n \"\"\r\n ],\r\n \"userData\": \"User provided data for the snapshot.\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "177" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:42 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "/operations/fbfd27cd-d7db-479e-957e-9a3897e32745" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "3d4f5167-d869-4ef6-bd21-c9b1563f863a" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/operations/fbfd27cd-d7db-479e-957e-9a3897e32745", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zL2ZiZmQyN2NkLWQ3ZGItNDc5ZS05NTdlLTlhMzg5N2UzMjc0NQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:42 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "454156cd-04e1-47aa-acb4-76e3b38eecf4" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:42.8832101Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:43.0109403Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/fbfd27cd-d7db-479e-957e-9a3897e32745", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zL2ZiZmQyN2NkLWQ3ZGItNDc5ZS05NTdlLTlhMzg5N2UzMjc0NQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:44 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "1469bc1b-6e6c-4e81-9cee-975bb40e9159" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:42.8832101Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:44.2768126Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/fbfd27cd-d7db-479e-957e-9a3897e32745", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zL2ZiZmQyN2NkLWQ3ZGItNDc5ZS05NTdlLTlhMzg5N2UzMjc0NQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:45 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "c9f7211b-75c4-4318-b214-0cdadcc155b9" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "199" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:42.8832101Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:44.5267791Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": \"/snapshots/f0704384-1519-443d-a46c-999dfb3b2059\",\r\n \"Status\": \"succeeded\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots/f0704384-1519-443d-a46c-999dfb3b2059/apply", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHMvZjA3MDQzODQtMTUxOS00NDNkLWE0NmMtOTk5ZGZiM2IyMDU5L2FwcGx5", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"objectId\": \"target-face-list-id\",\r\n \"mode\": \"CreateNew\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "65" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:45 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "/operations/86a6b9f5-86df-47c2-b2d2-412c5990d085" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "70689f4b-25fb-41ea-9622-d66bb7392df3" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/operations/86a6b9f5-86df-47c2-b2d2-412c5990d085", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzg2YTZiOWY1LTg2ZGYtNDdjMi1iMmQyLTQxMmM1OTkwZDA4NQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:45 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "7e5c7aac-b760-41aa-86d8-00ccb6c14f0d" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "151" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:45.8506017Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:45.979911Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/86a6b9f5-86df-47c2-b2d2-412c5990d085", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzg2YTZiOWY1LTg2ZGYtNDdjMi1iMmQyLTQxMmM1OTkwZDA4NQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:47 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "b76975c8-4998-43c2-ae78-567e855e8e78" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "181" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:45.8506017Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:46.3236725Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": \"/facelist/target-face-list-id\",\r\n \"Status\": \"succeeded\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/facelists/target-face-list-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9mYWNlbGlzdHMvdGFyZ2V0LWZhY2UtbGlzdC1pZA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:47 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "4bb4bea8-6486-4938-871c-6887429f9a18" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "204" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"persistedFaces\": [\r\n {\r\n \"persistedFaceId\": \"60de9ca0-a9ab-4f3c-aac0-b326a0de90d0\",\r\n \"userData\": null\r\n }\r\n ],\r\n \"faceListId\": \"target-face-list-id\",\r\n \"name\": \"namesource-face-list-id\",\r\n \"userData\": \"userdatasource-face-list-id\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/facelists/source-face-list-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9mYWNlbGlzdHMvc291cmNlLWZhY2UtbGlzdC1pZA==", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:47 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "6f2e45f3-a681-4564-b218-eee68f0101fb" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/facelists/target-face-list-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9mYWNlbGlzdHMvdGFyZ2V0LWZhY2UtbGlzdC1pZA==", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:47 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "496ceed0-8fbf-450e-9020-8fe568553028" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots/f0704384-1519-443d-a46c-999dfb3b2059", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHMvZjA3MDQzODQtMTUxOS00NDNkLWE0NmMtOTk5ZGZiM2IyMDU5", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:48 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "dc424c46-8251-4766-8b4e-ab0de22f2712" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - } - ], - "Names": {}, - "Variables": {} -} \ No newline at end of file diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestLargeFaceList.json b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestLargeFaceList.json deleted file mode 100644 index 7e4e0b480511..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestLargeFaceList.json +++ /dev/null @@ -1,939 +0,0 @@ -{ - "Entries": [ - { - "RequestUri": "/face/v1.0/largefacelists/source-large-face-list-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy9zb3VyY2UtbGFyZ2UtZmFjZS1saXN0LWlk", - "RequestMethod": "PUT", - "RequestBody": "{\r\n \"name\": \"namesource-large-face-list-id\",\r\n \"userData\": \"userdatasource-large-face-list-id\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "99" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:31 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "877563ab-f129-471c-a25f-a6daffa4c259" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largefacelists/source-large-face-list-id/persistedfaces", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy9zb3VyY2UtbGFyZ2UtZmFjZS1saXN0LWlkL3BlcnNpc3RlZGZhY2Vz", - "RequestMethod": "POST", - "RequestBody": "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", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/octet-stream" - ], - "Content-Length": [ - "9344" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:32 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "3637427e-5bc2-4c3e-8ea1-69b778f07505" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "74" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"persistedFaceId\": \"3e1e0d9b-f5af-4adf-8b26-cf1c6d2a4ec7\",\r\n \"userData\": null\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largefacelists/source-large-face-list-id/train", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy9zb3VyY2UtbGFyZ2UtZmFjZS1saXN0LWlkL3RyYWlu", - "RequestMethod": "POST", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:32 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "http://westus.ppe.facev1.api.cognitive.trafficmanager.net:8080/largefacelists/source-large-face-list-id/training" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "f3d32d97-dfaf-48b8-89c5-643bc50ebd24" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Access-Control-Expose-Headers": [ - "Operation-Location" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/largefacelists/source-large-face-list-id/training", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy9zb3VyY2UtbGFyZ2UtZmFjZS1saXN0LWlkL3RyYWluaW5n", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:32 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "28c3a488-1f95-4fc9-823d-310eba64be53" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "136" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"status\": \"running\",\r\n \"createdDateTime\": \"2019-01-07T10:24:32.7273583Z\",\r\n \"lastActionDateTime\": \"2019-01-07T10:24:32.7273583Z\",\r\n \"message\": null\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largefacelists/source-large-face-list-id/training", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy9zb3VyY2UtbGFyZ2UtZmFjZS1saXN0LWlkL3RyYWluaW5n", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:34 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "f3ba69b9-82f0-409c-a423-f209bcb98171" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "202" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"status\": \"succeeded\",\r\n \"createdDateTime\": \"2019-01-07T10:24:32.7273583Z\",\r\n \"lastActionDateTime\": \"2019-01-07T10:24:33.1344296Z\",\r\n \"message\": null,\r\n \"lastSuccessfulTrainingDateTime\": \"2019-01-07T10:24:33.1344296Z\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHM=", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"type\": \"LargeFaceList\",\r\n \"objectId\": \"source-large-face-list-id\",\r\n \"applyScope\": [\r\n \"\"\r\n ],\r\n \"userData\": \"User provided data for the snapshot.\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "188" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:34 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "/operations/4681f303-19c7-468d-bc32-42cb3753376d" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "79c2124c-b658-463d-b999-453498735d9a" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/operations/4681f303-19c7-468d-bc32-42cb3753376d", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzQ2ODFmMzAzLTE5YzctNDY4ZC1iYzMyLTQyY2IzNzUzMzc2ZA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:34 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "ec79f25d-a234-49bf-8238-5a28365806b3" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "146" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:34.5907115Z\",\r\n \"LastActionTime\": \"0001-01-01T00:00:00\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"notStarted\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/4681f303-19c7-468d-bc32-42cb3753376d", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzQ2ODFmMzAzLTE5YzctNDY4ZC1iYzMyLTQyY2IzNzUzMzc2ZA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:36 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "bcbfc515-459c-46f5-9354-d270041abe1d" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:34.5907115Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:35.0600991Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/4681f303-19c7-468d-bc32-42cb3753376d", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzQ2ODFmMzAzLTE5YzctNDY4ZC1iYzMyLTQyY2IzNzUzMzc2ZA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:37 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "0d379256-0b0e-4bee-afd2-d04797511aed" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "199" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:34.5907115Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:37.0323683Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": \"/snapshots/6e7d2559-1b8a-49e0-b6cf-9fe2278d04b2\",\r\n \"Status\": \"succeeded\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots/6e7d2559-1b8a-49e0-b6cf-9fe2278d04b2/apply", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHMvNmU3ZDI1NTktMWI4YS00OWUwLWI2Y2YtOWZlMjI3OGQwNGIyL2FwcGx5", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"objectId\": \"target-large-face-list-id\",\r\n \"mode\": \"CreateNew\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "71" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:37 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "/operations/423ee8dd-ecb9-4c89-afc4-3450d3960fea" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "91f8cd18-0369-46b1-b014-9331635222e4" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/operations/423ee8dd-ecb9-4c89-afc4-3450d3960fea", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzQyM2VlOGRkLWVjYjktNGM4OS1hZmM0LTM0NTBkMzk2MGZlYQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:37 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "dfaf48c3-5a7c-4974-b4b0-5cbbfc3f1780" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:37.7163805Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:37.8448285Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/423ee8dd-ecb9-4c89-afc4-3450d3960fea", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzQyM2VlOGRkLWVjYjktNGM4OS1hZmM0LTM0NTBkMzk2MGZlYQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:39 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "8d217fc6-ccd1-411f-8a90-9f003d0a7592" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "192" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:37.7163805Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:38.3761463Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": \"/largefacelist/target-large-face-list-id\",\r\n \"Status\": \"succeeded\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largefacelists/target-large-face-list-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy90YXJnZXQtbGFyZ2UtZmFjZS1saXN0LWlk", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:39 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "87a89017-6a1e-4e19-b413-b746290ff939" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "133" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"largeFaceListId\": \"target-large-face-list-id\",\r\n \"name\": \"namesource-large-face-list-id\",\r\n \"userData\": \"userdatasource-large-face-list-id\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largefacelists/target-large-face-list-id/persistedfaces", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy90YXJnZXQtbGFyZ2UtZmFjZS1saXN0LWlkL3BlcnNpc3RlZGZhY2Vz", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:39 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "9c29aa69-49bb-4660-b5dc-a1bfc7214220" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "76" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "[\r\n {\r\n \"persistedFaceId\": \"3e1e0d9b-f5af-4adf-8b26-cf1c6d2a4ec7\",\r\n \"userData\": null\r\n }\r\n]", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largefacelists/source-large-face-list-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy9zb3VyY2UtbGFyZ2UtZmFjZS1saXN0LWlk", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:40 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "d01548ac-b3d5-4268-82d2-6b91f17f4cb4" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largefacelists/target-large-face-list-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZWZhY2VsaXN0cy90YXJnZXQtbGFyZ2UtZmFjZS1saXN0LWlk", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:40 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "f1ec7d8b-2161-4ea6-b064-15422507ed3e" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots/6e7d2559-1b8a-49e0-b6cf-9fe2278d04b2", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHMvNmU3ZDI1NTktMWI4YS00OWUwLWI2Y2YtOWZlMjI3OGQwNGIy", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:40 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "fa444c50-0188-42a8-9522-ba7b44d0aefe" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - } - ], - "Names": {}, - "Variables": {} -} \ No newline at end of file diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestLargePersonGroup.json b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestLargePersonGroup.json deleted file mode 100644 index e123964ddab3..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestLargePersonGroup.json +++ /dev/null @@ -1,1053 +0,0 @@ -{ - "Entries": [ - { - "RequestUri": "/face/v1.0/largepersongroups/source-large-person-group-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy9zb3VyY2UtbGFyZ2UtcGVyc29uLWdyb3VwLWlk", - "RequestMethod": "PUT", - "RequestBody": "{\r\n \"name\": \"namesource-large-person-group-id\",\r\n \"userData\": \"userdatasource-large-person-group-id\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "105" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:48 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "f470bd86-e1b4-4780-a5eb-c12c6515b2fd" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/source-large-person-group-id/persons", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy9zb3VyY2UtbGFyZ2UtcGVyc29uLWdyb3VwLWlkL3BlcnNvbnM=", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"name\": \"personNamesource-large-person-group-id\",\r\n \"userData\": \"personUserdatasource-large-person-group-id\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "117" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:49 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "e276dd4f-8320-43e8-a04a-fba096b69ef3" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "51" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"personId\": \"bec25e2c-81a2-4762-b5ef-046dee97a280\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/source-large-person-group-id/persons/bec25e2c-81a2-4762-b5ef-046dee97a280/persistedfaces", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy9zb3VyY2UtbGFyZ2UtcGVyc29uLWdyb3VwLWlkL3BlcnNvbnMvYmVjMjVlMmMtODFhMi00NzYyLWI1ZWYtMDQ2ZGVlOTdhMjgwL3BlcnNpc3RlZGZhY2Vz", - "RequestMethod": "POST", - "RequestBody": "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", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/octet-stream" - ], - "Content-Length": [ - "9344" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:49 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "d0b3165d-b70a-49ae-89b1-e5b849e42a3b" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "58" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"persistedFaceId\": \"b82527fa-df32-4fb0-bc3e-a424a710de1a\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/source-large-person-group-id/train", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy9zb3VyY2UtbGFyZ2UtcGVyc29uLWdyb3VwLWlkL3RyYWlu", - "RequestMethod": "POST", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:49 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "http://westus.ppe.facev1.api.cognitive.trafficmanager.net:8080/largepersongroups/source-large-person-group-id/training" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "9545ff95-8cce-40f5-a150-c2079d2f6814" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Access-Control-Expose-Headers": [ - "Operation-Location" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/source-large-person-group-id/training", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy9zb3VyY2UtbGFyZ2UtcGVyc29uLWdyb3VwLWlkL3RyYWluaW5n", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:49 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "e1f63943-149a-4da9-b9d7-c11a0fdffde1" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "136" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"status\": \"running\",\r\n \"createdDateTime\": \"2019-01-07T10:24:50.5516433Z\",\r\n \"lastActionDateTime\": \"2019-01-07T10:24:50.5516433Z\",\r\n \"message\": null\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/source-large-person-group-id/training", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy9zb3VyY2UtbGFyZ2UtcGVyc29uLWdyb3VwLWlkL3RyYWluaW5n", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:52 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "390f8084-adeb-4597-893e-6c9554b0e889" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "202" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"status\": \"succeeded\",\r\n \"createdDateTime\": \"2019-01-07T10:24:50.5516433Z\",\r\n \"lastActionDateTime\": \"2019-01-07T10:24:50.7828356Z\",\r\n \"message\": null,\r\n \"lastSuccessfulTrainingDateTime\": \"2019-01-07T10:24:50.7828356Z\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHM=", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"type\": \"LargePersonGroup\",\r\n \"objectId\": \"source-large-person-group-id\",\r\n \"applyScope\": [\r\n \"\"\r\n ],\r\n \"userData\": \"User provided data for the snapshot.\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "194" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:52 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "/operations/2fc128e3-97e0-401d-bb4a-b72beea46134" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "04f90809-49c0-4122-8411-da2115d0817d" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/operations/2fc128e3-97e0-401d-bb4a-b72beea46134", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzJmYzEyOGUzLTk3ZTAtNDAxZC1iYjRhLWI3MmJlZWE0NjEzNA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:52 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "bb86fac2-63f0-46ae-82a9-b63e7bac61ec" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:52.2704995Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:52.4027112Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/2fc128e3-97e0-401d-bb4a-b72beea46134", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzJmYzEyOGUzLTk3ZTAtNDAxZC1iYjRhLWI3MmJlZWE0NjEzNA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:53 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "95e46071-b2f5-4768-aa81-64f486e64690" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:52.2704995Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:53.7309473Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/2fc128e3-97e0-401d-bb4a-b72beea46134", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzJmYzEyOGUzLTk3ZTAtNDAxZC1iYjRhLWI3MmJlZWE0NjEzNA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:55 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "83b665b2-9b2e-4c7b-8b23-9f4c234d10e4" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "199" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:52.2704995Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:54.2466111Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": \"/snapshots/fdadf3ec-9f41-4388-9658-d8747ac4acde\",\r\n \"Status\": \"succeeded\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots/fdadf3ec-9f41-4388-9658-d8747ac4acde/apply", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHMvZmRhZGYzZWMtOWY0MS00Mzg4LTk2NTgtZDg3NDdhYzRhY2RlL2FwcGx5", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"objectId\": \"17d6fbc7-0b99-4de5-af40-3c48672b6273\",\r\n \"mode\": \"CreateNew\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "82" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:55 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "/operations/094f7267-bc81-4cf7-8c33-deb834279430" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "0b69120b-aba7-414a-9ff0-8e59588fd355" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/operations/094f7267-bc81-4cf7-8c33-deb834279430", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzA5NGY3MjY3LWJjODEtNGNmNy04YzMzLWRlYjgzNDI3OTQzMA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:55 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "ab9948b3-531a-48ac-b14a-ed36cec2ec64" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:55.2344637Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:55.3717802Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/094f7267-bc81-4cf7-8c33-deb834279430", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzA5NGY3MjY3LWJjODEtNGNmNy04YzMzLWRlYjgzNDI3OTQzMA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:56 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "987de4ca-81d2-4b3f-a566-158631056c12" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "206" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:24:55.2344637Z\",\r\n \"LastActionTime\": \"2019-01-07T10:24:55.7780114Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": \"/largepersongroup/17d6fbc7-0b99-4de5-af40-3c48672b6273\",\r\n \"Status\": \"succeeded\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/17d6fbc7-0b99-4de5-af40-3c48672b6273", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy8xN2Q2ZmJjNy0wYjk5LTRkZTUtYWY0MC0zYzQ4NjcyYjYyNzM=", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:56 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "44dbb5a6-0837-4497-8168-06ea58d8df96" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "153" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"largePersonGroupId\": \"17d6fbc7-0b99-4de5-af40-3c48672b6273\",\r\n \"name\": \"namesource-large-person-group-id\",\r\n \"userData\": \"userdatasource-large-person-group-id\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/17d6fbc7-0b99-4de5-af40-3c48672b6273/persons/bec25e2c-81a2-4762-b5ef-046dee97a280", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy8xN2Q2ZmJjNy0wYjk5LTRkZTUtYWY0MC0zYzQ4NjcyYjYyNzMvcGVyc29ucy9iZWMyNWUyYy04MWEyLTQ3NjItYjVlZi0wNDZkZWU5N2EyODA=", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:56 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "40e83e9d-a874-4d6d-9f46-b9619c6bb1df" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "215" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"personId\": \"bec25e2c-81a2-4762-b5ef-046dee97a280\",\r\n \"persistedFaceIds\": [\r\n \"b82527fa-df32-4fb0-bc3e-a424a710de1a\"\r\n ],\r\n \"name\": \"personNamesource-large-person-group-id\",\r\n \"userData\": \"personUserdatasource-large-person-group-id\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/17d6fbc7-0b99-4de5-af40-3c48672b6273/persons/bec25e2c-81a2-4762-b5ef-046dee97a280/persistedfaces/b82527fa-df32-4fb0-bc3e-a424a710de1a", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy8xN2Q2ZmJjNy0wYjk5LTRkZTUtYWY0MC0zYzQ4NjcyYjYyNzMvcGVyc29ucy9iZWMyNWUyYy04MWEyLTQ3NjItYjVlZi0wNDZkZWU5N2EyODAvcGVyc2lzdGVkZmFjZXMvYjgyNTI3ZmEtZGYzMi00ZmIwLWJjM2UtYTQyNGE3MTBkZTFh", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:57 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "7db44d40-6fff-4143-ac1f-5deec3aebe6d" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "74" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"persistedFaceId\": \"b82527fa-df32-4fb0-bc3e-a424a710de1a\",\r\n \"userData\": null\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/source-large-person-group-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy9zb3VyY2UtbGFyZ2UtcGVyc29uLWdyb3VwLWlk", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:57 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "a3ffbc37-8588-43af-97ef-22e3473514b5" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/largepersongroups/17d6fbc7-0b99-4de5-af40-3c48672b6273", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9sYXJnZXBlcnNvbmdyb3Vwcy8xN2Q2ZmJjNy0wYjk5LTRkZTUtYWY0MC0zYzQ4NjcyYjYyNzM=", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:57 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "27c5f020-7b14-423d-a038-237563fc2e68" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots/fdadf3ec-9f41-4388-9658-d8747ac4acde", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHMvZmRhZGYzZWMtOWY0MS00Mzg4LTk2NTgtZDg3NDdhYzRhY2Rl", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:58 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "2c320730-52ef-4f17-b426-abfc35e32296" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - } - ], - "Names": {}, - "Variables": {} -} \ No newline at end of file diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestPersonGroup.json b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestPersonGroup.json deleted file mode 100644 index da1c910e4d79..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SessionRecords/FaceSDK.Tests.SnapshotTests/FaceSnapshotTestPersonGroup.json +++ /dev/null @@ -1,999 +0,0 @@ -{ - "Entries": [ - { - "RequestUri": "/face/v1.0/persongroups/source-person-group-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvc291cmNlLXBlcnNvbi1ncm91cC1pZA==", - "RequestMethod": "PUT", - "RequestBody": "{\r\n \"name\": \"namesource-person-group-id\",\r\n \"userData\": \"userdatasource-person-group-id\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "93" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:58 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "38a3fbfe-a8e7-4e2a-8ca3-a254f0b5c3ff" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/persongroups/source-person-group-id/persons", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvc291cmNlLXBlcnNvbi1ncm91cC1pZC9wZXJzb25z", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"name\": \"personNamesource-person-group-id\",\r\n \"userData\": \"personUserdatasource-person-group-id\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "105" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:59 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "bb9f8191-da27-439c-8614-f4942a453101" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "51" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"personId\": \"728cfa60-6458-43d4-bcce-75e15b267c3d\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/persongroups/source-person-group-id/persons/728cfa60-6458-43d4-bcce-75e15b267c3d/persistedfaces", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvc291cmNlLXBlcnNvbi1ncm91cC1pZC9wZXJzb25zLzcyOGNmYTYwLTY0NTgtNDNkNC1iY2NlLTc1ZTE1YjI2N2MzZC9wZXJzaXN0ZWRmYWNlcw==", - "RequestMethod": "POST", - "RequestBody": "/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAoHBwkHBgoJCAkLCwoMDxkQDw4ODx4WFxIZJCAmJSMgIyIoLTkwKCo2KyIjMkQyNjs9QEBAJjBGS0U+Sjk/QD3/2wBDAQsLCw8NDx0QEB09KSMpPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT3/wAARCADXASwDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDzYDNLinKKUivoEjlbG0tLRimIBThTacKYhwpaQUtUhMUU4U0U4VZI4ClFApRTAeKUUgpRTEPAqREdvuqx+gzWpovh6bVSZj8lsDjeR976V2dlpFtp8YFvEqk9WPJNebi80pYZ8q1Z20MFOqrvRHBrpV6y7hbSY+lMltJoWIeNxg45FejuBsIwOaqywRuDlFP1FefDPpN+9HQ6ZZWkvdlqef8AQ47inA10t3pFvIxO0Ix/iQYA/CsS6spLRyZMlD0bsa9nDY6liNIvU86thqlJ3ktCAU6minV2nOJuo3UUUxCUvWlNOj5NAhYoi2aWWNkxkVc3LGo6Gqs0u89KlNtiIxxSgbjikFOSQI4OOlUMGhZOTTCasTXCumBVVhmkr9QCim0ZqhgaYRinZpPvUhjQ2KkBpnlGkwaBGDyavQaZPNHvUEDt71sp4WHy4k79a6W20yONACAcCvIniEvhO5U31POJYHhcq4IxTc4rp/EWnrFHuBG/1rlz1Nb0588bmclZ2FooorQkeozUhXFRA4pxOcVaExwpwpopwqiRxpRTaegzTGSIjP8AdXNaei6S+o6pHbsCE+9IfRRUNntjznFdh4PjBW5uMDDEIp+nJ/nXJjq7o0ZSW5rhoe0qqPQ6GKBIo1jjQJGowFXoBTpIOPvUGbHQUzJevi3rqz6RKxC8ZHTmq0p21bZCaqzAL1NTY0uVJDuYCqNzEJImWUbkPB9verj8ZqsCXbbnANdmHm4yTRx14qSszl5Y2gmaNzll4oFaet2oSWOUbsOoGT6jr+mKzQtfbUZ+0gpHzk48smhtFLRWxmJSjilxS4oFYcGLd+lIadDDvfGcVJNBsxzRdJhYhppp+KQimMZRS0UAN25oMRx3p27BFXGmXyiMDkVLuh3M7GKAcGlL8nikzTsFiUyDHSo80wmlosFjsPmVlDgAGnG4AldQRxXJ3HideNiMfc1WXxEVJK55614CoSZ6POi74pklKpk4U965knNaGo6qLxAMVm5rtpR5Y2MJ6u46lpopwrUkKcKbThWiJY4U8UwVIo5qhCqNxqwuFFIAFFN+9QLcf5hY4r0Lwsqx+HoMDlmZiffJ/wAK8/hj3uF9a6TSvEkenW6aUsE11feZ+6ijGMhueSeBXmZtByw+nc7MBOMaup20PKFmwq+pNJ5sIOFkUn0rzbxBq+p3U7RP5rbAC0duDhM9Mnv+VV9LttYk1G1iinlt/PO0O4DYOM9K+aVD3btnr+21tY9C1DWrezXBDO56Ki5JNc7N40jabyzZuDjqMH/9RqjqXhmaLVxbXd5c3MskW6OZuAT/ABKAOhHFVl8JwRzL+5nLqMcdM+pqowprcUpVH8Jp2/ii1vb+Gz8maOeVtoDLgZ+takiFT0IxWNpvh2OC8czZGxFx32tz68jjFbccABZFL492zXRS9je1mYz9ra90Z+rPHPpCvGwYxyjOPQisTbnvz710VsVSeW2jwrjLEYyfwFZF8jjy3kAMjg5YDGcHGcV7eXY1Sl7Cx5+KwzUfaXKVLinYpucV7R5wvSjrR1o6VQEiS+XTnuPMxxUApy0WEPxTTRuppNMYGmE06kpAMzmnZPrSgU1loGRnrQTSsKY1AxKWm06gDDooorzzcKWkpRQAop4ptGapAx1KKaKcKtCY8VMlRrT84pkD80q0zNOWqAngfy3Delamk20F7q63K5F3AoaMAf6zHVfyzWNmrFndNZ3kNwjYMbBvr61jiaTq05QXYujLkqKR24Sxliby7hIzIxMnd2PuOo7VJplpB/bdusUbqsCmR3fhmPQHB6DrjPXPTirkt0JIWk3sBjI2nGRism1sbi8s7t7W6a1luDw4GcAE4z+tfErRtM+j6Gtrtmt6ADM0cqNvikU4ZW9RWWl3cRu8d/NM+3ALRFVX8SADWNc6Vq0cirqOoq8IJ+dH2H8s5q/ZT21tGyLNHIWHKlwxP1qnHTRiUu6NctEkSrGiqg6d8/X1pscgLfjWXGdxYxMfKAzsBzsPfFWrcnzAK0orlkRUd0DQQm9DNkNET8w9znFYGp3JnvmII2oNnHt1/XNdBqN2thHKzrh3ZljYdd2B+WM1ygxzX0GVYRxnKtL5Hl42spRUEGaUg00Hmr9pGjRktg17r0PNZTIxSA5qS4wrkDpUGcVS1FuOpKKWmAtNJopDQMXNFJRmgYnWhjmnCozSAeeRURFOB601jSAbiinYo2e9BRgUUUV55uLRRRTJHClpBS1SBgtSrTV5NW0tMoGzVpEtkQpaDxxSZpiAGng0xVyasLaSEZxxTFsNFS28fnOBnFQ/dOKlgm8pwcVQjudN/faVFGx+4uwn3H/1sVDf/wBoxW32TSUDSlecuF4HXk1iabrZs5xuXMLfeHf612Fm63UXnRENuHDA9q+QzHCyw9Zyt7rPcwdZVaai90ckvhbURGJL7ULW3kbDHIDkfjTm0HT/ACQlxdPeOT8z7iM+n0ron0uOWUvcNz7k1HJp8EX3WA+tcntWzq5SnZQR2w2QrsXGMdcCrVs3zl3OEXk+/tVaeeOBSkbDA6tVXzzJtwcRrzj1PrWlP3Xzsylr7qLmuwS3tjC8aqWR2d8sBjOMVzjRvGxWRSrehrRknlkuGhjiefzkMaxIMlj24+uK0fEOjHSdE0ppWzPuZJMHIBPzBc+3Ir6DLsa5NUmtO55mKoJXkc3jmpFdkGFbFNApDzXunnitk8mmVIKaRTQmIKdQBS4piENNqQimkUDG0lKaSkMcvOaWNQc02kBNIBZABUbUrg0hFIY3NLmjFLikMwKKcKDXDY1EooooAUc1IBTFFOOapAx69avQSb1I9KpAU+Oby+2atEvUdcJsPXrUIp00vmtnFKgpgPC8g1fF2qJgjtVBjSZq7E2uOLZYmnoajUZ9akXjOaYEo6Vv+E0u7i+mhhkZI44XlfuOBx+pFc7GSTivR/AsCafoc1yyBpL7K5PZBkY/E5/SuLMJRjQkpa3N8On7RWMi9uNRkQs5VdpwSDWI19IxO6R3bv2Fdpq+lPYNG5YSQyjhsYyf8a5hbGRrh0ijLtnpivko+7o0e09dUyou+RQZHJPZfStrS9FudUZdi+XCertwD9PWtfSPDUGFkuSs8o52J90fX1rrI4/JHbdjjA4Faxg5ash1FHRFPTdItNJj2W8Y8wj55WOWY/XsPYVg/EF0bwzKvRklR0P+0DXSyzlQTjJry7x/rhvb37DCf3VufnI7v6fhXVB8rUYnPUejbKSzpKi7SNxGSKQGsGO4eJwynkVct9XVtq3Cgf7Sjj8q+ioY2DXLNnmTpNao1ENPIzUEcyScxsGHtUwfPGK9BNNXRg9NBKdTKXNVYLDs4ozmmZzRzQMDSUmDS0gHEjFNxSMKZmk0NItQQCbPOMUXVusIG3vVeOdo/unFEs7StljmpCzuR4oxSZozSKMKiiiuE1HBcsAO9bll4Wnu4w6sVz7Vi25xPGT/AHhXqujXkAgUHbnArCtNwWhcIJ7nI/8ACF3B/wCWh/KpIfBkyZ3Pn8K9GjZGLLhdygEgdqhmuoYvvbR9a544mT1TNpUUtGeY6xoj2MYYHNYY4Nd34tvYZLNkUjcemK4pIJSmfLbH0ruoTcleRzzSTsiMCpM4FJt2kg5z7im8k4AroRDHZzUkabpFX1NCW8rcpGzfhU9tE4u4ldSuWHUU20KzOx0vwxby2gaRAxIzzWLrukLZyKsQwDWzceI5YQ1np5VRGAJZiMnPoP6moE0SfULF7wTo8hJ+QsSzfjXjTxzpO9zsVBTWiMGCzC8sePWur0nV/s3h2aJBvlgYCNR33nj9c1zxXZlScEdRXReBNCl1C4OoGWPyFlw0P8R25wfpz+lcNatOrrN3NacVDY6fxcgi0NGjzuE6bsnIXgipY7BLSLZGECkenJ+vrW/dWcN5ZyQ3CBo2XBBrNICgLuyFGOOOlc0oa3NoSurGBcRvYZlicnB6qPu1o2epC+j2v8sidc9/enykyMTCMH3FY8mn6jbXS3NvGjspztBwCO4NOMhyQ/xXrY0TSpJlIMzfLCp7t6/Qda8ddmlYsxYsx3EnuT1roPF+sya3qm5VMdvF8iITn6n8T+lYsY2+9bQVlc55u7sMEeEJ9BT1iXaAwzQ3THrUuzIFaXJsRiNkIMTMp7YNW4r2aJsXCFh/eXrRHDt705sHtmt6WJqUn7rJlTUlqi5HKk6ho2yP1H1p2DnA61meWVZXjIVx3FbegyW97qCQ3LiOTOFz0Y+n19q9nD5hGorT0ZyToNPQt6fokt+NxBVf51vQeE4QPmGfxrora1W1hGQBxUFxq8EBwzIPqaylialR+4bRpRitTHl8KW+35VwfrXO32k/ZbgJuyCa7ePWYJFbaymuT8Q3qveIYmH4Vth51XK0iKijy3iZd3bLCgIqieKtzyy3IUBSfpSDTbphnyTiuxtLcwimynR0qWaCSL/WIy/hURpXuVYV+cUzNSrG8n3VJ+lSjTbo/8sWqW0NJnNU2nGm964ih6DJHauu8NWNwinUZpH+zxcRITxJJ/gKxdC0z+077ZJJ5VvGN0sg5wPp6125js/swjsmcW8KFVUknLHvn8a8zMcSoR9nHd/gjuwdFylzy2NfRIylrJNI5eWU5Yn9K47xjdzR3MUcTuCSfumu6sgEsVA6Ba4rVLcXviOFGGQnNVhoqFkuhFaTk9epLoHh57hVmvXaRuoDHpXULo9uE27U6elT20Hk2wCj+Gqlv9qN6ck+XnircnJ6iSSOa8TeHkijaeEbWAzxVTw54aN2BPPnB5CntXc6pAJYQhxzTtPhW2t+AOnpWirS5eUl0lzXI4dFt4kACoOPSsfX7CGC3MyoCYxuG1e9Qa94pbT7jyol3MDyKZpfjLcJN8J+fjpmsarqU6bqJFwUJS5TnrIMLfcw+aQl/z/8ArVr6XevC3kgna5GPY1oyWtlrG6a32Qv7f1FYl3Z3FgxEyFQfusOQa8fnjVTT3OvklTd0W/EenvHG11EM5Hz4/nXaeA/D0Ol6StwwYz3HzsSeR6YrlvtNxd6dAQwwV2tkdwcGvRtDuEudKt5EAX5ApUdiODSpNv3X0CskveXUmmudsbRj8WNUHhMpyi8evrWv5Qejy0HQYrRxvuYqdtipBAIo8AKPXiub8e6yNG0YQxuVubvKqBwQn8R/p+NdTeSRw20rTMUjCEs46qMcn618/wCt6iJo5Q093LcBtsRlO7Kj1PbtTiugN9SFJ0uWZGADr2zUcjxQkeY4XPbv+VZ9nG7y7snrWzDEobeVXd645rW1jO9yrsll+7GUT1bqfwqzEuwc81MCvQUZ9qLjsRsdqk0kdJcHCGlHC/hTAexBx2Hc1SuJ9kZfgnOFz/OmXd0Y12Kee5rPLNNKN2SFrSK6kSfQ9A8PeMrmSxez1BvMaNMxSH73HYnvU8drd3+ZcE7j3rirGYJqNv6BgD754/rXsWkxxCBcBeleph63JTbtqYyjzM5BtGvgWMSlQeuKoyWNybpYpMsxNenNCmw8CsN7VW1NTgcGumni3K+hLpJEekaAkUQLYLEck1ri0iXjC1LKRBCCPSuUuNcnXUdi8oGwR61zrnrNu5b5YKxt6hpMNxCQUB47VwdzpTR6i1soJyeK9Kt38yDJ7iseSzV9U8ziqo1XG6Y5xTsR6RoMVvEMgZI5zWyLSEDBC0twwggyOwri7rxROtw4jUlQetSuao7jdonANQiGlPUVYCgL1FbpGFzTtr2JNAe0jwk80pMrdyv8Irr9GMC6OEwdwO47ugPpXm6SMsgx0zgj1HeuhbzLCDNxM8kLEGBVJx07+vUV4OYUHGXNfc9PC1bx5ex3tpqMH2V0kcJt4BHNUBLpL3Q+ygvds3MpbkfhXPWEBvIi7uRHnhex+tXo47Owu2uDBIHbADAkqp9MDtXJGs0/fk9Ox0SpXXurc7PzBHGo46VRuNUit+mBWUZdTvySuy3hA4aU4z9F6/nWhFoccaEzSiViMliMfkK3p1KtefuuyRnKMKUdVdleTW4bieOJWyx7YrZAzZDHcVxGuPFpt9BJGB98AgHtXY6Zepc26jI+7616co2SZxJ3djzbxHbz/wBrM3lsQx7V0+laPpVzoMCxKIr0L+8fdzu9xXSXNjbhHmmMYRQWZ26KPWuCe4AuXmtnIV3LJjjjtWGOm50lBOxdFKEm3qXbrTb7SnD4yv8AfjPGPf0qObWWvXW3mjGw9yetWYfEsqQMJkDNjGcVVaC11QkxOIZiMsv8Oa8fW/vrU746r3XoX9Jsf9GuVEm/5y0Snrggf4V0XhPU2srw2FxxHOfkJ/hf/wCvXIW0txp8gWcHI/iFaG8TneG+bHJFRzOM+YqUFKHKeqlttRA5zWToOsDU7YxTN/pUIAf/AGh2atZiFUkkD611811dHBbldmch8QtU+x6GIFfEly2GA67Ryf1xXkxQSlgwBB9RW/4y1ltX1mV43zbx/u4voO/481hJVJCbuC2oTmPC46U2e4EMYLH5j0UdzUktwkETO5wo6mqEamSVpn4J4Vf7oq0hXLFsHVCZDlmbJ9varCnANRxcVJcOIoyeOlAFO4mCkZPei6nEFt8xwxHT0FZ6zh5nnYZWM8DsT2FN8me+cu/A960SIbIC7TuduTVpEFtHljy1WIYo4Aw4ZhVKWUzSn0B6VaJZJbqzzoFJySMfnXqNlJeRTpFhgpOCCtcBoNqLrWrKInAadMn2zXt/2GMSlvlzXXh6qhF3W5Lg2JDkQfN1xWVAQ2oNzyDWxM6RxHkcCuSh1FF151LAA4Ga1oRclIcnax0moA/Zzj+7XBwxy3WoBfLYENzXoSOlzEORjFQLp8SPuG3P0p0qvs04sUo8zFtk8q3Gf7tZ8Lh78jPQ1b1G+jtbckkDArlNH1XfqsjO33zwDVU4OScht9DqtUUm0YDuteayRskrhlbO49q9TUpcRjkYxVY6RbsSSi8+1KlVUNGKUXI8SoLH1paZmujZGIK2Dj1rrjp93rWjad9mQP5UO3BOORwf5VyPGcnoK7m1SWLwxZ8Mh8klQfUkkHH0IrzMz/hpre52YP43cz0TUdK+WcpFG3owOalg1Sby2O3lRyzmqtm811df6coBQYAPT60kumXL2upLATm2VXYD+JCT/QZryqdNTkoye53TqcsbohTxPMs4do96g8AtV+TxzcOm0QkcY61ymc0Cvo6eFpQVoo8qdac9Wy5f6lNfy75GPB4FXdK8Q3Om4CtuT0JrHApwPIHrXTyRtaxnfqdbN4lOt2z2kwaOB9vmEHnbnmtMWeiXwRbK7kjbHAY5/SuVWMQWC7eGYZJ70+2jU26FlzxmvncZ79R8jskd1GXKveVzop/DkwkCxXduynoSxBNVrrQLu2USoVMgPWNu1ZwnuIyCk7BV6Bjup9r4rnW52MA4HXCk1wyjVa7nVCVNPTQ0rXUSUWK8jYsOAWWrqFUGVA2HrjpVW31yPUXYIFX32lT+dWonRW2AbR3I6GueSfY6Lli0vJ7G5juoD+8jzkY4YHqDW34k8UQHwoZrVsT3RMQT+JD/ABfp/OsByqj5RTbfT47+8t4XTesj4Kn07/pmtKU7aGVSnfU4luTk0pkRVLFgFHUntWt4v0VfDWoRxGcPBcIXjYj5hg8g1x89y17IFXKxA9D3+tdyRwPQs+Yb+53f8sUOUB6n3q4FJPXioYIgi8VZXHrTbEiZUAHWsvV7nbFgfSrlzLsAwaw76QtInfBzVRQpMsRyRWtpHvG9hzj1NHmXF6SFHlpTbWyMpM0zcdhRdXG7McfAHXHerWpLC4uEhiMEB4/jbrmo7ePJBPeo44t+MDn+dX44iinI+ZugqvJC82auhHyb1J16IwVa7k+McrxG2feuAtHWGSPJ6MOK1GGGOPWvYwdGMlaRhKTT0Ni98TXNyhWMFAayFkfzfM3HdnOajNSRR72AzXoKEYrQhtvc27PxPNboFkUsBVz/AIS7cMBDn3rmZ4vLxzUYGKydGDd7FKT2NTU9Rkvdu5+PQGqCEq4ZTgioQxp27FPlSVg1N608SzW6BZFLAVeHjFcfcNcuDuFM2GsXSi+habOeamqMnFOcGgfLg+9TuQbeleGH1ODcSVBroPFFy+nxxwJHhiMD0244xWr4MmiewRV2kqMGrniv7LL5No/lm4kjaRI2GdyrjOPQ8jpXj42LqJN9DtoPk+Z5pp/mtcqkYZ5GPCjqa9E060+x2DBiDLJ80hx7dPwrB0eKw02SR1Mpmk43PyFX0GOcVf1rW49K0ee4J/eFSsQP8TnpXmyWptfQ4PToLW+12bTzN5QMrrA2eDycDNXtY8PNpS7ixP1rjWZt5P8AEeSa69fEf9qeGY7W6cG8hO3cesidj9e34V7WGrvSLZxSitTJzzirFrbmedAThc8n2qKCISSgZ4PX6U77dLbOTFayFeQMkAV1YrEeyjaO7JhDmd2Xr5/mZRwo6D2q3CdlrEP9kVzlxd315vZfKQL1VWFdCoIgjB6hRXhS8zqTGXMvlxMfan+CrQ3XiSE/3Mvz61nanNtjVPWui+HEJOriT+HkA/T/APXUy0iC1kdjrfgx5g13oxQyY3PbHgN/uHsfY8fSuS/tj7M7215FJFMh2ssibSPqK9gthtT8Kzdf0rTdWt9mo2olYDhxw6fRutYyhFrU3jUadjgbaaK4GUnXA9DXSeG7FfOkvSWIUFELHPP8R/KuPk8Orb63LbwTyLbrjMjYyM8492rtotQttP04AYjggj/DArONNKVzSVS8bHnvxQ1AXnihIEOUtYQhP+0eT+hFcejLE4JUE9gTU2o3rahqNxdv96aRnP4mq26vQitEjgk7u5oxTrICMgEdRRn3rNJJBIOMVL57KqgnNJw7An3JLp8Y5rOYNJcIqDcxPAqe4Ysc+tNsRm+39lBNPZB1LzQskQj3dvmb+8arsmDjqTVsq8jE/dFCQJGdznJFCYNEaJ9njVn49vejzjkuT85/SopZmllyeg7Um01vCy1IeuhesVNxeRIOrMBiuubQb08iMgHmuZ8MxbvEenoeQ06Z/OvdvscXJCiuulinRXqT7NSZ5Pd6VPbJudDVeF/KbOM4r0HxLHHHp8pAXIFeeetepQqurC7MpRs7Cyz+aRxjFIelEMXmE806aHysc5zW10KxHijFGKUCobKSFXLEAda0o7GV0DeWearafEJLyJWGcmvQ4LBPJTgdPSuedXkK5bni8uFxTZHGBgUx+aaOCKdyDvPh9EwSRiTgnGKzviffz2Ximwmt32taQKwHqSTn8wK3vAQ3WQbGNxJrl/ic2/xbJGCDi2i/Pn/GvLxOrOiGkSEeIVKRubQxrINzL6/Q1g+INWbU7tAMiGEYVc/mf8+lVZbyU2iW5wVViQwH3c9QKpFjzmuJQjvbUpy6COaQP9fwpCc0g4qiUaVtfFY3j4DOu0NjJX1p6wKqKI2jkbuGUlvyz/KsrfzViKfkdNwPGRSk3Lca0L0c7KQkkW5SeDH0rovNGF9lrkzPI05dHKu2Onr3rXMxEfJyTWbVykypPMz3Ayc4Jr0rwFp7jTobmOXaSSenr/8AWxXljt8xb3r2T4bIzeGrdm/iyenTmoqrRF0nqd9GSIhnrj9aqXdxHBayTT4AjBZs9gOTU6s+373SuI+KWtNpfhRokb9/eyeUPUKOWP6frWaV3Yu9tTzzVPGF0NTlkC+cpclsn7uTnAqre+J7jULAwxsyo/DKf61zyAyQNlsENz75qw3EaqOgFbqCMXJjt2aQGogaQGtCSYUjNyKQNSNyRTQiWb5lFJaRyLOZEmRAOobqRSnhCPWmrIBkYpWuO5da7ZY9yoXOcfKKh+1TOmVtz75IqKNsZB70qnZ8y4B7jsfwpWHcljuYGyHUo47EYqYqApZefpVS4ZJATJnBI5HUe9EE8tkwDHzIm7+taQaT1JaZ0/gza/iK1Zl5QlsfhXtCti3/AAryPwRZltfhvIzuhaN+fQ8cV63J8luf92tprYUGcLr91Pe3jWcKn3NZjeHrxYy2AfYVu6egm8Q3OR0IFdgbVPLGQOld8sT7G0USo812ea2OhXhO4xhf96malpNzAoZ0G0d1r0mJYlYqNuai1KzSWBuB09KhY1uYOmeUKpzjFXrXSLu6XdGny+p4rR07RRPqsit/q426etd1bWEdvGOF6elbVsTyBGNzhrLQ7i2u4nkHAPJHau6t4yYE+lOMcchGNvFWY4wiAVw1a/PuXGNj57KVFyXGPWpDLx0q5oNot7q8UL/dOSa9GTSRzpXPRPBEBi0mLIwSM9Kr+NvD1trci5AiuuizAdvRvUV1Ol2a29qqKRgCodUgXcjEjivOupSsdNmonhWt+HtR8PzrFfwbUbPlyqco/wBD/k1lZr6MNnaavpjWl5DFNbv1R1yPr7GvP9e+ErANLok+R1FvM38m/wAawlGzDlPMCMUh4q9f6Ve6Xcm31C1lt5R/DIuMj19x7iqJFZvQBKWkNLUsCRW+YfWr4YlOprNQbnFaYHyfhQBXJ3ZHqa9+8ERCDQ4BxhUArw/R9NfUr1YE+8xr3Lw6kkGirGAf3RKn/a9DWFV3djWmtDanuFAxkc1438VNRGpeJo7GSdYYrO2yCQTl25PT1GBXo900rsCoIwa8S8ZytL4u1Is2SJtmfoAP6VNPVlVNEYzfu2+WQN7jNTLK2Pm5qADNTIK6DAczYwcDPrR1+6MADPLU/aDTHTZjB4znFAB5g7UebUTOT1OaEamIsGVn60KcU3IozVCHl/mJp4k3KDUKndmiJsOy+lIZLI210HXIxT7dzgxryM8A+lVpm2uh9DVzT4GkvII4xlmQgf5/GqjG7sDZ6J8No/3EpZAAz5wPTGK9HvG22p/3a5TwbpTWcAOMDoB7V1d+ha2IH92uiokpxiEdjlfDn73VLyT1eurv5DFbEjgha53w3atBPPuHVya2tbbbZsfRautaVVIUfhOa0TUJ7rVp/MclA3A9K625/wCPf/gNcX4SXzLmZv8AartL/wCW0P0oxCXtEkEXoZWiwDzJXwMlias65eGzs3kXqq0mhkNEx9SareKYHl09wgJ+lLR1bMS2Mbw7q9xd3UizOWGcj2ruE5QfSuG8J6fIszyupUHgZru0GEApYppS0Kiz5ykTa5HocVa0q++wX6Tbc4NFFeja6MHuei2/izbEv7punt/jVTWfFZNoxEZB96KK54wVzTmZD4b8XSuvlSxkleMite/8Wm3CnyifpRRVunHm2EpOxR1vUrHXNJMGo2plXGUPRkPse1eVajpiwGSSBz5QbHzdaKKKlCHs3KwKTuZxFIaKK8o0HwDMq1dZslRRRUDO0+G1kLm7u7g4ymIx+PJNesI32OzCDnjJoorkm/eZ0017pBcyNJEwiIRjwpx0NfPuvq3/AAkepCRtzC5kBY9zuNFFXR3ZNXZFBKnFFFdBgBOKjZ6KKEJkLGgUUUxkgJpQaKKoQsTYzTs4cGiihgxZhlK3vCcPm6pEx/hQfq3/ANaiiujDpe0RDeh7xpUai3XAA4q5MuUP0oorKfxmy2MuxUC5OB3pviE4sJD6KaKK2S/eoh/Czn/BcePM/wB411erf8ejf7tFFXXX75Cj8Ji+FroyQkY6Ma6aS2WZRuwRRRWOJ0noOOxHFapCflAH0FWcYoorneoz/9k=", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/octet-stream" - ], - "Content-Length": [ - "9344" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:59 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "0384a4f6-4347-4dde-bf4e-cf331d2c8144" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "58" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"persistedFaceId\": \"d1128c15-a246-44d1-b6eb-0e3b0fb69615\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/persongroups/source-person-group-id/train", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvc291cmNlLXBlcnNvbi1ncm91cC1pZC90cmFpbg==", - "RequestMethod": "POST", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:59 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "http://westus.ppe.facev1.api.cognitive.trafficmanager.net:8080/persongroups/source-person-group-id/training" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "b56c845f-9d81-4506-8931-3cf79f3dc515" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Access-Control-Expose-Headers": [ - "Operation-Location" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/persongroups/source-person-group-id/training", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvc291cmNlLXBlcnNvbi1ncm91cC1pZC90cmFpbmluZw==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:24:59 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "88daa4ea-467a-4eb5-8425-8a31babf04cf" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "138" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"status\": \"succeeded\",\r\n \"createdDateTime\": \"2019-01-07T10:25:00.6016979Z\",\r\n \"lastActionDateTime\": \"2019-01-07T10:25:00.8060351Z\",\r\n \"message\": null\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHM=", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"type\": \"PersonGroup\",\r\n \"objectId\": \"source-person-group-id\",\r\n \"applyScope\": [\r\n \"\"\r\n ],\r\n \"userData\": \"User provided data for the snapshot.\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "183" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:01 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "/operations/27ec6693-725d-4445-9cef-4ffbd862e106" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "4a0c2e5b-c433-4898-9de7-6afd6000af9e" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/operations/27ec6693-725d-4445-9cef-4ffbd862e106", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzI3ZWM2NjkzLTcyNWQtNDQ0NS05Y2VmLTRmZmJkODYyZTEwNg==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:01 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "2278e651-bd6b-4c77-afd9-8e79f4db3ac1" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:25:01.1173622Z\",\r\n \"LastActionTime\": \"2019-01-07T10:25:01.2279325Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/27ec6693-725d-4445-9cef-4ffbd862e106", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzI3ZWM2NjkzLTcyNWQtNDQ0NS05Y2VmLTRmZmJkODYyZTEwNg==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:02 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "116059e8-9cac-4112-81ff-230c111ea055" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "152" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:25:01.1173622Z\",\r\n \"LastActionTime\": \"2019-01-07T10:25:02.5405108Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/27ec6693-725d-4445-9cef-4ffbd862e106", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzI3ZWM2NjkzLTcyNWQtNDQ0NS05Y2VmLTRmZmJkODYyZTEwNg==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:03 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "4f85a718-3ae5-41f1-8926-e624fc0c8d4d" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "199" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:25:01.1173622Z\",\r\n \"LastActionTime\": \"2019-01-07T10:25:03.1186324Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": \"/snapshots/2fd742cb-0e02-4297-8238-a00f588fa213\",\r\n \"Status\": \"succeeded\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots/2fd742cb-0e02-4297-8238-a00f588fa213/apply", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHMvMmZkNzQyY2ItMGUwMi00Mjk3LTgyMzgtYTAwZjU4OGZhMjEzL2FwcGx5", - "RequestMethod": "POST", - "RequestBody": "{\r\n \"objectId\": \"target-person-group-id\",\r\n \"mode\": \"CreateNew\"\r\n}", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Content-Length": [ - "68" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:03 GMT" - ], - "Pragma": [ - "no-cache" - ], - "Operation-Location": [ - "/operations/3d81406a-d0d7-4694-a0bd-dfe7131d51f1" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "58ed55fb-b0ea-4a04-9c12-7d80d0644c0a" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 202 - }, - { - "RequestUri": "/face/v1.0/operations/3d81406a-d0d7-4694-a0bd-dfe7131d51f1", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzNkODE0MDZhLWQwZDctNDY5NC1hMGJkLWRmZTcxMzFkNTFmMQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:03 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "24a74b31-eb20-4dab-817f-bf8ead7fe374" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "151" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:25:04.1196403Z\",\r\n \"LastActionTime\": \"2019-01-07T10:25:04.368732Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": null,\r\n \"Status\": \"running\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/operations/3d81406a-d0d7-4694-a0bd-dfe7131d51f1", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9vcGVyYXRpb25zLzNkODE0MDZhLWQwZDctNDY5NC1hMGJkLWRmZTcxMzFkNTFmMQ==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:05 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "a78f6877-1062-41ef-affb-e85b07c380f3" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "187" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"CreatedTime\": \"2019-01-07T10:25:04.1196403Z\",\r\n \"LastActionTime\": \"2019-01-07T10:25:04.5093774Z\",\r\n \"Message\": null,\r\n \"ResourceLocation\": \"/persongroup/target-person-group-id\",\r\n \"Status\": \"succeeded\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/persongroups/target-person-group-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvdGFyZ2V0LXBlcnNvbi1ncm91cC1pZA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:05 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "3bf8a57b-fe32-4a9f-b163-d4b661100603" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "122" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"personGroupId\": \"target-person-group-id\",\r\n \"name\": \"namesource-person-group-id\",\r\n \"userData\": \"userdatasource-person-group-id\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/persongroups/target-person-group-id/persons/728cfa60-6458-43d4-bcce-75e15b267c3d", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvdGFyZ2V0LXBlcnNvbi1ncm91cC1pZC9wZXJzb25zLzcyOGNmYTYwLTY0NTgtNDNkNC1iY2NlLTc1ZTE1YjI2N2MzZA==", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:05 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "c7f2dd08-338a-4621-9abb-d157fc9e8036" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "203" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"personId\": \"728cfa60-6458-43d4-bcce-75e15b267c3d\",\r\n \"persistedFaceIds\": [\r\n \"d1128c15-a246-44d1-b6eb-0e3b0fb69615\"\r\n ],\r\n \"name\": \"personNamesource-person-group-id\",\r\n \"userData\": \"personUserdatasource-person-group-id\"\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/persongroups/target-person-group-id/persons/728cfa60-6458-43d4-bcce-75e15b267c3d/persistedfaces/d1128c15-a246-44d1-b6eb-0e3b0fb69615", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvdGFyZ2V0LXBlcnNvbi1ncm91cC1pZC9wZXJzb25zLzcyOGNmYTYwLTY0NTgtNDNkNC1iY2NlLTc1ZTE1YjI2N2MzZC9wZXJzaXN0ZWRmYWNlcy9kMTEyOGMxNS1hMjQ2LTQ0ZDEtYjZlYi0wZTNiMGZiNjk2MTU=", - "RequestMethod": "GET", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:05 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "90885339-2937-4779-9ea3-74f4ca7ccf03" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "74" - ], - "Content-Type": [ - "application/json; charset=utf-8" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "{\r\n \"persistedFaceId\": \"d1128c15-a246-44d1-b6eb-0e3b0fb69615\",\r\n \"userData\": null\r\n}", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/persongroups/source-person-group-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvc291cmNlLXBlcnNvbi1ncm91cC1pZA==", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:06 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "c761cb93-b2b7-4be0-9f6f-69ba6a95d6ad" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/persongroups/target-person-group-id", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9wZXJzb25ncm91cHMvdGFyZ2V0LXBlcnNvbi1ncm91cC1pZA==", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:06 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "b9d8a1c6-706c-45b7-b85f-d39cde89bf5f" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - }, - { - "RequestUri": "/face/v1.0/snapshots/2fd742cb-0e02-4297-8238-a00f588fa213", - "EncodedRequestUri": "L2ZhY2UvdjEuMC9zbmFwc2hvdHMvMmZkNzQyY2ItMGUwMi00Mjk3LTgyMzgtYTAwZjU4OGZhMjEz", - "RequestMethod": "DELETE", - "RequestBody": "", - "RequestHeaders": { - "Ocp-Apim-Subscription-Key": [ - "" - ], - "User-Agent": [ - "FxVersion/4.6.26614.01", - "OSName/Windows", - "OSVersion/Microsoft.Windows.10.0.17763.", - "Microsoft.Azure.CognitiveServices.Vision.Face.FaceClient/2.2.0.0" - ] - }, - "ResponseHeaders": { - "Cache-Control": [ - "no-cache" - ], - "Date": [ - "Mon, 07 Jan 2019 10:25:06 GMT" - ], - "Pragma": [ - "no-cache" - ], - "X-AspNet-Version": [ - "4.0.30319" - ], - "X-Powered-By": [ - "ASP.NET" - ], - "apim-request-id": [ - "5e953945-5f45-4ee6-a700-90da7f423084" - ], - "Strict-Transport-Security": [ - "max-age=31536000; includeSubDomains; preload" - ], - "x-content-type-options": [ - "nosniff" - ], - "Content-Length": [ - "0" - ], - "Expires": [ - "-1" - ] - }, - "ResponseBody": "", - "StatusCode": 200 - } - ], - "Names": {}, - "Variables": {} -} \ No newline at end of file diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SnapshotTests.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SnapshotTests.cs deleted file mode 100644 index c5f9959ade23..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face.Tests/SnapshotTests.cs +++ /dev/null @@ -1,341 +0,0 @@ -using Microsoft.Azure.CognitiveServices.Vision.Face; -using Microsoft.Azure.CognitiveServices.Vision.Face.Models; -using Microsoft.Azure.Test.HttpRecorder; -using Microsoft.Rest.ClientRuntime.Azure.TestFramework; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading; -using Xunit; - -namespace FaceSDK.Tests -{ - public class SnapshotTests : BaseTests - { - // Set the apply scope of the snapshot here, which should be a list of Azure subscription ids - // of Cognitive Service Face. We can leave it as `Guid.Empty` in the `playback` test mode. - private static readonly List ApplyScope = new List { Guid.Empty }; - - [Fact] - public void FaceSnapshotTestFaceList() - { - using (MockContext context = MockContext.Start(this.GetType().FullName)) - { - HttpMockServer.Initialize(this.GetType().FullName, "FaceSnapshotTestFaceList"); - - var sourceFaceListId = "source-face-list-id"; - var name = $"name{sourceFaceListId}"; - var userdata = $"userdata{sourceFaceListId}"; - - IFaceClient client = GetFaceClient(HttpMockServer.CreateInstance()); - client.FaceList.CreateAsync(sourceFaceListId, name, userdata).Wait(); - - using (FileStream stream = new FileStream(Path.Combine("TestImages", "Satya4.jpg"), FileMode.Open)) - { - var persistedFace = client.FaceList.AddFaceFromStreamAsync(sourceFaceListId, stream).Result; - Assert.NotNull(persistedFace); - } - - var objectType = SnapshotObjectType.FaceList; - var objectId = sourceFaceListId; - var snapshotUserData = "User provided data for the snapshot."; - - var takeSnapshotResult = client.Snapshot.TakeAsync(objectType, objectId, ApplyScope, snapshotUserData).Result; - Assert.NotNull(takeSnapshotResult.OperationLocation); - - var operationStatus = GetOperationResult(client, takeSnapshotResult.OperationLocation); - Assert.NotNull(operationStatus); - Assert.Equal(OperationStatusType.Succeeded, operationStatus.Status); - - var resourceId = Guid.Parse(operationStatus.ResourceLocation.Split('/').Last()); - - var targetFacelistId = "target-face-list-id"; - var applyMode = SnapshotApplyMode.CreateNew; - var applySnapshotResult = client.Snapshot.ApplyAsync(resourceId, targetFacelistId, applyMode).Result; - Assert.NotNull(applySnapshotResult.OperationLocation); - - operationStatus = GetOperationResult(client, applySnapshotResult.OperationLocation); - Assert.NotNull(operationStatus); - Assert.Equal(operationStatus.Status.ToString(), OperationStatusType.Succeeded.ToString()); - - var targetObjectId = operationStatus.ResourceLocation.Split('/').Last(); - Assert.Equal(targetFacelistId, targetObjectId); - - var targetFacelist = client.FaceList.GetAsync(targetFacelistId).Result; - Assert.NotNull(targetFacelist); - Assert.True(targetFacelist.PersistedFaces.Count == 1); - - client.FaceList.DeleteAsync(sourceFaceListId).Wait(); - client.FaceList.DeleteAsync(targetFacelistId).Wait(); - client.Snapshot.DeleteAsync(resourceId).Wait(); - } - } - - [Fact] - public void FaceSnapshotTestLargeFaceList() - { - using (MockContext context = MockContext.Start(this.GetType().FullName)) - { - HttpMockServer.Initialize(this.GetType().FullName, "FaceSnapshotTestLargeFaceList"); - - var sourceLargeFacelistId = "source-large-face-list-id"; - var name = $"name{sourceLargeFacelistId}"; - var userdata = $"userdata{sourceLargeFacelistId}"; - - IFaceClient client = GetFaceClient(HttpMockServer.CreateInstance()); - client.LargeFaceList.CreateAsync(sourceLargeFacelistId, name, userdata).Wait(); - - using (FileStream stream = new FileStream(Path.Combine("TestImages", "Satya4.jpg"), FileMode.Open)) - { - var persistedFace = client.LargeFaceList.AddFaceFromStreamAsync(sourceLargeFacelistId, stream).Result; - Assert.NotNull(persistedFace); - } - - var trainingResult = GetTrainingResult(client, sourceLargeFacelistId, "LargeFaceList"); - Assert.NotNull(trainingResult); - Assert.Equal(TrainingStatusType.Succeeded, trainingResult.Status); - - var objectType = SnapshotObjectType.LargeFaceList; - var objectId = sourceLargeFacelistId; - var snapshotUserData = "User provided data for the snapshot."; - - var takeSnapshotResult = client.Snapshot.TakeAsync(objectType, objectId, ApplyScope, snapshotUserData).Result; - Assert.NotNull(takeSnapshotResult.OperationLocation); - - var operationStatus = GetOperationResult(client, takeSnapshotResult.OperationLocation); - Assert.NotNull(operationStatus); - Assert.Equal(OperationStatusType.Succeeded, operationStatus.Status); - - var resourceId = Guid.Parse(operationStatus.ResourceLocation.Split('/').Last()); - - var targetLargeFacelistId = "target-large-face-list-id"; - var applyMode = SnapshotApplyMode.CreateNew; - var applySnapshotResult = client.Snapshot.ApplyAsync(resourceId, targetLargeFacelistId, applyMode).Result; - Assert.NotNull(applySnapshotResult.OperationLocation); - - operationStatus = GetOperationResult(client, applySnapshotResult.OperationLocation); - Assert.NotNull(operationStatus); - Assert.Equal(operationStatus.Status.ToString(), OperationStatusType.Succeeded.ToString()); - - var targetObjectId = operationStatus.ResourceLocation.Split('/').Last(); - Assert.Equal(targetLargeFacelistId, targetObjectId); - - var targetLargeFacelist = client.LargeFaceList.GetAsync(targetLargeFacelistId).Result; - Assert.NotNull(targetLargeFacelist); - - var targetLargeFacelistFaces = client.LargeFaceList.ListFacesAsync(targetLargeFacelistId).Result; - Assert.True(targetLargeFacelistFaces.Count == 1); - - client.LargeFaceList.DeleteAsync(sourceLargeFacelistId).Wait(); - client.LargeFaceList.DeleteAsync(targetLargeFacelistId).Wait(); - client.Snapshot.DeleteAsync(resourceId).Wait(); - } - } - - [Fact] - public void FaceSnapshotTestLargePersonGroup() - { - using (MockContext context = MockContext.Start(this.GetType().FullName)) - { - HttpMockServer.Initialize(this.GetType().FullName, "FaceSnapshotTestLargePersonGroup"); - - var sourceLargePersonGroupId = "source-large-person-group-id"; - var name = $"name{sourceLargePersonGroupId}"; - var userdata = $"userdata{sourceLargePersonGroupId}"; - - IFaceClient client = GetFaceClient(HttpMockServer.CreateInstance()); - client.LargePersonGroup.CreateAsync(sourceLargePersonGroupId, name, userdata).Wait(); - - var personName = $"personName{sourceLargePersonGroupId}"; - var personUserdata = $"personUserdata{sourceLargePersonGroupId}"; - var largePersonGroupPersonId = client.LargePersonGroupPerson.CreateAsync(sourceLargePersonGroupId, personName, personUserdata).Result.PersonId; - - Guid largePersonGroupPersonFaceId; - - using (FileStream stream = new FileStream(Path.Combine("TestImages", "Satya4.jpg"), FileMode.Open)) - { - var persistedFace = client.LargePersonGroupPerson.AddFaceFromStreamAsync(sourceLargePersonGroupId, largePersonGroupPersonId, stream).Result; - Assert.NotNull(persistedFace); - largePersonGroupPersonFaceId = persistedFace.PersistedFaceId; - } - - var trainingResult = GetTrainingResult(client, sourceLargePersonGroupId, "LargePersonGroup"); - Assert.NotNull(trainingResult); - Assert.Equal(trainingResult.Status.ToString(), TrainingStatusType.Succeeded.ToString()); - - var objectType = SnapshotObjectType.LargePersonGroup; - var objectId = sourceLargePersonGroupId; - var snapshotUserData = "User provided data for the snapshot."; - - var takeSnapshotResult = client.Snapshot.TakeAsync(objectType, objectId, ApplyScope, snapshotUserData).Result; - Assert.NotNull(takeSnapshotResult.OperationLocation); - - var operationStatus = GetOperationResult(client, takeSnapshotResult.OperationLocation); - Assert.NotNull(operationStatus); - Assert.Equal(OperationStatusType.Succeeded, operationStatus.Status); - - var resourceId = Guid.Parse(operationStatus.ResourceLocation.Split('/').Last()); - - var targetLargePersonGroupId = Guid.NewGuid().ToString(); - var applyMode = SnapshotApplyMode.CreateNew; - var applySnapshotResult = client.Snapshot.ApplyAsync(resourceId, targetLargePersonGroupId, applyMode).Result; - Assert.NotNull(applySnapshotResult.OperationLocation); - - operationStatus = GetOperationResult(client, applySnapshotResult.OperationLocation); - Assert.NotNull(operationStatus); - Assert.Equal(OperationStatusType.Succeeded, operationStatus.Status); - - var targetObjectId = operationStatus.ResourceLocation.Split('/').Last(); - - var targetLargePersonGroup = client.LargePersonGroup.GetAsync(targetObjectId).Result; - Assert.NotNull(targetLargePersonGroup); - - var targetLargePersonGroupPerson = client.LargePersonGroupPerson.GetAsync(targetObjectId, largePersonGroupPersonId).Result; - Assert.NotNull(targetLargePersonGroupPerson); - - var targetLargePersonGroupPersonFace = client.LargePersonGroupPerson.GetFaceAsync(targetObjectId, largePersonGroupPersonId, largePersonGroupPersonFaceId).Result; - Assert.NotNull(targetLargePersonGroupPersonFace); - - client.LargePersonGroup.DeleteAsync(sourceLargePersonGroupId).Wait(); - client.LargePersonGroup.DeleteAsync(targetObjectId).Wait(); - client.Snapshot.DeleteAsync(resourceId).Wait(); - } - } - - [Fact] - public void FaceSnapshotTestPersonGroup() - { - using (MockContext context = MockContext.Start(this.GetType().FullName)) - { - HttpMockServer.Initialize(this.GetType().FullName, "FaceSnapshotTestPersonGroup"); - - var sourcePersonGroupId = "source-person-group-id"; - var name = $"name{sourcePersonGroupId}"; - var userdata = $"userdata{sourcePersonGroupId}"; - - IFaceClient client = GetFaceClient(HttpMockServer.CreateInstance()); - client.PersonGroup.CreateAsync(sourcePersonGroupId, name, userdata).Wait(); - - var personName = $"personName{sourcePersonGroupId}"; - var personUserdata = $"personUserdata{sourcePersonGroupId}"; - var personGroupPersonId = client.PersonGroupPerson.CreateAsync(sourcePersonGroupId, personName, personUserdata).Result.PersonId; - - Guid personGroupPersonFaceId; - - using (FileStream stream = new FileStream(Path.Combine("TestImages", "Satya4.jpg"), FileMode.Open)) - { - var persistedFace = client.PersonGroupPerson.AddFaceFromStreamAsync(sourcePersonGroupId, personGroupPersonId, stream).Result; - Assert.NotNull(persistedFace); - personGroupPersonFaceId = persistedFace.PersistedFaceId; - } - - var trainingResult = GetTrainingResult(client, sourcePersonGroupId, "PersonGroup"); - Assert.NotNull(trainingResult); - Assert.Equal(TrainingStatusType.Succeeded, trainingResult.Status); - - var objectType = SnapshotObjectType.PersonGroup; - var objectId = sourcePersonGroupId; - var snapshotUserData = "User provided data for the snapshot."; - - var takeSnapshotResult = client.Snapshot.TakeAsync(objectType, objectId, ApplyScope, snapshotUserData).Result; - Assert.NotNull(takeSnapshotResult.OperationLocation); - - var operationStatus = GetOperationResult(client, takeSnapshotResult.OperationLocation); - Assert.NotNull(operationStatus); - Assert.Equal(OperationStatusType.Succeeded, operationStatus.Status); - - var resourceId = Guid.Parse(operationStatus.ResourceLocation.Split('/').Last()); - - var targetPersonGroupId = "target-person-group-id"; - var applyMode = SnapshotApplyMode.CreateNew; - var applySnapshotResult = client.Snapshot.ApplyAsync(resourceId, targetPersonGroupId, applyMode).Result; - Assert.NotNull(applySnapshotResult.OperationLocation); - - operationStatus = GetOperationResult(client, applySnapshotResult.OperationLocation); - Assert.NotNull(operationStatus); - Assert.Equal(operationStatus.Status.ToString(), OperationStatusType.Succeeded.ToString()); - - var targetObjectId = operationStatus.ResourceLocation.Split('/').Last(); - Assert.Equal(targetPersonGroupId, targetObjectId); - - var targetPersonGroup = client.PersonGroup.GetAsync(targetPersonGroupId).Result; - Assert.NotNull(targetPersonGroup); - - var targetPersonGroupPerson = client.PersonGroupPerson.GetAsync(targetPersonGroupId, personGroupPersonId).Result; - Assert.NotNull(targetPersonGroupPerson); - - var targetPersonGroupPersonFace = client.PersonGroupPerson.GetFaceAsync(targetPersonGroupId, personGroupPersonId, personGroupPersonFaceId).Result; - Assert.NotNull(targetPersonGroupPersonFace); - - client.PersonGroup.DeleteAsync(sourcePersonGroupId).Wait(); - client.PersonGroup.DeleteAsync(targetPersonGroupId).Wait(); - client.Snapshot.DeleteAsync(resourceId).Wait(); - } - } - - private static OperationStatus GetOperationResult(IFaceClient client, string operationLocation, int timeIntervalInMilliSeconds = 1000) - { - Assert.True(Uri.IsWellFormedUriString(operationLocation, UriKind.RelativeOrAbsolute)); - var operationId = Guid.Parse(operationLocation.Split('/').Last()); - - var operationStatus = client.Snapshot.GetOperationStatusAsync(operationId).Result; - - while (operationStatus != null - && !operationStatus.Status.Equals(OperationStatusType.Succeeded) - && !operationStatus.Status.Equals(OperationStatusType.Failed)) - { - Thread.Sleep(timeIntervalInMilliSeconds); - - operationStatus = client.Snapshot.GetOperationStatusAsync(operationId).Result; - } - - return operationStatus; - } - - private static TrainingStatus GetTrainingResult(IFaceClient client, string resourceId, string resourceType, int timeIntervalInMilliSeconds = 1000) - { - TrainingStatus trainStatus; - - switch (resourceType) - { - case "LargeFaceList": - client.LargeFaceList.TrainAsync(resourceId).Wait(); - trainStatus = client.LargeFaceList.GetTrainingStatusAsync(resourceId).Result; - break; - case "PersonGroup": - client.PersonGroup.TrainAsync(resourceId).Wait(); - trainStatus = client.PersonGroup.GetTrainingStatusAsync(resourceId).Result; - break; - case "LargePersonGroup": - client.LargePersonGroup.TrainAsync(resourceId).Wait(); - trainStatus = client.LargePersonGroup.GetTrainingStatusAsync(resourceId).Result; - break; - default: - return null; - } - - while (trainStatus != null - && !trainStatus.Status.Equals(TrainingStatusType.Succeeded) - && !trainStatus.Status.Equals(TrainingStatusType.Failed)) - { - Thread.Sleep(timeIntervalInMilliSeconds); - - switch (resourceType) - { - case "LargeFaceList": - trainStatus = client.LargeFaceList.GetTrainingStatusAsync(resourceId).Result; - break; - case "PersonGroup": - trainStatus = client.PersonGroup.GetTrainingStatusAsync(resourceId).Result; - break; - case "LargePersonGroup": - trainStatus = client.LargePersonGroup.GetTrainingStatusAsync(resourceId).Result; - break; - } - } - - return trainStatus; - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceClient.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceClient.cs index 95fe7f33e869..ca42af3bd53a 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceClient.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceClient.cs @@ -85,11 +85,6 @@ public partial class FaceClient : ServiceClient, IFaceClient /// public virtual ILargeFaceListOperations LargeFaceList { get; private set; } - /// - /// Gets the ISnapshotOperations. - /// - public virtual ISnapshotOperations Snapshot { get; private set; } - /// /// Initializes a new instance of the FaceClient class. /// @@ -184,7 +179,6 @@ private void Initialize() LargePersonGroupPerson = new LargePersonGroupPerson(this); LargePersonGroup = new LargePersonGroupOperations(this); LargeFaceList = new LargeFaceListOperations(this); - Snapshot = new SnapshotOperations(this); BaseUri = "{Endpoint}/face/v1.0"; SerializationSettings = new JsonSerializerSettings { diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceListOperations.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceListOperations.cs index a39b0a3657c2..19040fc0afe5 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceListOperations.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceListOperations.cs @@ -857,7 +857,7 @@ public FaceListOperations(FaceClient client) } /// - /// Delete an existing face from a face list (given by a persistedFaceId and a + /// Delete an existing face from a face list (given by a persisitedFaceId and a /// faceListId). Persisted image related to the face will also be deleted. /// /// diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceListOperationsExtensions.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceListOperationsExtensions.cs index 6b29ae8ced98..903936b3faed 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceListOperationsExtensions.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/FaceListOperationsExtensions.cs @@ -126,7 +126,7 @@ public static partial class FaceListOperationsExtensions } /// - /// Delete an existing face from a face list (given by a persistedFaceId and a + /// Delete an existing face from a face list (given by a persisitedFaceId and a /// faceListId). Persisted image related to the face will also be deleted. /// /// diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/IFaceClient.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/IFaceClient.cs index d79b5d45c862..c4a93dd061e4 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/IFaceClient.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/IFaceClient.cs @@ -81,10 +81,5 @@ public partial interface IFaceClient : System.IDisposable /// ILargeFaceListOperations LargeFaceList { get; } - /// - /// Gets the ISnapshotOperations. - /// - ISnapshotOperations Snapshot { get; } - } } diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/IFaceListOperations.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/IFaceListOperations.cs index 2519d4dbccf3..1ed9a3f60022 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/IFaceListOperations.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/IFaceListOperations.cs @@ -138,7 +138,7 @@ public partial interface IFaceListOperations Task>> ListWithHttpMessagesAsync(Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// /// Delete an existing face from a face list (given by a - /// persistedFaceId and a faceListId). Persisted image related to the + /// persisitedFaceId and a faceListId). Persisted image related to the /// face will also be deleted. /// /// diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/ILargeFaceListOperations.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/ILargeFaceListOperations.cs index b3a7fc7b57f8..50237ea1d3a3 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/ILargeFaceListOperations.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/ILargeFaceListOperations.cs @@ -181,7 +181,7 @@ public partial interface ILargeFaceListOperations Task TrainWithHttpMessagesAsync(string largeFaceListId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); /// /// Delete an existing face from a large face list (given by a - /// persistedFaceId and a largeFaceListId). Persisted image related to + /// persisitedFaceId and a largeFaceListId). Persisted image related to /// the face will also be deleted. /// /// diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/ISnapshotOperations.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/ISnapshotOperations.cs deleted file mode 100644 index 7ca2ce35a7c6..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/ISnapshotOperations.cs +++ /dev/null @@ -1,290 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face -{ - using Microsoft.Rest; - using Models; - using System.Collections; - using System.Collections.Generic; - using System.Threading; - using System.Threading.Tasks; - - /// - /// SnapshotOperations operations. - /// - public partial interface ISnapshotOperations - { - /// - /// Submit an operation to take a snapshot of face list, large face - /// list, person group or large person group, with user-specified - /// snapshot type, source object id, apply scope and an optional user - /// data. - /// The snapshot interfaces are for users to backup and restore their - /// face data from one face subscription to another, inside same region - /// or across regions. The workflow contains two phases, user first - /// calls Snapshot - Take to create a copy of the source object and - /// store it as a snapshot, then calls Snapshot - Apply to paste the - /// snapshot to target subscription. The snapshots are stored in a - /// centralized location (per Azure instance), so that they can be - /// applied cross accounts and regions. - /// Taking snapshot is an asynchronous operation. An operation id can - /// be obtained from the "Operation-Location" field in response header, - /// to be used in OperationStatus - Get for tracking the progress of - /// creating the snapshot. The snapshot id will be included in the - /// "resourceLocation" field in OperationStatus - Get response when the - /// operation status is "succeeded". - /// Snapshot taking time depends on the number of person and face - /// entries in the source object. It could be in seconds, or up to - /// several hours for 1,000,000 persons with multiple faces. - /// Snapshots will be automatically expired and cleaned in 48 hours - /// after it is created by Snapshot - Take. User can delete the - /// snapshot using Snapshot - Delete by themselves any time before - /// expiration. - /// Taking snapshot for a certain object will not block any other - /// operations against the object. All read-only operations (Get/List - /// and Identify/FindSimilar/Verify) can be conducted as usual. For all - /// writable operations, including Add/Update/Delete the source object - /// or its persons/faces and Train, they are not blocked but not - /// recommended because writable updates may not be reflected on the - /// snapshot during its taking. After snapshot taking is completed, all - /// readable and writable operations can work as normal. Snapshot will - /// also include the training results of the source object, which means - /// target subscription the snapshot applied to does not need re-train - /// the target object before calling Identify/FindSimilar. - /// - /// - /// User specified type for the source object to take snapshot from. - /// Currently FaceList, PersonGroup, LargeFaceList and LargePersonGroup - /// are supported. Possible values include: 'FaceList', - /// 'LargeFaceList', 'LargePersonGroup', 'PersonGroup' - /// - /// - /// User specified source object id to take snapshot from. - /// - /// - /// User specified array of target Face subscription ids for the - /// snapshot. For each snapshot, only subscriptions included in the - /// applyScope of Snapshot - Take can apply it. - /// - /// - /// User specified data about the snapshot for any purpose. Length - /// should not exceed 16KB. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when a required parameter is null - /// - Task> TakeWithHttpMessagesAsync(SnapshotObjectType type, string objectId, IList applyScope, string userData = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); - /// - /// List all accessible snapshots with related information, including - /// snapshots that were taken by the user, or snapshots to be applied - /// to the user (subscription id was included in the applyScope in - /// Snapshot - Take). - /// - /// - /// User specified object type as a search filter. Possible values - /// include: 'FaceList', 'LargeFaceList', 'LargePersonGroup', - /// 'PersonGroup' - /// - /// - /// User specified snapshot apply scopes as a search filter. ApplyScope - /// is an array of the target Azure subscription ids for the snapshot, - /// specified by the user who created the snapshot by Snapshot - Take. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - /// - /// Thrown when a required parameter is null - /// - Task>> ListWithHttpMessagesAsync(SnapshotObjectType? type = default(SnapshotObjectType?), IList applyScope = default(IList), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); - /// - /// Retrieve information about a snapshot. Snapshot is only accessible - /// to the source subscription who took it, and target subscriptions - /// included in the applyScope in Snapshot - Take. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - /// - /// Thrown when a required parameter is null - /// - Task> GetWithHttpMessagesAsync(System.Guid snapshotId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); - /// - /// Update the information of a snapshot. Only the source subscription - /// who took the snapshot can update the snapshot. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// Array of the target Face subscription ids for the snapshot, - /// specified by the user who created the snapshot when calling - /// Snapshot - Take. For each snapshot, only subscriptions included in - /// the applyScope of Snapshot - Take can apply it. - /// - /// - /// User specified data about the snapshot for any purpose. Length - /// should not exceed 16KB. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when a required parameter is null - /// - Task UpdateWithHttpMessagesAsync(System.Guid snapshotId, IList applyScope = default(IList), string userData = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); - /// - /// Delete an existing snapshot according to the snapshotId. All object - /// data and information in the snapshot will also be deleted. Only the - /// source subscription who took the snapshot can delete the snapshot. - /// If the user does not delete a snapshot with this API, the snapshot - /// will still be automatically deleted in 48 hours after creation. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when a required parameter is null - /// - Task DeleteWithHttpMessagesAsync(System.Guid snapshotId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); - /// - /// Submit an operation to apply a snapshot to current subscription. - /// For each snapshot, only subscriptions included in the applyScope of - /// Snapshot - Take can apply it. - /// The snapshot interfaces are for users to backup and restore their - /// face data from one face subscription to another, inside same region - /// or across regions. The workflow contains two phases, user first - /// calls Snapshot - Take to create a copy of the source object and - /// store it as a snapshot, then calls Snapshot - Apply to paste the - /// snapshot to target subscription. The snapshots are stored in a - /// centralized location (per Azure instance), so that they can be - /// applied cross accounts and regions. - /// Applying snapshot is an asynchronous operation. An operation id can - /// be obtained from the "Operation-Location" field in response header, - /// to be used in OperationStatus - Get for tracking the progress of - /// applying the snapshot. The target object id will be included in the - /// "resourceLocation" field in OperationStatus - Get response when the - /// operation status is "succeeded". - /// Snapshot applying time depends on the number of person and face - /// entries in the snapshot object. It could be in seconds, or up to 1 - /// hour for 1,000,000 persons with multiple faces. - /// Snapshots will be automatically expired and cleaned in 48 hours - /// after it is created by Snapshot - Take. So the target subscription - /// is required to apply the snapshot in 48 hours since its creation. - /// Applying a snapshot will not block any other operations against the - /// target object, however it is not recommended because the - /// correctness cannot be guaranteed during snapshot applying. After - /// snapshot applying is completed, all operations towards the target - /// object can work as normal. Snapshot also includes the training - /// results of the source object, which means target subscription the - /// snapshot applied to does not need re-train the target object before - /// calling Identify/FindSimilar. - /// One snapshot can be applied multiple times in parallel, while - /// currently only CreateNew apply mode is supported, which means the - /// apply operation will fail if target subscription already contains - /// an object of same type and using the same objectId. Users can - /// specify the "objectId" in request body to avoid such conflicts. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// User specified target object id to be created from the snapshot. - /// - /// - /// Snapshot applying mode. Currently only CreateNew is supported, - /// which means the apply operation will fail if target subscription - /// already contains an object of same type and using the same - /// objectId. Users can specify the "objectId" in request body to avoid - /// such conflicts. Possible values include: 'CreateNew' - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when a required parameter is null - /// - Task> ApplyWithHttpMessagesAsync(System.Guid snapshotId, string objectId, SnapshotApplyMode mode = default(SnapshotApplyMode), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); - /// - /// Retrieve the status of a take/apply snapshot operation. - /// - /// - /// Id referencing a particular take/apply snapshot operation. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - /// - /// Thrown when a required parameter is null - /// - Task> GetOperationStatusWithHttpMessagesAsync(System.Guid operationId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)); - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/LargeFaceListOperations.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/LargeFaceListOperations.cs index 727024226951..239606d35cc0 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/LargeFaceListOperations.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/LargeFaceListOperations.cs @@ -1165,7 +1165,7 @@ public LargeFaceListOperations(FaceClient client) } /// - /// Delete an existing face from a large face list (given by a persistedFaceId + /// Delete an existing face from a large face list (given by a persisitedFaceId /// and a largeFaceListId). Persisted image related to the face will also be /// deleted. /// diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/LargeFaceListOperationsExtensions.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/LargeFaceListOperationsExtensions.cs index 9acd9c5398b0..f48952c1f777 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/LargeFaceListOperationsExtensions.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/LargeFaceListOperationsExtensions.cs @@ -164,7 +164,7 @@ public static partial class LargeFaceListOperationsExtensions } /// - /// Delete an existing face from a large face list (given by a persistedFaceId + /// Delete an existing face from a large face list (given by a persisitedFaceId /// and a largeFaceListId). Persisted image related to the face will also be /// deleted. /// diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/ApplySnapshotRequest.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/ApplySnapshotRequest.cs deleted file mode 100644 index 9a53762b997d..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/ApplySnapshotRequest.cs +++ /dev/null @@ -1,94 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Microsoft.Rest; - using Newtonsoft.Json; - using System.Linq; - - /// - /// Request body for applying snapshot operation. - /// - public partial class ApplySnapshotRequest - { - /// - /// Initializes a new instance of the ApplySnapshotRequest class. - /// - public ApplySnapshotRequest() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the ApplySnapshotRequest class. - /// - /// User specified target object id to be - /// created from the snapshot. - /// Snapshot applying mode. Currently only CreateNew - /// is supported, which means the apply operation will fail if target - /// subscription already contains an object of same type and using the - /// same objectId. Users can specify the "objectId" in request body to - /// avoid such conflicts. Possible values include: 'CreateNew' - public ApplySnapshotRequest(string objectId, SnapshotApplyMode mode = default(SnapshotApplyMode)) - { - ObjectId = objectId; - Mode = mode; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - /// - /// Gets or sets user specified target object id to be created from the - /// snapshot. - /// - [JsonProperty(PropertyName = "objectId")] - public string ObjectId { get; set; } - - /// - /// Gets or sets snapshot applying mode. Currently only CreateNew is - /// supported, which means the apply operation will fail if target - /// subscription already contains an object of same type and using the - /// same objectId. Users can specify the "objectId" in request body to - /// avoid such conflicts. Possible values include: 'CreateNew' - /// - [JsonProperty(PropertyName = "mode")] - public SnapshotApplyMode Mode { get; set; } - - /// - /// Validate the object. - /// - /// - /// Thrown if validation fails - /// - public virtual void Validate() - { - if (ObjectId == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "ObjectId"); - } - if (ObjectId != null) - { - if (ObjectId.Length > 64) - { - throw new ValidationException(ValidationRules.MaxLength, "ObjectId", 64); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(ObjectId, "^[a-z0-9-_]+$")) - { - throw new ValidationException(ValidationRules.Pattern, "ObjectId", "^[a-z0-9-_]+$"); - } - } - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/OperationStatus.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/OperationStatus.cs deleted file mode 100644 index 3394b90c05fe..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/OperationStatus.cs +++ /dev/null @@ -1,137 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Newtonsoft.Json; - using System.Linq; - - /// - /// Operation status object. Operation refers to the asynchronous backend - /// task including taking a snapshot and applying a snapshot. - /// - public partial class OperationStatus - { - /// - /// Initializes a new instance of the OperationStatus class. - /// - public OperationStatus() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the OperationStatus class. - /// - /// Operation status: notstarted, running, - /// succeeded, failed. If the operation is requested and waiting to - /// perform, the status is notstarted. If the operation is ongoing in - /// backend, the status is running. Status succeeded means the - /// operation is completed successfully, specifically for snapshot - /// taking operation, it illustrates the snapshot is well taken and - /// ready to apply, and for snapshot applying operation, it presents - /// the target object has finished creating by the snapshot and ready - /// to be used. Status failed is often caused by editing the source - /// object while taking the snapshot or editing the target object while - /// applying the snapshot before completion, see the field "message" to - /// check the failure reason. Possible values include: 'notstarted', - /// 'running', 'succeeded', 'failed' - /// A combined UTC date and time string that - /// describes the time when the operation (take or apply a snapshot) is - /// requested. E.g. 2018-12-25T11:41:02.2331413Z. - /// A combined UTC date and time string - /// that describes the last time the operation (take or apply a - /// snapshot) is actively migrating data. The lastActionTime will keep - /// increasing until the operation finishes. E.g. - /// 2018-12-25T11:51:27.8705696Z. - /// When the operation succeeds - /// successfully, for snapshot taking operation the snapshot id will be - /// included in this field, and for snapshot applying operation, the - /// path to get the target object will be returned in this - /// field. - /// Show failure message when operation fails - /// (omitted when operation succeeds). - public OperationStatus(OperationStatusType status, System.DateTime createdTime, System.DateTime? lastActionTime = default(System.DateTime?), string resourceLocation = default(string), string message = default(string)) - { - Status = status; - CreatedTime = createdTime; - LastActionTime = lastActionTime; - ResourceLocation = resourceLocation; - Message = message; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - /// - /// Gets or sets operation status: notstarted, running, succeeded, - /// failed. If the operation is requested and waiting to perform, the - /// status is notstarted. If the operation is ongoing in backend, the - /// status is running. Status succeeded means the operation is - /// completed successfully, specifically for snapshot taking operation, - /// it illustrates the snapshot is well taken and ready to apply, and - /// for snapshot applying operation, it presents the target object has - /// finished creating by the snapshot and ready to be used. Status - /// failed is often caused by editing the source object while taking - /// the snapshot or editing the target object while applying the - /// snapshot before completion, see the field "message" to check the - /// failure reason. Possible values include: 'notstarted', 'running', - /// 'succeeded', 'failed' - /// - [JsonProperty(PropertyName = "status")] - public OperationStatusType Status { get; set; } - - /// - /// Gets or sets a combined UTC date and time string that describes the - /// time when the operation (take or apply a snapshot) is requested. - /// E.g. 2018-12-25T11:41:02.2331413Z. - /// - [JsonProperty(PropertyName = "createdTime")] - public System.DateTime CreatedTime { get; set; } - - /// - /// Gets or sets a combined UTC date and time string that describes the - /// last time the operation (take or apply a snapshot) is actively - /// migrating data. The lastActionTime will keep increasing until the - /// operation finishes. E.g. 2018-12-25T11:51:27.8705696Z. - /// - [JsonProperty(PropertyName = "lastActionTime")] - public System.DateTime? LastActionTime { get; set; } - - /// - /// Gets or sets when the operation succeeds successfully, for snapshot - /// taking operation the snapshot id will be included in this field, - /// and for snapshot applying operation, the path to get the target - /// object will be returned in this field. - /// - [JsonProperty(PropertyName = "resourceLocation")] - public string ResourceLocation { get; set; } - - /// - /// Gets or sets show failure message when operation fails (omitted - /// when operation succeeds). - /// - [JsonProperty(PropertyName = "message")] - public string Message { get; set; } - - /// - /// Validate the object. - /// - /// - /// Thrown if validation fails - /// - public virtual void Validate() - { - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/OperationStatusType.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/OperationStatusType.cs deleted file mode 100644 index 696d73f63d1b..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/OperationStatusType.cs +++ /dev/null @@ -1,72 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Newtonsoft.Json; - using Newtonsoft.Json.Converters; - using System.Runtime; - using System.Runtime.Serialization; - - /// - /// Defines values for OperationStatusType. - /// - [JsonConverter(typeof(StringEnumConverter))] - public enum OperationStatusType - { - [EnumMember(Value = "notstarted")] - Notstarted, - [EnumMember(Value = "running")] - Running, - [EnumMember(Value = "succeeded")] - Succeeded, - [EnumMember(Value = "failed")] - Failed - } - internal static class OperationStatusTypeEnumExtension - { - internal static string ToSerializedValue(this OperationStatusType? value) - { - return value == null ? null : ((OperationStatusType)value).ToSerializedValue(); - } - - internal static string ToSerializedValue(this OperationStatusType value) - { - switch( value ) - { - case OperationStatusType.Notstarted: - return "notstarted"; - case OperationStatusType.Running: - return "running"; - case OperationStatusType.Succeeded: - return "succeeded"; - case OperationStatusType.Failed: - return "failed"; - } - return null; - } - - internal static OperationStatusType? ParseOperationStatusType(this string value) - { - switch( value ) - { - case "notstarted": - return OperationStatusType.Notstarted; - case "running": - return OperationStatusType.Running; - case "succeeded": - return OperationStatusType.Succeeded; - case "failed": - return OperationStatusType.Failed; - } - return null; - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/Snapshot.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/Snapshot.cs deleted file mode 100644 index c16b8bff3320..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/Snapshot.cs +++ /dev/null @@ -1,153 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Microsoft.Rest; - using Newtonsoft.Json; - using System.Collections; - using System.Collections.Generic; - using System.Linq; - - /// - /// Snapshot object. - /// - public partial class Snapshot - { - /// - /// Initializes a new instance of the Snapshot class. - /// - public Snapshot() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the Snapshot class. - /// - /// Snapshot id. - /// Azure Cognitive Service Face account id of - /// the subscriber who created the snapshot by Snapshot - Take. - /// Type of the source object in the snapshot, - /// specified by the subscriber who created the snapshot when calling - /// Snapshot - Take. Currently FaceList, PersonGroup, LargeFaceList and - /// LargePersonGroup are supported. Possible values include: - /// 'FaceList', 'LargeFaceList', 'LargePersonGroup', - /// 'PersonGroup' - /// Array of the target Face subscription ids - /// for the snapshot, specified by the user who created the snapshot - /// when calling Snapshot - Take. For each snapshot, only subscriptions - /// included in the applyScope of Snapshot - Take can apply it. - /// A combined UTC date and time string that - /// describes the created time of the snapshot. E.g. - /// 2018-12-25T11:41:02.2331413Z. - /// A combined UTC date and time string - /// that describes the last time when the snapshot was created or - /// updated by Snapshot - Update. E.g. - /// 2018-12-25T11:51:27.8705696Z. - /// User specified data about the snapshot for - /// any purpose. Length should not exceed 16KB. - public Snapshot(System.Guid id, string account, SnapshotObjectType type, IList applyScope, System.DateTime createdTime, System.DateTime lastUpdateTime, string userData = default(string)) - { - Id = id; - Account = account; - Type = type; - ApplyScope = applyScope; - UserData = userData; - CreatedTime = createdTime; - LastUpdateTime = lastUpdateTime; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - /// - /// Gets or sets snapshot id. - /// - [JsonProperty(PropertyName = "id")] - public System.Guid Id { get; set; } - - /// - /// Gets or sets azure Cognitive Service Face account id of the - /// subscriber who created the snapshot by Snapshot - Take. - /// - [JsonProperty(PropertyName = "account")] - public string Account { get; set; } - - /// - /// Gets or sets type of the source object in the snapshot, specified - /// by the subscriber who created the snapshot when calling Snapshot - - /// Take. Currently FaceList, PersonGroup, LargeFaceList and - /// LargePersonGroup are supported. Possible values include: - /// 'FaceList', 'LargeFaceList', 'LargePersonGroup', 'PersonGroup' - /// - [JsonProperty(PropertyName = "type")] - public SnapshotObjectType Type { get; set; } - - /// - /// Gets or sets array of the target Face subscription ids for the - /// snapshot, specified by the user who created the snapshot when - /// calling Snapshot - Take. For each snapshot, only subscriptions - /// included in the applyScope of Snapshot - Take can apply it. - /// - [JsonProperty(PropertyName = "applyScope")] - public IList ApplyScope { get; set; } - - /// - /// Gets or sets user specified data about the snapshot for any - /// purpose. Length should not exceed 16KB. - /// - [JsonProperty(PropertyName = "userData")] - public string UserData { get; set; } - - /// - /// Gets or sets a combined UTC date and time string that describes the - /// created time of the snapshot. E.g. 2018-12-25T11:41:02.2331413Z. - /// - [JsonProperty(PropertyName = "createdTime")] - public System.DateTime CreatedTime { get; set; } - - /// - /// Gets or sets a combined UTC date and time string that describes the - /// last time when the snapshot was created or updated by Snapshot - - /// Update. E.g. 2018-12-25T11:51:27.8705696Z. - /// - [JsonProperty(PropertyName = "lastUpdateTime")] - public System.DateTime LastUpdateTime { get; set; } - - /// - /// Validate the object. - /// - /// - /// Thrown if validation fails - /// - public virtual void Validate() - { - if (Account == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "Account"); - } - if (ApplyScope == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "ApplyScope"); - } - if (UserData != null) - { - if (UserData.Length > 16384) - { - throw new ValidationException(ValidationRules.MaxLength, "UserData", 16384); - } - } - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotApplyHeaders.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotApplyHeaders.cs deleted file mode 100644 index cd22c31afae1..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotApplyHeaders.cs +++ /dev/null @@ -1,54 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Newtonsoft.Json; - using System.Linq; - - /// - /// Defines headers for Apply operation. - /// - public partial class SnapshotApplyHeaders - { - /// - /// Initializes a new instance of the SnapshotApplyHeaders class. - /// - public SnapshotApplyHeaders() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the SnapshotApplyHeaders class. - /// - /// Operation location with an - /// operation id used to track the progress of applying the snapshot by - /// OperationStatus - Get. - public SnapshotApplyHeaders(string operationLocation = default(string)) - { - OperationLocation = operationLocation; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - /// - /// Gets or sets operation location with an operation id used to track - /// the progress of applying the snapshot by OperationStatus - Get. - /// - [JsonProperty(PropertyName = "Operation-Location")] - public string OperationLocation { get; set; } - - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotApplyMode.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotApplyMode.cs deleted file mode 100644 index 5775c80c8b32..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotApplyMode.cs +++ /dev/null @@ -1,54 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Newtonsoft.Json; - using Newtonsoft.Json.Converters; - using System.Runtime; - using System.Runtime.Serialization; - - /// - /// Defines values for SnapshotApplyMode. - /// - [JsonConverter(typeof(StringEnumConverter))] - public enum SnapshotApplyMode - { - [EnumMember(Value = "CreateNew")] - CreateNew - } - internal static class SnapshotApplyModeEnumExtension - { - internal static string ToSerializedValue(this SnapshotApplyMode? value) - { - return value == null ? null : ((SnapshotApplyMode)value).ToSerializedValue(); - } - - internal static string ToSerializedValue(this SnapshotApplyMode value) - { - switch( value ) - { - case SnapshotApplyMode.CreateNew: - return "CreateNew"; - } - return null; - } - - internal static SnapshotApplyMode? ParseSnapshotApplyMode(this string value) - { - switch( value ) - { - case "CreateNew": - return SnapshotApplyMode.CreateNew; - } - return null; - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotObjectType.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotObjectType.cs deleted file mode 100644 index 52e629598bc2..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotObjectType.cs +++ /dev/null @@ -1,72 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Newtonsoft.Json; - using Newtonsoft.Json.Converters; - using System.Runtime; - using System.Runtime.Serialization; - - /// - /// Defines values for SnapshotObjectType. - /// - [JsonConverter(typeof(StringEnumConverter))] - public enum SnapshotObjectType - { - [EnumMember(Value = "FaceList")] - FaceList, - [EnumMember(Value = "LargeFaceList")] - LargeFaceList, - [EnumMember(Value = "LargePersonGroup")] - LargePersonGroup, - [EnumMember(Value = "PersonGroup")] - PersonGroup - } - internal static class SnapshotObjectTypeEnumExtension - { - internal static string ToSerializedValue(this SnapshotObjectType? value) - { - return value == null ? null : ((SnapshotObjectType)value).ToSerializedValue(); - } - - internal static string ToSerializedValue(this SnapshotObjectType value) - { - switch( value ) - { - case SnapshotObjectType.FaceList: - return "FaceList"; - case SnapshotObjectType.LargeFaceList: - return "LargeFaceList"; - case SnapshotObjectType.LargePersonGroup: - return "LargePersonGroup"; - case SnapshotObjectType.PersonGroup: - return "PersonGroup"; - } - return null; - } - - internal static SnapshotObjectType? ParseSnapshotObjectType(this string value) - { - switch( value ) - { - case "FaceList": - return SnapshotObjectType.FaceList; - case "LargeFaceList": - return SnapshotObjectType.LargeFaceList; - case "LargePersonGroup": - return SnapshotObjectType.LargePersonGroup; - case "PersonGroup": - return SnapshotObjectType.PersonGroup; - } - return null; - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotTakeHeaders.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotTakeHeaders.cs deleted file mode 100644 index fd39000d6dcf..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/SnapshotTakeHeaders.cs +++ /dev/null @@ -1,58 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Newtonsoft.Json; - using System.Linq; - - /// - /// Defines headers for Take operation. - /// - public partial class SnapshotTakeHeaders - { - /// - /// Initializes a new instance of the SnapshotTakeHeaders class. - /// - public SnapshotTakeHeaders() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the SnapshotTakeHeaders class. - /// - /// Operation location with an - /// operation id used to track the progress of taking snapshot. The - /// returned id is the operation id, rather than snapshot id. Snapshot - /// id can be obtained only when the operation status becomes - /// "succeeded" in OperationStatus - Get. - public SnapshotTakeHeaders(string operationLocation = default(string)) - { - OperationLocation = operationLocation; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - /// - /// Gets or sets operation location with an operation id used to track - /// the progress of taking snapshot. The returned id is the operation - /// id, rather than snapshot id. Snapshot id can be obtained only when - /// the operation status becomes "succeeded" in OperationStatus - Get. - /// - [JsonProperty(PropertyName = "Operation-Location")] - public string OperationLocation { get; set; } - - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/TakeSnapshotRequest.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/TakeSnapshotRequest.cs deleted file mode 100644 index 728dbcc1d2d0..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/TakeSnapshotRequest.cs +++ /dev/null @@ -1,128 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Microsoft.Rest; - using Newtonsoft.Json; - using System.Collections; - using System.Collections.Generic; - using System.Linq; - - /// - /// Request body for taking snapshot operation. - /// - public partial class TakeSnapshotRequest - { - /// - /// Initializes a new instance of the TakeSnapshotRequest class. - /// - public TakeSnapshotRequest() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the TakeSnapshotRequest class. - /// - /// User specified type for the source object to - /// take snapshot from. Currently FaceList, PersonGroup, LargeFaceList - /// and LargePersonGroup are supported. Possible values include: - /// 'FaceList', 'LargeFaceList', 'LargePersonGroup', - /// 'PersonGroup' - /// User specified source object id to take - /// snapshot from. - /// User specified array of target Face - /// subscription ids for the snapshot. For each snapshot, only - /// subscriptions included in the applyScope of Snapshot - Take can - /// apply it. - /// User specified data about the snapshot for - /// any purpose. Length should not exceed 16KB. - public TakeSnapshotRequest(SnapshotObjectType type, string objectId, IList applyScope, string userData = default(string)) - { - Type = type; - ObjectId = objectId; - ApplyScope = applyScope; - UserData = userData; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - /// - /// Gets or sets user specified type for the source object to take - /// snapshot from. Currently FaceList, PersonGroup, LargeFaceList and - /// LargePersonGroup are supported. Possible values include: - /// 'FaceList', 'LargeFaceList', 'LargePersonGroup', 'PersonGroup' - /// - [JsonProperty(PropertyName = "type")] - public SnapshotObjectType Type { get; set; } - - /// - /// Gets or sets user specified source object id to take snapshot from. - /// - [JsonProperty(PropertyName = "objectId")] - public string ObjectId { get; set; } - - /// - /// Gets or sets user specified array of target Face subscription ids - /// for the snapshot. For each snapshot, only subscriptions included in - /// the applyScope of Snapshot - Take can apply it. - /// - [JsonProperty(PropertyName = "applyScope")] - public IList ApplyScope { get; set; } - - /// - /// Gets or sets user specified data about the snapshot for any - /// purpose. Length should not exceed 16KB. - /// - [JsonProperty(PropertyName = "userData")] - public string UserData { get; set; } - - /// - /// Validate the object. - /// - /// - /// Thrown if validation fails - /// - public virtual void Validate() - { - if (ObjectId == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "ObjectId"); - } - if (ApplyScope == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "ApplyScope"); - } - if (ObjectId != null) - { - if (ObjectId.Length > 64) - { - throw new ValidationException(ValidationRules.MaxLength, "ObjectId", 64); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(ObjectId, "^[a-z0-9-_]+$")) - { - throw new ValidationException(ValidationRules.Pattern, "ObjectId", "^[a-z0-9-_]+$"); - } - } - if (UserData != null) - { - if (UserData.Length > 16384) - { - throw new ValidationException(ValidationRules.MaxLength, "UserData", 16384); - } - } - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/UpdateSnapshotRequest.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/UpdateSnapshotRequest.cs deleted file mode 100644 index 3e7818b48cc8..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/Models/UpdateSnapshotRequest.cs +++ /dev/null @@ -1,87 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face.Models -{ - using Microsoft.Rest; - using Newtonsoft.Json; - using System.Collections; - using System.Collections.Generic; - using System.Linq; - - /// - /// Request body for updating a snapshot, with a combination of user - /// defined apply scope and user specified data. - /// - public partial class UpdateSnapshotRequest - { - /// - /// Initializes a new instance of the UpdateSnapshotRequest class. - /// - public UpdateSnapshotRequest() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the UpdateSnapshotRequest class. - /// - /// Array of the target Face subscription ids - /// for the snapshot, specified by the user who created the snapshot - /// when calling Snapshot - Take. For each snapshot, only subscriptions - /// included in the applyScope of Snapshot - Take can apply it. - /// User specified data about the snapshot for - /// any purpose. Length should not exceed 16KB. - public UpdateSnapshotRequest(IList applyScope = default(IList), string userData = default(string)) - { - ApplyScope = applyScope; - UserData = userData; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - /// - /// Gets or sets array of the target Face subscription ids for the - /// snapshot, specified by the user who created the snapshot when - /// calling Snapshot - Take. For each snapshot, only subscriptions - /// included in the applyScope of Snapshot - Take can apply it. - /// - [JsonProperty(PropertyName = "applyScope")] - public IList ApplyScope { get; set; } - - /// - /// Gets or sets user specified data about the snapshot for any - /// purpose. Length should not exceed 16KB. - /// - [JsonProperty(PropertyName = "userData")] - public string UserData { get; set; } - - /// - /// Validate the object. - /// - /// - /// Thrown if validation fails - /// - public virtual void Validate() - { - if (UserData != null) - { - if (UserData.Length > 16384) - { - throw new ValidationException(ValidationRules.MaxLength, "UserData", 16384); - } - } - } - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SdkInfo_FaceClient.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SdkInfo_FaceClient.cs index 4f9e538fbdf9..09ae3240997b 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SdkInfo_FaceClient.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SdkInfo_FaceClient.cs @@ -26,7 +26,6 @@ public static IEnumerable> ApiInfo_FaceClient new Tuple("FaceClient", "LargePersonGroupPerson", "1.0"), new Tuple("FaceClient", "PersonGroup", "1.0"), new Tuple("FaceClient", "PersonGroupPerson", "1.0"), - new Tuple("FaceClient", "Snapshot", "1.0"), }.AsEnumerable(); } } diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SnapshotOperations.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SnapshotOperations.cs deleted file mode 100644 index 034c3612c6c5..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SnapshotOperations.cs +++ /dev/null @@ -1,1252 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face -{ - using Microsoft.Rest; - using Models; - using Newtonsoft.Json; - using System.Collections; - using System.Collections.Generic; - using System.IO; - using System.Linq; - using System.Net; - using System.Net.Http; - using System.Threading; - using System.Threading.Tasks; - - /// - /// SnapshotOperations operations. - /// - public partial class SnapshotOperations : IServiceOperations, ISnapshotOperations - { - /// - /// Initializes a new instance of the SnapshotOperations class. - /// - /// - /// Reference to the service client. - /// - /// - /// Thrown when a required parameter is null - /// - public SnapshotOperations(FaceClient client) - { - if (client == null) - { - throw new System.ArgumentNullException("client"); - } - Client = client; - } - - /// - /// Gets a reference to the FaceClient - /// - public FaceClient Client { get; private set; } - - /// - /// Submit an operation to take a snapshot of face list, large face list, - /// person group or large person group, with user-specified snapshot type, - /// source object id, apply scope and an optional user data. - /// The snapshot interfaces are for users to backup and restore their face data - /// from one face subscription to another, inside same region or across - /// regions. The workflow contains two phases, user first calls Snapshot - Take - /// to create a copy of the source object and store it as a snapshot, then - /// calls Snapshot - Apply to paste the snapshot to target subscription. The - /// snapshots are stored in a centralized location (per Azure instance), so - /// that they can be applied cross accounts and regions. - /// Taking snapshot is an asynchronous operation. An operation id can be - /// obtained from the "Operation-Location" field in response header, to be used - /// in OperationStatus - Get for tracking the progress of creating the - /// snapshot. The snapshot id will be included in the "resourceLocation" field - /// in OperationStatus - Get response when the operation status is "succeeded". - /// Snapshot taking time depends on the number of person and face entries in - /// the source object. It could be in seconds, or up to several hours for - /// 1,000,000 persons with multiple faces. - /// Snapshots will be automatically expired and cleaned in 48 hours after it is - /// created by Snapshot - Take. User can delete the snapshot using Snapshot - - /// Delete by themselves any time before expiration. - /// Taking snapshot for a certain object will not block any other operations - /// against the object. All read-only operations (Get/List and - /// Identify/FindSimilar/Verify) can be conducted as usual. For all writable - /// operations, including Add/Update/Delete the source object or its - /// persons/faces and Train, they are not blocked but not recommended because - /// writable updates may not be reflected on the snapshot during its taking. - /// After snapshot taking is completed, all readable and writable operations - /// can work as normal. Snapshot will also include the training results of the - /// source object, which means target subscription the snapshot applied to does - /// not need re-train the target object before calling Identify/FindSimilar. - /// - /// - /// User specified type for the source object to take snapshot from. Currently - /// FaceList, PersonGroup, LargeFaceList and LargePersonGroup are supported. - /// Possible values include: 'FaceList', 'LargeFaceList', 'LargePersonGroup', - /// 'PersonGroup' - /// - /// - /// User specified source object id to take snapshot from. - /// - /// - /// User specified array of target Face subscription ids for the snapshot. For - /// each snapshot, only subscriptions included in the applyScope of Snapshot - - /// Take can apply it. - /// - /// - /// User specified data about the snapshot for any purpose. Length should not - /// exceed 16KB. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// A response object containing the response body and response headers. - /// - public async Task> TakeWithHttpMessagesAsync(SnapshotObjectType type, string objectId, IList applyScope, string userData = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) - { - if (Client.Endpoint == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.Endpoint"); - } - if (objectId == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "objectId"); - } - if (objectId != null) - { - if (objectId.Length > 64) - { - throw new ValidationException(ValidationRules.MaxLength, "objectId", 64); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(objectId, "^[a-z0-9-_]+$")) - { - throw new ValidationException(ValidationRules.Pattern, "objectId", "^[a-z0-9-_]+$"); - } - } - if (applyScope == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "applyScope"); - } - if (userData != null) - { - if (userData.Length > 16384) - { - throw new ValidationException(ValidationRules.MaxLength, "userData", 16384); - } - } - TakeSnapshotRequest body = new TakeSnapshotRequest(); - if (objectId != null || applyScope != null || userData != null) - { - body.Type = type; - body.ObjectId = objectId; - body.ApplyScope = applyScope; - body.UserData = userData; - } - // Tracing - bool _shouldTrace = ServiceClientTracing.IsEnabled; - string _invocationId = null; - if (_shouldTrace) - { - _invocationId = ServiceClientTracing.NextInvocationId.ToString(); - Dictionary tracingParameters = new Dictionary(); - tracingParameters.Add("body", body); - tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "Take", tracingParameters); - } - // Construct URL - var _baseUrl = Client.BaseUri; - var _url = _baseUrl + (_baseUrl.EndsWith("/") ? "" : "/") + "snapshots"; - _url = _url.Replace("{Endpoint}", Client.Endpoint); - // Create HTTP transport objects - var _httpRequest = new HttpRequestMessage(); - HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("POST"); - _httpRequest.RequestUri = new System.Uri(_url); - // Set Headers - - - if (customHeaders != null) - { - foreach(var _header in customHeaders) - { - if (_httpRequest.Headers.Contains(_header.Key)) - { - _httpRequest.Headers.Remove(_header.Key); - } - _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); - } - } - - // Serialize Request - string _requestContent = null; - if(body != null) - { - _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(body, Client.SerializationSettings); - _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } - // Set Credentials - if (Client.Credentials != null) - { - cancellationToken.ThrowIfCancellationRequested(); - await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - } - // Send Request - if (_shouldTrace) - { - ServiceClientTracing.SendRequest(_invocationId, _httpRequest); - } - cancellationToken.ThrowIfCancellationRequested(); - _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - if (_shouldTrace) - { - ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); - } - HttpStatusCode _statusCode = _httpResponse.StatusCode; - cancellationToken.ThrowIfCancellationRequested(); - string _responseContent = null; - if ((int)_statusCode != 202) - { - var ex = new APIErrorException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); - try - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - APIError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - if (_errorBody != null) - { - ex.Body = _errorBody; - } - } - catch (JsonException) - { - // Ignore the exception - } - ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); - ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_shouldTrace) - { - ServiceClientTracing.Error(_invocationId, ex); - } - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw ex; - } - // Create Result - var _result = new HttpOperationHeaderResponse(); - _result.Request = _httpRequest; - _result.Response = _httpResponse; - try - { - _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(JsonSerializer.Create(Client.DeserializationSettings)); - } - catch (JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); - } - if (_shouldTrace) - { - ServiceClientTracing.Exit(_invocationId, _result); - } - return _result; - } - - /// - /// List all accessible snapshots with related information, including snapshots - /// that were taken by the user, or snapshots to be applied to the user - /// (subscription id was included in the applyScope in Snapshot - Take). - /// - /// - /// User specified object type as a search filter. Possible values include: - /// 'FaceList', 'LargeFaceList', 'LargePersonGroup', 'PersonGroup' - /// - /// - /// User specified snapshot apply scopes as a search filter. ApplyScope is an - /// array of the target Azure subscription ids for the snapshot, specified by - /// the user who created the snapshot by Snapshot - Take. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// A response object containing the response body and response headers. - /// - public async Task>> ListWithHttpMessagesAsync(SnapshotObjectType? type = default(SnapshotObjectType?), IList applyScope = default(IList), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) - { - if (Client.Endpoint == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.Endpoint"); - } - // Tracing - bool _shouldTrace = ServiceClientTracing.IsEnabled; - string _invocationId = null; - if (_shouldTrace) - { - _invocationId = ServiceClientTracing.NextInvocationId.ToString(); - Dictionary tracingParameters = new Dictionary(); - tracingParameters.Add("type", type); - tracingParameters.Add("applyScope", applyScope); - tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); - } - // Construct URL - var _baseUrl = Client.BaseUri; - var _url = _baseUrl + (_baseUrl.EndsWith("/") ? "" : "/") + "snapshots"; - _url = _url.Replace("{Endpoint}", Client.Endpoint); - List _queryParameters = new List(); - if (type != null) - { - _queryParameters.Add(string.Format("type={0}", System.Uri.EscapeDataString(Rest.Serialization.SafeJsonConvert.SerializeObject(type, Client.SerializationSettings).Trim('"')))); - } - if (applyScope != null) - { - _queryParameters.Add(string.Format("applyScope={0}", System.Uri.EscapeDataString(string.Join(",", applyScope)))); - } - if (_queryParameters.Count > 0) - { - _url += "?" + string.Join("&", _queryParameters); - } - // Create HTTP transport objects - var _httpRequest = new HttpRequestMessage(); - HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("GET"); - _httpRequest.RequestUri = new System.Uri(_url); - // Set Headers - - - if (customHeaders != null) - { - foreach(var _header in customHeaders) - { - if (_httpRequest.Headers.Contains(_header.Key)) - { - _httpRequest.Headers.Remove(_header.Key); - } - _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); - } - } - - // Serialize Request - string _requestContent = null; - // Set Credentials - if (Client.Credentials != null) - { - cancellationToken.ThrowIfCancellationRequested(); - await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - } - // Send Request - if (_shouldTrace) - { - ServiceClientTracing.SendRequest(_invocationId, _httpRequest); - } - cancellationToken.ThrowIfCancellationRequested(); - _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - if (_shouldTrace) - { - ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); - } - HttpStatusCode _statusCode = _httpResponse.StatusCode; - cancellationToken.ThrowIfCancellationRequested(); - string _responseContent = null; - if ((int)_statusCode != 200) - { - var ex = new APIErrorException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); - try - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - APIError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - if (_errorBody != null) - { - ex.Body = _errorBody; - } - } - catch (JsonException) - { - // Ignore the exception - } - ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); - ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_shouldTrace) - { - ServiceClientTracing.Error(_invocationId, ex); - } - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw ex; - } - // Create Result - var _result = new HttpOperationResponse>(); - _result.Request = _httpRequest; - _result.Response = _httpResponse; - // Deserialize Response - if ((int)_statusCode == 200) - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, Client.DeserializationSettings); - } - catch (JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new SerializationException("Unable to deserialize the response.", _responseContent, ex); - } - } - if (_shouldTrace) - { - ServiceClientTracing.Exit(_invocationId, _result); - } - return _result; - } - - /// - /// Retrieve information about a snapshot. Snapshot is only accessible to the - /// source subscription who took it, and target subscriptions included in the - /// applyScope in Snapshot - Take. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// A response object containing the response body and response headers. - /// - public async Task> GetWithHttpMessagesAsync(System.Guid snapshotId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) - { - if (Client.Endpoint == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.Endpoint"); - } - // Tracing - bool _shouldTrace = ServiceClientTracing.IsEnabled; - string _invocationId = null; - if (_shouldTrace) - { - _invocationId = ServiceClientTracing.NextInvocationId.ToString(); - Dictionary tracingParameters = new Dictionary(); - tracingParameters.Add("snapshotId", snapshotId); - tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); - } - // Construct URL - var _baseUrl = Client.BaseUri; - var _url = _baseUrl + (_baseUrl.EndsWith("/") ? "" : "/") + "snapshots/{snapshotId}"; - _url = _url.Replace("{Endpoint}", Client.Endpoint); - _url = _url.Replace("{snapshotId}", System.Uri.EscapeDataString(Rest.Serialization.SafeJsonConvert.SerializeObject(snapshotId, Client.SerializationSettings).Trim('"'))); - // Create HTTP transport objects - var _httpRequest = new HttpRequestMessage(); - HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("GET"); - _httpRequest.RequestUri = new System.Uri(_url); - // Set Headers - - - if (customHeaders != null) - { - foreach(var _header in customHeaders) - { - if (_httpRequest.Headers.Contains(_header.Key)) - { - _httpRequest.Headers.Remove(_header.Key); - } - _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); - } - } - - // Serialize Request - string _requestContent = null; - // Set Credentials - if (Client.Credentials != null) - { - cancellationToken.ThrowIfCancellationRequested(); - await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - } - // Send Request - if (_shouldTrace) - { - ServiceClientTracing.SendRequest(_invocationId, _httpRequest); - } - cancellationToken.ThrowIfCancellationRequested(); - _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - if (_shouldTrace) - { - ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); - } - HttpStatusCode _statusCode = _httpResponse.StatusCode; - cancellationToken.ThrowIfCancellationRequested(); - string _responseContent = null; - if ((int)_statusCode != 200) - { - var ex = new APIErrorException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); - try - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - APIError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - if (_errorBody != null) - { - ex.Body = _errorBody; - } - } - catch (JsonException) - { - // Ignore the exception - } - ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); - ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_shouldTrace) - { - ServiceClientTracing.Error(_invocationId, ex); - } - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw ex; - } - // Create Result - var _result = new HttpOperationResponse(); - _result.Request = _httpRequest; - _result.Response = _httpResponse; - // Deserialize Response - if ((int)_statusCode == 200) - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - } - catch (JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new SerializationException("Unable to deserialize the response.", _responseContent, ex); - } - } - if (_shouldTrace) - { - ServiceClientTracing.Exit(_invocationId, _result); - } - return _result; - } - - /// - /// Update the information of a snapshot. Only the source subscription who took - /// the snapshot can update the snapshot. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// Array of the target Face subscription ids for the snapshot, specified by - /// the user who created the snapshot when calling Snapshot - Take. For each - /// snapshot, only subscriptions included in the applyScope of Snapshot - Take - /// can apply it. - /// - /// - /// User specified data about the snapshot for any purpose. Length should not - /// exceed 16KB. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// A response object containing the response body and response headers. - /// - public async Task UpdateWithHttpMessagesAsync(System.Guid snapshotId, IList applyScope = default(IList), string userData = default(string), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) - { - if (Client.Endpoint == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.Endpoint"); - } - if (userData != null) - { - if (userData.Length > 16384) - { - throw new ValidationException(ValidationRules.MaxLength, "userData", 16384); - } - } - UpdateSnapshotRequest body = new UpdateSnapshotRequest(); - if (applyScope != null || userData != null) - { - body.ApplyScope = applyScope; - body.UserData = userData; - } - // Tracing - bool _shouldTrace = ServiceClientTracing.IsEnabled; - string _invocationId = null; - if (_shouldTrace) - { - _invocationId = ServiceClientTracing.NextInvocationId.ToString(); - Dictionary tracingParameters = new Dictionary(); - tracingParameters.Add("snapshotId", snapshotId); - tracingParameters.Add("body", body); - tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); - } - // Construct URL - var _baseUrl = Client.BaseUri; - var _url = _baseUrl + (_baseUrl.EndsWith("/") ? "" : "/") + "snapshots/{snapshotId}"; - _url = _url.Replace("{Endpoint}", Client.Endpoint); - _url = _url.Replace("{snapshotId}", System.Uri.EscapeDataString(Rest.Serialization.SafeJsonConvert.SerializeObject(snapshotId, Client.SerializationSettings).Trim('"'))); - // Create HTTP transport objects - var _httpRequest = new HttpRequestMessage(); - HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("PATCH"); - _httpRequest.RequestUri = new System.Uri(_url); - // Set Headers - - - if (customHeaders != null) - { - foreach(var _header in customHeaders) - { - if (_httpRequest.Headers.Contains(_header.Key)) - { - _httpRequest.Headers.Remove(_header.Key); - } - _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); - } - } - - // Serialize Request - string _requestContent = null; - if(body != null) - { - _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(body, Client.SerializationSettings); - _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } - // Set Credentials - if (Client.Credentials != null) - { - cancellationToken.ThrowIfCancellationRequested(); - await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - } - // Send Request - if (_shouldTrace) - { - ServiceClientTracing.SendRequest(_invocationId, _httpRequest); - } - cancellationToken.ThrowIfCancellationRequested(); - _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - if (_shouldTrace) - { - ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); - } - HttpStatusCode _statusCode = _httpResponse.StatusCode; - cancellationToken.ThrowIfCancellationRequested(); - string _responseContent = null; - if ((int)_statusCode != 200) - { - var ex = new APIErrorException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); - try - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - APIError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - if (_errorBody != null) - { - ex.Body = _errorBody; - } - } - catch (JsonException) - { - // Ignore the exception - } - ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); - ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_shouldTrace) - { - ServiceClientTracing.Error(_invocationId, ex); - } - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw ex; - } - // Create Result - var _result = new HttpOperationResponse(); - _result.Request = _httpRequest; - _result.Response = _httpResponse; - if (_shouldTrace) - { - ServiceClientTracing.Exit(_invocationId, _result); - } - return _result; - } - - /// - /// Delete an existing snapshot according to the snapshotId. All object data - /// and information in the snapshot will also be deleted. Only the source - /// subscription who took the snapshot can delete the snapshot. If the user - /// does not delete a snapshot with this API, the snapshot will still be - /// automatically deleted in 48 hours after creation. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// A response object containing the response body and response headers. - /// - public async Task DeleteWithHttpMessagesAsync(System.Guid snapshotId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) - { - if (Client.Endpoint == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.Endpoint"); - } - // Tracing - bool _shouldTrace = ServiceClientTracing.IsEnabled; - string _invocationId = null; - if (_shouldTrace) - { - _invocationId = ServiceClientTracing.NextInvocationId.ToString(); - Dictionary tracingParameters = new Dictionary(); - tracingParameters.Add("snapshotId", snapshotId); - tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "Delete", tracingParameters); - } - // Construct URL - var _baseUrl = Client.BaseUri; - var _url = _baseUrl + (_baseUrl.EndsWith("/") ? "" : "/") + "snapshots/{snapshotId}"; - _url = _url.Replace("{Endpoint}", Client.Endpoint); - _url = _url.Replace("{snapshotId}", System.Uri.EscapeDataString(Rest.Serialization.SafeJsonConvert.SerializeObject(snapshotId, Client.SerializationSettings).Trim('"'))); - // Create HTTP transport objects - var _httpRequest = new HttpRequestMessage(); - HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("DELETE"); - _httpRequest.RequestUri = new System.Uri(_url); - // Set Headers - - - if (customHeaders != null) - { - foreach(var _header in customHeaders) - { - if (_httpRequest.Headers.Contains(_header.Key)) - { - _httpRequest.Headers.Remove(_header.Key); - } - _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); - } - } - - // Serialize Request - string _requestContent = null; - // Set Credentials - if (Client.Credentials != null) - { - cancellationToken.ThrowIfCancellationRequested(); - await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - } - // Send Request - if (_shouldTrace) - { - ServiceClientTracing.SendRequest(_invocationId, _httpRequest); - } - cancellationToken.ThrowIfCancellationRequested(); - _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - if (_shouldTrace) - { - ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); - } - HttpStatusCode _statusCode = _httpResponse.StatusCode; - cancellationToken.ThrowIfCancellationRequested(); - string _responseContent = null; - if ((int)_statusCode != 200) - { - var ex = new APIErrorException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); - try - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - APIError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - if (_errorBody != null) - { - ex.Body = _errorBody; - } - } - catch (JsonException) - { - // Ignore the exception - } - ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); - ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_shouldTrace) - { - ServiceClientTracing.Error(_invocationId, ex); - } - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw ex; - } - // Create Result - var _result = new HttpOperationResponse(); - _result.Request = _httpRequest; - _result.Response = _httpResponse; - if (_shouldTrace) - { - ServiceClientTracing.Exit(_invocationId, _result); - } - return _result; - } - - /// - /// Submit an operation to apply a snapshot to current subscription. For each - /// snapshot, only subscriptions included in the applyScope of Snapshot - Take - /// can apply it. - /// The snapshot interfaces are for users to backup and restore their face data - /// from one face subscription to another, inside same region or across - /// regions. The workflow contains two phases, user first calls Snapshot - Take - /// to create a copy of the source object and store it as a snapshot, then - /// calls Snapshot - Apply to paste the snapshot to target subscription. The - /// snapshots are stored in a centralized location (per Azure instance), so - /// that they can be applied cross accounts and regions. - /// Applying snapshot is an asynchronous operation. An operation id can be - /// obtained from the "Operation-Location" field in response header, to be used - /// in OperationStatus - Get for tracking the progress of applying the - /// snapshot. The target object id will be included in the "resourceLocation" - /// field in OperationStatus - Get response when the operation status is - /// "succeeded". - /// Snapshot applying time depends on the number of person and face entries in - /// the snapshot object. It could be in seconds, or up to 1 hour for 1,000,000 - /// persons with multiple faces. - /// Snapshots will be automatically expired and cleaned in 48 hours after it is - /// created by Snapshot - Take. So the target subscription is required to apply - /// the snapshot in 48 hours since its creation. - /// Applying a snapshot will not block any other operations against the target - /// object, however it is not recommended because the correctness cannot be - /// guaranteed during snapshot applying. After snapshot applying is completed, - /// all operations towards the target object can work as normal. Snapshot also - /// includes the training results of the source object, which means target - /// subscription the snapshot applied to does not need re-train the target - /// object before calling Identify/FindSimilar. - /// One snapshot can be applied multiple times in parallel, while currently - /// only CreateNew apply mode is supported, which means the apply operation - /// will fail if target subscription already contains an object of same type - /// and using the same objectId. Users can specify the "objectId" in request - /// body to avoid such conflicts. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// User specified target object id to be created from the snapshot. - /// - /// - /// Snapshot applying mode. Currently only CreateNew is supported, which means - /// the apply operation will fail if target subscription already contains an - /// object of same type and using the same objectId. Users can specify the - /// "objectId" in request body to avoid such conflicts. Possible values - /// include: 'CreateNew' - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// A response object containing the response body and response headers. - /// - public async Task> ApplyWithHttpMessagesAsync(System.Guid snapshotId, string objectId, SnapshotApplyMode mode = default(SnapshotApplyMode), Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) - { - if (Client.Endpoint == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.Endpoint"); - } - if (objectId == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "objectId"); - } - if (objectId != null) - { - if (objectId.Length > 64) - { - throw new ValidationException(ValidationRules.MaxLength, "objectId", 64); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(objectId, "^[a-z0-9-_]+$")) - { - throw new ValidationException(ValidationRules.Pattern, "objectId", "^[a-z0-9-_]+$"); - } - } - ApplySnapshotRequest body = new ApplySnapshotRequest(); - if (objectId != null) - { - body.ObjectId = objectId; - body.Mode = mode; - } - // Tracing - bool _shouldTrace = ServiceClientTracing.IsEnabled; - string _invocationId = null; - if (_shouldTrace) - { - _invocationId = ServiceClientTracing.NextInvocationId.ToString(); - Dictionary tracingParameters = new Dictionary(); - tracingParameters.Add("snapshotId", snapshotId); - tracingParameters.Add("body", body); - tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "Apply", tracingParameters); - } - // Construct URL - var _baseUrl = Client.BaseUri; - var _url = _baseUrl + (_baseUrl.EndsWith("/") ? "" : "/") + "snapshots/{snapshotId}/apply"; - _url = _url.Replace("{Endpoint}", Client.Endpoint); - _url = _url.Replace("{snapshotId}", System.Uri.EscapeDataString(Rest.Serialization.SafeJsonConvert.SerializeObject(snapshotId, Client.SerializationSettings).Trim('"'))); - // Create HTTP transport objects - var _httpRequest = new HttpRequestMessage(); - HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("POST"); - _httpRequest.RequestUri = new System.Uri(_url); - // Set Headers - - - if (customHeaders != null) - { - foreach(var _header in customHeaders) - { - if (_httpRequest.Headers.Contains(_header.Key)) - { - _httpRequest.Headers.Remove(_header.Key); - } - _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); - } - } - - // Serialize Request - string _requestContent = null; - if(body != null) - { - _requestContent = Rest.Serialization.SafeJsonConvert.SerializeObject(body, Client.SerializationSettings); - _httpRequest.Content = new StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } - // Set Credentials - if (Client.Credentials != null) - { - cancellationToken.ThrowIfCancellationRequested(); - await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - } - // Send Request - if (_shouldTrace) - { - ServiceClientTracing.SendRequest(_invocationId, _httpRequest); - } - cancellationToken.ThrowIfCancellationRequested(); - _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - if (_shouldTrace) - { - ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); - } - HttpStatusCode _statusCode = _httpResponse.StatusCode; - cancellationToken.ThrowIfCancellationRequested(); - string _responseContent = null; - if ((int)_statusCode != 202) - { - var ex = new APIErrorException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); - try - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - APIError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - if (_errorBody != null) - { - ex.Body = _errorBody; - } - } - catch (JsonException) - { - // Ignore the exception - } - ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); - ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_shouldTrace) - { - ServiceClientTracing.Error(_invocationId, ex); - } - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw ex; - } - // Create Result - var _result = new HttpOperationHeaderResponse(); - _result.Request = _httpRequest; - _result.Response = _httpResponse; - try - { - _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(JsonSerializer.Create(Client.DeserializationSettings)); - } - catch (JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); - } - if (_shouldTrace) - { - ServiceClientTracing.Exit(_invocationId, _result); - } - return _result; - } - - /// - /// Retrieve the status of a take/apply snapshot operation. - /// - /// - /// Id referencing a particular take/apply snapshot operation. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// Thrown when a required parameter is null - /// - /// - /// A response object containing the response body and response headers. - /// - public async Task> GetOperationStatusWithHttpMessagesAsync(System.Guid operationId, Dictionary> customHeaders = null, CancellationToken cancellationToken = default(CancellationToken)) - { - if (Client.Endpoint == null) - { - throw new ValidationException(ValidationRules.CannotBeNull, "this.Client.Endpoint"); - } - // Tracing - bool _shouldTrace = ServiceClientTracing.IsEnabled; - string _invocationId = null; - if (_shouldTrace) - { - _invocationId = ServiceClientTracing.NextInvocationId.ToString(); - Dictionary tracingParameters = new Dictionary(); - tracingParameters.Add("operationId", operationId); - tracingParameters.Add("cancellationToken", cancellationToken); - ServiceClientTracing.Enter(_invocationId, this, "GetOperationStatus", tracingParameters); - } - // Construct URL - var _baseUrl = Client.BaseUri; - var _url = _baseUrl + (_baseUrl.EndsWith("/") ? "" : "/") + "operations/{operationId}"; - _url = _url.Replace("{Endpoint}", Client.Endpoint); - _url = _url.Replace("{operationId}", System.Uri.EscapeDataString(Rest.Serialization.SafeJsonConvert.SerializeObject(operationId, Client.SerializationSettings).Trim('"'))); - // Create HTTP transport objects - var _httpRequest = new HttpRequestMessage(); - HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new HttpMethod("GET"); - _httpRequest.RequestUri = new System.Uri(_url); - // Set Headers - - - if (customHeaders != null) - { - foreach(var _header in customHeaders) - { - if (_httpRequest.Headers.Contains(_header.Key)) - { - _httpRequest.Headers.Remove(_header.Key); - } - _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); - } - } - - // Serialize Request - string _requestContent = null; - // Set Credentials - if (Client.Credentials != null) - { - cancellationToken.ThrowIfCancellationRequested(); - await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - } - // Send Request - if (_shouldTrace) - { - ServiceClientTracing.SendRequest(_invocationId, _httpRequest); - } - cancellationToken.ThrowIfCancellationRequested(); - _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); - if (_shouldTrace) - { - ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); - } - HttpStatusCode _statusCode = _httpResponse.StatusCode; - cancellationToken.ThrowIfCancellationRequested(); - string _responseContent = null; - if ((int)_statusCode != 200) - { - var ex = new APIErrorException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); - try - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - APIError _errorBody = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - if (_errorBody != null) - { - ex.Body = _errorBody; - } - } - catch (JsonException) - { - // Ignore the exception - } - ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent); - ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_shouldTrace) - { - ServiceClientTracing.Error(_invocationId, ex); - } - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw ex; - } - // Create Result - var _result = new HttpOperationResponse(); - _result.Request = _httpRequest; - _result.Response = _httpResponse; - // Deserialize Response - if ((int)_statusCode == 200) - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, Client.DeserializationSettings); - } - catch (JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new SerializationException("Unable to deserialize the response.", _responseContent, ex); - } - } - if (_shouldTrace) - { - ServiceClientTracing.Exit(_invocationId, _result); - } - return _result; - } - - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SnapshotOperationsExtensions.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SnapshotOperationsExtensions.cs deleted file mode 100644 index d73c1402871f..000000000000 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Generated/SnapshotOperationsExtensions.cs +++ /dev/null @@ -1,272 +0,0 @@ -// -// Copyright (c) Microsoft Corporation. All rights reserved. -// Licensed under the MIT License. See License.txt in the project root for -// license information. -// -// Code generated by Microsoft (R) AutoRest Code Generator. -// Changes may cause incorrect behavior and will be lost if the code is -// regenerated. -// - -namespace Microsoft.Azure.CognitiveServices.Vision.Face -{ - using Models; - using System.Collections; - using System.Collections.Generic; - using System.Threading; - using System.Threading.Tasks; - - /// - /// Extension methods for SnapshotOperations. - /// - public static partial class SnapshotOperationsExtensions - { - /// - /// Submit an operation to take a snapshot of face list, large face list, - /// person group or large person group, with user-specified snapshot type, - /// source object id, apply scope and an optional user data. - /// The snapshot interfaces are for users to backup and restore their face data - /// from one face subscription to another, inside same region or across - /// regions. The workflow contains two phases, user first calls Snapshot - Take - /// to create a copy of the source object and store it as a snapshot, then - /// calls Snapshot - Apply to paste the snapshot to target subscription. The - /// snapshots are stored in a centralized location (per Azure instance), so - /// that they can be applied cross accounts and regions. - /// Taking snapshot is an asynchronous operation. An operation id can be - /// obtained from the "Operation-Location" field in response header, to be used - /// in OperationStatus - Get for tracking the progress of creating the - /// snapshot. The snapshot id will be included in the "resourceLocation" field - /// in OperationStatus - Get response when the operation status is "succeeded". - /// Snapshot taking time depends on the number of person and face entries in - /// the source object. It could be in seconds, or up to several hours for - /// 1,000,000 persons with multiple faces. - /// Snapshots will be automatically expired and cleaned in 48 hours after it is - /// created by Snapshot - Take. User can delete the snapshot using Snapshot - - /// Delete by themselves any time before expiration. - /// Taking snapshot for a certain object will not block any other operations - /// against the object. All read-only operations (Get/List and - /// Identify/FindSimilar/Verify) can be conducted as usual. For all writable - /// operations, including Add/Update/Delete the source object or its - /// persons/faces and Train, they are not blocked but not recommended because - /// writable updates may not be reflected on the snapshot during its taking. - /// After snapshot taking is completed, all readable and writable operations - /// can work as normal. Snapshot will also include the training results of the - /// source object, which means target subscription the snapshot applied to does - /// not need re-train the target object before calling Identify/FindSimilar. - /// - /// - /// The operations group for this extension method. - /// - /// - /// User specified type for the source object to take snapshot from. Currently - /// FaceList, PersonGroup, LargeFaceList and LargePersonGroup are supported. - /// Possible values include: 'FaceList', 'LargeFaceList', 'LargePersonGroup', - /// 'PersonGroup' - /// - /// - /// User specified source object id to take snapshot from. - /// - /// - /// User specified array of target Face subscription ids for the snapshot. For - /// each snapshot, only subscriptions included in the applyScope of Snapshot - - /// Take can apply it. - /// - /// - /// User specified data about the snapshot for any purpose. Length should not - /// exceed 16KB. - /// - /// - /// The cancellation token. - /// - public static async Task TakeAsync(this ISnapshotOperations operations, SnapshotObjectType type, string objectId, IList applyScope, string userData = default(string), CancellationToken cancellationToken = default(CancellationToken)) - { - using (var _result = await operations.TakeWithHttpMessagesAsync(type, objectId, applyScope, userData, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Headers; - } - } - - /// - /// List all accessible snapshots with related information, including snapshots - /// that were taken by the user, or snapshots to be applied to the user - /// (subscription id was included in the applyScope in Snapshot - Take). - /// - /// - /// The operations group for this extension method. - /// - /// - /// User specified object type as a search filter. Possible values include: - /// 'FaceList', 'LargeFaceList', 'LargePersonGroup', 'PersonGroup' - /// - /// - /// User specified snapshot apply scopes as a search filter. ApplyScope is an - /// array of the target Azure subscription ids for the snapshot, specified by - /// the user who created the snapshot by Snapshot - Take. - /// - /// - /// The cancellation token. - /// - public static async Task> ListAsync(this ISnapshotOperations operations, SnapshotObjectType? type = default(SnapshotObjectType?), IList applyScope = default(IList), CancellationToken cancellationToken = default(CancellationToken)) - { - using (var _result = await operations.ListWithHttpMessagesAsync(type, applyScope, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } - } - - /// - /// Retrieve information about a snapshot. Snapshot is only accessible to the - /// source subscription who took it, and target subscriptions included in the - /// applyScope in Snapshot - Take. - /// - /// - /// The operations group for this extension method. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// The cancellation token. - /// - public static async Task GetAsync(this ISnapshotOperations operations, System.Guid snapshotId, CancellationToken cancellationToken = default(CancellationToken)) - { - using (var _result = await operations.GetWithHttpMessagesAsync(snapshotId, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } - } - - /// - /// Update the information of a snapshot. Only the source subscription who took - /// the snapshot can update the snapshot. - /// - /// - /// The operations group for this extension method. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// Array of the target Face subscription ids for the snapshot, specified by - /// the user who created the snapshot when calling Snapshot - Take. For each - /// snapshot, only subscriptions included in the applyScope of Snapshot - Take - /// can apply it. - /// - /// - /// User specified data about the snapshot for any purpose. Length should not - /// exceed 16KB. - /// - /// - /// The cancellation token. - /// - public static async Task UpdateAsync(this ISnapshotOperations operations, System.Guid snapshotId, IList applyScope = default(IList), string userData = default(string), CancellationToken cancellationToken = default(CancellationToken)) - { - (await operations.UpdateWithHttpMessagesAsync(snapshotId, applyScope, userData, null, cancellationToken).ConfigureAwait(false)).Dispose(); - } - - /// - /// Delete an existing snapshot according to the snapshotId. All object data - /// and information in the snapshot will also be deleted. Only the source - /// subscription who took the snapshot can delete the snapshot. If the user - /// does not delete a snapshot with this API, the snapshot will still be - /// automatically deleted in 48 hours after creation. - /// - /// - /// The operations group for this extension method. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// The cancellation token. - /// - public static async Task DeleteAsync(this ISnapshotOperations operations, System.Guid snapshotId, CancellationToken cancellationToken = default(CancellationToken)) - { - (await operations.DeleteWithHttpMessagesAsync(snapshotId, null, cancellationToken).ConfigureAwait(false)).Dispose(); - } - - /// - /// Submit an operation to apply a snapshot to current subscription. For each - /// snapshot, only subscriptions included in the applyScope of Snapshot - Take - /// can apply it. - /// The snapshot interfaces are for users to backup and restore their face data - /// from one face subscription to another, inside same region or across - /// regions. The workflow contains two phases, user first calls Snapshot - Take - /// to create a copy of the source object and store it as a snapshot, then - /// calls Snapshot - Apply to paste the snapshot to target subscription. The - /// snapshots are stored in a centralized location (per Azure instance), so - /// that they can be applied cross accounts and regions. - /// Applying snapshot is an asynchronous operation. An operation id can be - /// obtained from the "Operation-Location" field in response header, to be used - /// in OperationStatus - Get for tracking the progress of applying the - /// snapshot. The target object id will be included in the "resourceLocation" - /// field in OperationStatus - Get response when the operation status is - /// "succeeded". - /// Snapshot applying time depends on the number of person and face entries in - /// the snapshot object. It could be in seconds, or up to 1 hour for 1,000,000 - /// persons with multiple faces. - /// Snapshots will be automatically expired and cleaned in 48 hours after it is - /// created by Snapshot - Take. So the target subscription is required to apply - /// the snapshot in 48 hours since its creation. - /// Applying a snapshot will not block any other operations against the target - /// object, however it is not recommended because the correctness cannot be - /// guaranteed during snapshot applying. After snapshot applying is completed, - /// all operations towards the target object can work as normal. Snapshot also - /// includes the training results of the source object, which means target - /// subscription the snapshot applied to does not need re-train the target - /// object before calling Identify/FindSimilar. - /// One snapshot can be applied multiple times in parallel, while currently - /// only CreateNew apply mode is supported, which means the apply operation - /// will fail if target subscription already contains an object of same type - /// and using the same objectId. Users can specify the "objectId" in request - /// body to avoid such conflicts. - /// - /// - /// The operations group for this extension method. - /// - /// - /// Id referencing a particular snapshot. - /// - /// - /// User specified target object id to be created from the snapshot. - /// - /// - /// Snapshot applying mode. Currently only CreateNew is supported, which means - /// the apply operation will fail if target subscription already contains an - /// object of same type and using the same objectId. Users can specify the - /// "objectId" in request body to avoid such conflicts. Possible values - /// include: 'CreateNew' - /// - /// - /// The cancellation token. - /// - public static async Task ApplyAsync(this ISnapshotOperations operations, System.Guid snapshotId, string objectId, SnapshotApplyMode mode = default(SnapshotApplyMode), CancellationToken cancellationToken = default(CancellationToken)) - { - using (var _result = await operations.ApplyWithHttpMessagesAsync(snapshotId, objectId, mode, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Headers; - } - } - - /// - /// Retrieve the status of a take/apply snapshot operation. - /// - /// - /// The operations group for this extension method. - /// - /// - /// Id referencing a particular take/apply snapshot operation. - /// - /// - /// The cancellation token. - /// - public static async Task GetOperationStatusAsync(this ISnapshotOperations operations, System.Guid operationId, CancellationToken cancellationToken = default(CancellationToken)) - { - using (var _result = await operations.GetOperationStatusWithHttpMessagesAsync(operationId, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } - } - - } -} diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Microsoft.Azure.CognitiveServices.Vision.Face.csproj b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Microsoft.Azure.CognitiveServices.Vision.Face.csproj index adc216eff957..a57009c2e90b 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Microsoft.Azure.CognitiveServices.Vision.Face.csproj +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Microsoft.Azure.CognitiveServices.Vision.Face.csproj @@ -6,7 +6,7 @@ Microsoft.Azure.CognitiveServices.Vision.Face This client library provides access to the Microsoft Cognitive Services Face APIs. - 2.3.0-preview + 2.2.0-preview Microsoft.Azure.CognitiveServices.Vision.Face Microsoft Cognitive Services;Cognitive Services;Cognitive Services SDK;REST HTTP client;Face;Face API;Face SDK;Vision;netcore451511 @@ -15,7 +15,6 @@ 2) Supported customizing service endpoints by assigning the endpoint string to FaceClient.Endpoint. The endpoint string can be found on Azure Portal, it should contain only protocol and hostname, for example: https://westus.api.cognitive.microsoft.com. This change ensures better global coverage. 3) Aligned with latest Face API, Million-Scale features (LargePersonGroup and LargeFaceList) were added. 4) Some inconsistencies in naming, parameter order were corrected. - 5) Aligned with latest Face API, Snapshot features for data migration were added. ]]> diff --git a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Properties/AssemblyInfo.cs b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Properties/AssemblyInfo.cs index cc2958d08586..f240961e768e 100644 --- a/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Properties/AssemblyInfo.cs +++ b/src/SDKs/CognitiveServices/dataPlane/Vision/Face/Face/Properties/AssemblyInfo.cs @@ -8,7 +8,7 @@ [assembly: AssemblyDescription("Provides access to the Microsoft Cognitive Services Face APIs.")] [assembly: AssemblyVersion("2.0.0.0")] -[assembly: AssemblyFileVersion("2.3.0.0")] +[assembly: AssemblyFileVersion("2.2.0.0")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Microsoft")] [assembly: AssemblyProduct("Microsoft Azure .NET SDK")] diff --git a/src/SDKs/_metadata/cognitiveservices_data-plane_Face.txt b/src/SDKs/_metadata/cognitiveservices_data-plane_Face.txt index 51ab297d176d..1afaa9cd8dfb 100644 --- a/src/SDKs/_metadata/cognitiveservices_data-plane_Face.txt +++ b/src/SDKs/_metadata/cognitiveservices_data-plane_Face.txt @@ -4,11 +4,11 @@ Commencing code generation Generating CSharp code Executing AutoRest command cmd.exe /c autorest.cmd https://github.com/Azure/azure-rest-api-specs/blob/master/specification/cognitiveservices/data-plane/Face/readme.md --csharp --version=latest --reflect-api-versions --csharp-sdks-folder=D:\FaceTeam\AutoRest\forks\azure-sdk-for-net\src\SDKs -2019-01-23 02:59:18 UTC +2018-08-03 02:36:07 UTC 1) azure-rest-api-specs repository information GitHub fork: Azure Branch: master -Commit: 6723860edf22110a0f620c8dc090255e818503c1 +Commit: f9e6a10aabe3278244edb0760fbb97ab4a1d96b7 2) AutoRest information Requested version: latest