Esempio n. 1
0
        /// <summary>
        /// Gets the details of a specific video.
        /// </summary>
        public override async Task <GetVideoResponse> GetVideo(GetVideoRequest request, ServerCallContext context)
        {
            PreparedStatement preparedStatement = await _statementCache.GetOrAddAsync("SELECT * FROM videos WHERE videoid = ?");

            RowSet rows = await _session.ExecuteAsync(preparedStatement.Bind(request.VideoId.ToGuid())).ConfigureAwait(false);

            Row row = rows.SingleOrDefault();

            if (row == null)
            {
                var status = new Status(StatusCode.NotFound, $"Video with id {request.VideoId.Value} was not found");
                throw new RpcException(status);
            }

            var response = new GetVideoResponse
            {
                VideoId      = row.GetValue <Guid>("videoid").ToUuid(),
                UserId       = row.GetValue <Guid>("userid").ToUuid(),
                Name         = row.GetValue <string>("name"),
                Description  = row.GetValue <string>("description"),
                Location     = row.GetValue <string>("location"),
                LocationType = (VideoLocationType)row.GetValue <int>("location_type"),
                AddedDate    = row.GetValue <DateTimeOffset>("added_date").ToTimestamp()
            };

            var tags = row.GetValue <IEnumerable <string> >("tags");

            if (tags != null)
            {
                response.Tags.Add(tags);
            }

            return(response);
        }
        public async stt::Task GetVideoRequestObjectAsync()
        {
            moq::Mock <VideoService.VideoServiceClient> mockGrpcClient = new moq::Mock <VideoService.VideoServiceClient>(moq::MockBehavior.Strict);
            GetVideoRequest request = new GetVideoRequest
            {
                ResourceNameAsVideoName = gagvr::VideoName.FromCustomerVideo("[CUSTOMER]", "[VIDEO]"),
            };
            gagvr::Video expectedResponse = new gagvr::Video
            {
                ResourceNameAsVideoName = gagvr::VideoName.FromCustomerVideo("[CUSTOMER]", "[VIDEO]"),
                Id             = "id74b70bb8",
                ChannelId      = "channel_id856ceb72",
                DurationMillis = 4964327688054496886L,
                Title          = "title17dbd3d5",
            };

            mockGrpcClient.Setup(x => x.GetVideoAsync(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(new grpccore::AsyncUnaryCall <gagvr::Video>(stt::Task.FromResult(expectedResponse), null, null, null, null));
            VideoServiceClient client = new VideoServiceClientImpl(mockGrpcClient.Object, null);
            gagvr::Video       responseCallSettings = await client.GetVideoAsync(request, gaxgrpc::CallSettings.FromCancellationToken(st::CancellationToken.None));

            Assert.AreEqual(expectedResponse, responseCallSettings);
            gagvr::Video responseCancellationToken = await client.GetVideoAsync(request, st::CancellationToken.None);

            Assert.AreEqual(expectedResponse, responseCancellationToken);
            mockGrpcClient.VerifyAll();
        }
        public void TestGetVideoValidVideoId()
        {
            var validVideoId = "B6BC3145D0D61BC932AACDA4FBB08FB4";
            var request      = new GetVideoRequest
            {
                Id = validVideoId
            };
            var response = _mockMediaStorageService.GetVideo(request).Result;

            Assert.NotNull(response);
        }
        public void TestGetVideoInvalidVideoId()
        {
            var validVideoId = "5";
            var request      = new GetVideoRequest
            {
                Id = validVideoId
            };
            var response = _mockMediaStorageService.GetVideo(request).Result;

            Assert.Null(response);
        }
Esempio n. 5
0
        public async Task <VideoResponse> GetVideoAsync(GetVideoRequest request)
        {
            if (request?.Id == null)
            {
                throw new ArgumentNullException();
            }

            Video entity = await _videoRepository.GetAsync(request.Id);

            return(_mapper.Map <VideoResponse>(entity));
        }
Esempio n. 6
0
 /// <summary>Snippet for GetVideo</summary>
 /// <remarks>
 /// This snippet has been automatically generated for illustrative purposes only.
 /// It may require modifications to work in your environment.
 /// </remarks>
 public void GetVideoRequestObject()
 {
     // Create client
     VideoServiceClient videoServiceClient = VideoServiceClient.Create();
     // Initialize request argument(s)
     GetVideoRequest request = new GetVideoRequest
     {
         ResourceNameAsVideoName = VideoName.FromCustomerVideo("[CUSTOMER_ID]", "[VIDEO_ID]"),
     };
     // Make the request
     Video response = videoServiceClient.GetVideo(request);
 }
        /// <summary>Snippet for GetVideoAsync</summary>
        /// <remarks>
        /// This snippet has been automatically generated for illustrative purposes only.
        /// It may require modifications to work in your environment.
        /// </remarks>
        public async Task GetVideoRequestObjectAsync()
        {
            // Create client
            VideoServiceClient videoServiceClient = await VideoServiceClient.CreateAsync();

            // Initialize request argument(s)
            GetVideoRequest request = new GetVideoRequest
            {
                ResourceNameAsVideoName = VideoName.FromCustomerVideo("[CUSTOMER]", "[VIDEO]"),
            };
            // Make the request
            Video response = await videoServiceClient.GetVideoAsync(request);
        }
Esempio n. 8
0
        public override IActionResult GetVideo(GetVideoRequest getVideoRequest)
        {
            var response = _mediaStorageService.GetVideo(getVideoRequest).Result;

            if (response != null)
            {
                return(StatusCode(200, response));
            }
            var fail = new EmptyObject
            {
                Success = false,
                Message = "No video exists associated with video id: " + getVideoRequest.Id
            };

            return(StatusCode(400, fail));
        }
        /// <summary>Snippet for GetVideoAsync</summary>
        public async Task GetVideoRequestObjectAsync()
        {
            // Snippet: GetVideoAsync(GetVideoRequest, CallSettings)
            // Additional: GetVideoAsync(GetVideoRequest, CancellationToken)
            // Create client
            VideoServiceClient videoServiceClient = await VideoServiceClient.CreateAsync();

            // Initialize request argument(s)
            GetVideoRequest request = new GetVideoRequest
            {
                ResourceNameAsVideoName = VideoName.FromCustomerVideo("[CUSTOMER_ID]", "[VIDEO_ID]"),
            };
            // Make the request
            Video response = await videoServiceClient.GetVideoAsync(request);

            // End snippet
        }
Esempio n. 10
0
        /// <summary>
        /// Read video common info.
        /// </summary>
        /// <param name="request">Request. <see cref="GetVideoRequest" /></param>
        /// <returns><see cref="VideoResponse"/></returns>
        public VideoResponse GetVideo(GetVideoRequest request)
        {
            // verify the required parameter 'fileName' is set
            if (request.FileName == null)
            {
                throw new ApiException(400, "Missing required parameter 'fileName' when calling GetVideo");
            }

            // create path and map variables
            var resourcePath = "/video/{fileName}?appSid={appSid}&amp;folder=[folder]&amp;storage=[storage]";

            resourcePath = Regex
                           .Replace(resourcePath, "\\*", string.Empty)
                           .Replace("&amp;", "&")
                           .Replace("/?", "?");
            resourcePath = this.AddPathParameter(resourcePath, "fileName", request.FileName);
            resourcePath = this.AddQueryParameter(resourcePath, "folder", request.Folder);
            resourcePath = this.AddQueryParameter(resourcePath, "storage", request.Storage);

            try
            {
                var response = this.apiInvoker.InvokeApi(
                    resourcePath,
                    "GET",
                    null,
                    null,
                    null);
                if (response != null)
                {
                    return((VideoResponse)SerializationHelper.Deserialize(response, typeof(VideoResponse)));
                }

                return(null);
            }
            catch (ApiException ex)
            {
                if (ex.ErrorCode == 404)
                {
                    return(null);
                }

                throw;
            }
        }
        public void GetVideo2()
        {
            Mock <VideoService.VideoServiceClient> mockGrpcClient = new Mock <VideoService.VideoServiceClient>(MockBehavior.Strict);
            GetVideoRequest request = new GetVideoRequest
            {
                ResourceName = new VideoName("[CUSTOMER]", "[VIDEO]").ToString(),
            };
            Video expectedResponse = new Video
            {
                ResourceName = "resourceName2625949903",
            };

            mockGrpcClient.Setup(x => x.GetVideo(request, It.IsAny <CallOptions>()))
            .Returns(expectedResponse);
            VideoServiceClient client = new VideoServiceClientImpl(mockGrpcClient.Object, null);
            Video response            = client.GetVideo(request);

            Assert.AreEqual(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
        public async Task GetVideoAsync2()
        {
            Mock <VideoService.VideoServiceClient> mockGrpcClient = new Mock <VideoService.VideoServiceClient>(MockBehavior.Strict);
            GetVideoRequest request = new GetVideoRequest
            {
                ResourceName = new VideoName("[CUSTOMER]", "[VIDEO]").ToString(),
            };
            Video expectedResponse = new Video
            {
                ResourceName = "resourceName2625949903",
            };

            mockGrpcClient.Setup(x => x.GetVideoAsync(request, It.IsAny <CallOptions>()))
            .Returns(new Grpc.Core.AsyncUnaryCall <Video>(Task.FromResult(expectedResponse), null, null, null, null));
            VideoServiceClient client = new VideoServiceClientImpl(mockGrpcClient.Object, null);
            Video response            = await client.GetVideoAsync(request);

            Assert.AreEqual(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
        public async Task <GetVideoResponse> GetVideo(GetVideoRequest request)
        {
            var videoId = request.Id + ".mp4";
            var file    = _storageManager.GetFile(videoId, _containerName).Result;

            if (file != null)
            {
                var videoFile = new byte[file.Properties.Length];
                for (int k = 0; k < file.Properties.Length; k++)
                {
                    videoFile[k] = 0x20;
                }
                await file.DownloadToByteArrayAsync(videoFile, 0);

                GetVideoResponse response = new GetVideoResponse {
                    File = videoFile
                };
                return(response);
            }
            //else cloudBlockBlob does not exist
            return(null);
        }
        public void GetVideo()
        {
            moq::Mock <VideoService.VideoServiceClient> mockGrpcClient = new moq::Mock <VideoService.VideoServiceClient>(moq::MockBehavior.Strict);
            GetVideoRequest request = new GetVideoRequest
            {
                ResourceNameAsVideoName = gagvr::VideoName.FromCustomerVideo("[CUSTOMER]", "[VIDEO]"),
            };
            gagvr::Video expectedResponse = new gagvr::Video
            {
                ResourceNameAsVideoName = gagvr::VideoName.FromCustomerVideo("[CUSTOMER]", "[VIDEO]"),
                Id             = "id74b70bb8",
                ChannelId      = "channel_id856ceb72",
                DurationMillis = 4964327688054496886L,
                Title          = "title17dbd3d5",
            };

            mockGrpcClient.Setup(x => x.GetVideo(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse);
            VideoServiceClient client   = new VideoServiceClientImpl(mockGrpcClient.Object, null);
            gagvr::Video       response = client.GetVideo(request.ResourceName);

            Assert.AreEqual(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
Esempio n. 15
0
 public abstract IActionResult GetVideo([FromBody] GetVideoRequest getVideoRequest);