public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems)
        {
            AmazonSchemasConfig config = new AmazonSchemasConfig();

            config.RegionEndpoint = region;
            ConfigureClient(config);
            AmazonSchemasClient client = new AmazonSchemasClient(creds, config);

            ListDiscoverersResponse resp = new ListDiscoverersResponse();

            do
            {
                ListDiscoverersRequest req = new ListDiscoverersRequest
                {
                    NextToken = resp.NextToken
                    ,
                    Limit = maxItems
                };

                resp = client.ListDiscoverers(req);
                CheckError(resp.HttpStatusCode, "200");

                foreach (var obj in resp.Discoverers)
                {
                    AddObject(obj);
                }
            }while (!string.IsNullOrEmpty(resp.NextToken));
        }
        private async Task PopulateSchemasList(string filter)
        {
            var client  = new AmazonSchemasClient();
            var request = new ListSchemasRequest {
                RegistryName = "aws.events", SchemaNamePrefix = filter
            };

            var response = await client.ListSchemasAsync(request);

            SchemaNames.AddRange(response.Schemas.Select(x => new SelectListItem {
                Value = x.SchemaName, Text = x.SchemaName
            }));
        }
Beispiel #3
0
        protected IAmazonSchemas CreateClient(AWSCredentials credentials, RegionEndpoint region)
        {
            var config = new AmazonSchemasConfig {
                RegionEndpoint = region
            };

            Amazon.PowerShell.Utils.Common.PopulateConfig(this, config);
            this.CustomizeClientConfig(config);
            var client = new AmazonSchemasClient(credentials, config);

            client.BeforeRequestEvent += RequestEventHandler;
            client.AfterResponseEvent += ResponseEventHandler;
            return(client);
        }
        public async Task <IActionResult> OnPostGenerateCode(string SchemaSelect)
        {
            var client  = new AmazonSchemasClient();
            var request = new DescribeSchemaRequest
            {
                RegistryName = "aws.events",
                SchemaName   = SchemaSelect
            };

            var response = await client.DescribeSchemaAsync(request);

            var    schema    = response.Content;
            var    generator = new Generator();
            string schemaName;
            var    zipBytes = generator.GenerateCodeFiles(schema, out schemaName);

            return(new FileContentResult(zipBytes, "application/zip")
            {
                FileDownloadName = schemaName + ".zip"
            });
        }