/// <summary> /// Unmarshaller the response from the service to the response class. /// </summary> /// <param name="context"></param> /// <returns></returns> public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context) { CreateStreamResponse response = new CreateStreamResponse(); return(response); }
public static string CreateVideoStream(string streamName) { string streamArn = ""; try { List <StreamInfo> streamlList = GetVideoStreamList(); if (streamlList != null) { if (streamlList.FindAll(videoStream => videoStream.StreamName == streamName).Count > 0) { streamArn = "contain"; } else { AmazonKinesisVideoClient kinesisVideoClient; using (kinesisVideoClient = new AmazonKinesisVideoClient(Models.MyAWSConfigs.KinesisRegion)) { CreateStreamRequest createStreamRequest = new CreateStreamRequest() { StreamName = streamName, DataRetentionInHours = 1, MediaType = "video/h264", }; CreateStreamResponse createStreamResponse = kinesisVideoClient.CreateStream(createStreamRequest); if (createStreamResponse.HttpStatusCode == System.Net.HttpStatusCode.OK) { streamArn = createStreamResponse.StreamARN; } else { Console.WriteLine("Error creating kinesis video stream"); } } } } } catch (AmazonKinesisVideoException e) { Console.WriteLine("AmazonKinesisVideoException: " + e); } catch (Exception e) { Console.WriteLine("Error: " + e); } return(streamArn); }
private static async Task <Stream> CreateStream(StreamAdminClient client, string compartmentId, string streamName, int partitions) { logger.Info($"Creating stream {streamName} with {partitions} partitions"); CreateStreamDetails createStreamDetails = new CreateStreamDetails { CompartmentId = compartmentId, Name = streamName, Partitions = partitions }; CreateStreamRequest createStreamRequest = new CreateStreamRequest { CreateStreamDetails = createStreamDetails }; CreateStreamResponse createStreamResponse = await client.CreateStream(createStreamRequest); return(createStreamResponse.Stream); }
/// <summary> /// Unmarshaller the response from the service to the response class. /// </summary> /// <param name="context"></param> /// <returns></returns> public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context) { CreateStreamResponse response = new CreateStreamResponse(); context.Read(); int targetDepth = context.CurrentDepth; while (context.ReadAtDepth(targetDepth)) { if (context.TestExpression("StreamARN", targetDepth)) { var unmarshaller = StringUnmarshaller.Instance; response.StreamARN = unmarshaller.Unmarshall(context); continue; } } return(response); }
static CreateStreamResponse CreateStream(IAmazonKinesis kinesisClient, string streamName, int shardCount) { var request = new CreateStreamRequest { StreamName = streamName, ShardCount = shardCount }; try { CreateStreamResponse response = kinesisClient.CreateStream(request); return(response); } catch (AmazonServiceException e) { var error = string.Format("Failed to create stream '{0}'. Reason: {1}", streamName, e.Message); SelfLog.WriteLine(error); return(null); } }
public async Task TestCreate() { // ARRANGE AWSConfigs.AWSProfilesLocation = $"{Environment.GetEnvironmentVariable("UserProfile")}\\.aws\\credentials"; string StreamName = "test-stream"; string PresignedUrlBucket = "pre-sign-url-bucket"; string AccountNumber = "123456789012"; string Region = "us-east-1"; IAmazonS3 S3Client = new AmazonS3Client(); GetPreSignedUrlRequest Req = new GetPreSignedUrlRequest() { BucketName = PresignedUrlBucket, Key = "result.txt", Expires = DateTime.Now.AddMinutes(2), Protocol = Protocol.HTTPS, Verb = HttpVerb.PUT }; string PreSignedUrl = S3Client.GetPreSignedURL(Req); string Json = $@" {{ ""requestType"":""create"", ""responseUrl"":""{PreSignedUrl}"", ""stackId"":""arn:aws:cloudformation:{Region}:{AccountNumber}:stack/stack-name/{Guid.NewGuid().ToString()}"", ""requestId"":""12345678"", ""resourceType"":""Custom::KinesisStreamAwaiter"", ""logicalResourceId"":""KinesisStreamAwaiter"", ""resourceProperties"":{{ ""StreamName"":""{StreamName}"" }} }}"; CustomResourceRequest Request = JsonConvert.DeserializeObject <CustomResourceRequest>(Json); TestLambdaLogger TestLogger = new TestLambdaLogger(); TestClientContext ClientContext = new TestClientContext(); TestLambdaContext Context = new TestLambdaContext() { FunctionName = "KinesisStreamAwaiter", FunctionVersion = "1", Logger = TestLogger, ClientContext = ClientContext, LogGroupName = "aws/lambda/KinesisStreamAwaiter", LogStreamName = Guid.NewGuid().ToString(), RemainingTime = TimeSpan.FromSeconds(300) }; Entrypoint Entrypoint = new Entrypoint(); // ACT IAmazonKinesis KinesisClient = new AmazonKinesisClient(); CreateStreamRequest CreateReq = new CreateStreamRequest() { ShardCount = 1, StreamName = StreamName }; CreateStreamResponse CreateResponse = await KinesisClient.CreateStreamAsync(CreateReq); try { CustomResourceResult Response = await Entrypoint.ExecuteAsync(Request, Context); // ASSERT Assert.True(Response.IsSuccess); } finally { DeleteStreamRequest DeleteReq = new DeleteStreamRequest() { StreamName = StreamName }; await KinesisClient.DeleteStreamAsync(DeleteReq); } }
public static string CreateDataStream(string streamName) { string streamArn = ""; try { List <string> streamlList = GetDataStreamList(); if (streamlList != null) { if (streamlList.FindAll(dataStreamName => dataStreamName == streamName).Count > 0) { streamArn = "contain"; } else { AmazonKinesisClient kinesisClient; using (kinesisClient = new AmazonKinesisClient(Models.MyAWSConfigs.KinesisRegion)) { CreateStreamRequest createStreamRequest = new CreateStreamRequest() { StreamName = streamName, ShardCount = 1, }; CreateStreamResponse createStreamResponse = kinesisClient.CreateStream(createStreamRequest); if (createStreamResponse.HttpStatusCode == System.Net.HttpStatusCode.OK) { StreamDescriptionSummary streamSummary = DescribeDataStream(streamName); if (streamSummary != null) { streamArn = streamSummary.StreamARN; while (streamSummary.StreamStatus != StreamStatus.ACTIVE || streamSummary.StreamStatus == StreamStatus.CREATING) { Thread.Sleep(1 * 1000); streamSummary = DescribeDataStream(streamName); if (streamSummary == null) { streamArn = ""; break; } } } } else { Console.WriteLine("Error creating kinesis data stream"); } } } } } catch (AmazonKinesisException e) { Console.WriteLine("AmazonKinesisException: " + e); } catch (Exception e) { Console.WriteLine("Error: " + e); } return(streamArn); }