/// <summary> /// Unmarshaller the response from the service to the response class. /// </summary> /// <param name="context"></param> /// <returns></returns> public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context) { ListVaultsResponse response = new ListVaultsResponse(); context.Read(); int targetDepth = context.CurrentDepth; while (context.ReadAtDepth(targetDepth)) { if (context.TestExpression("Marker", targetDepth)) { var unmarshaller = StringUnmarshaller.Instance; response.Marker = unmarshaller.Unmarshall(context); continue; } if (context.TestExpression("VaultList", targetDepth)) { var unmarshaller = new ListUnmarshaller <DescribeVaultOutput, DescribeVaultOutputUnmarshaller>(DescribeVaultOutputUnmarshaller.Instance); response.VaultList = unmarshaller.Unmarshall(context); continue; } } return(response); }
public void GetVaultsList() { string lastMarker = null; var settings = SettingsManager.GetSettings(); DescribeVaultRequest describeVaultRequest = new DescribeVaultRequest() { VaultName = settings.AWSGlacierVault }; var client = new AmazonGlacierClient( settings.AWSAccessKeyID, settings.AWSSecretAccessKey, RegionEndpoint.GetBySystemName(settings.AWSS3Region.SystemName)); do { ListVaultsRequest request = new ListVaultsRequest() { Marker = lastMarker }; ListVaultsResponse response = client.ListVaults(request); foreach (DescribeVaultOutput output in response.VaultList) { Debug.WriteLine("Vault Name: {0} \tCreation Date: {1} \t #of archives: {2}", output.VaultName, output.CreationDate, output.NumberOfArchives); } lastMarker = response.Marker; } while (lastMarker != null); }
public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems) { AmazonGlacierConfig config = new AmazonGlacierConfig(); config.RegionEndpoint = region; ConfigureClient(config); AmazonGlacierClient client = new AmazonGlacierClient(creds, config); ListVaultsResponse resp = new ListVaultsResponse(); do { ListVaultsRequest req = new ListVaultsRequest { Marker = resp.Marker , Limit = maxItems }; resp = client.ListVaults(req); CheckError(resp.HttpStatusCode, "200"); foreach (var obj in resp.VaultList) { AddObject(obj); } }while (!string.IsNullOrEmpty(resp.Marker)); }
public static List <DescribeVaultOutput> ListVaults() { using (var client = GetGlacierClient()) { ListVaultsRequest request = new ListVaultsRequest(GetAccountId(), "", 100); ListVaultsResponse response = client.ListVaults(request); return(response.VaultList); } }
public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context) { ListVaultsResponse response = new ListVaultsResponse(); context.Read(); UnmarshallResult(context, response); return(response); }
public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context) { ListVaultsResponse response = new ListVaultsResponse(); context.Read(); response.ListVaultsResult = ListVaultsResultUnmarshaller.GetInstance().Unmarshall(context); return(response); }
private static void UnmarshallResult(JsonUnmarshallerContext context, ListVaultsResponse response) { int originalDepth = context.CurrentDepth; int targetDepth = originalDepth + 1; while (context.Read()) { if (context.TestExpression("VaultList", targetDepth)) { context.Read(); if (context.CurrentTokenType == JsonToken.Null) { response.VaultList = null; continue; } response.VaultList = new List <DescribeVaultOutput>(); DescribeVaultOutputUnmarshaller unmarshaller = DescribeVaultOutputUnmarshaller.GetInstance(); while (context.Read()) { JsonToken token = context.CurrentTokenType; if (token == JsonToken.ArrayStart) { continue; } if (token == JsonToken.ArrayEnd) { break; } response.VaultList.Add(unmarshaller.Unmarshall(context)); } continue; } if (context.TestExpression("Marker", targetDepth)) { context.Read(); response.Marker = StringUnmarshaller.GetInstance().Unmarshall(context); continue; } if (context.CurrentDepth <= originalDepth) { return; } } return; }
private static async Task ListVaults(KmsVaultClient kmsVaultClient, string compartmentId) { logger.Info("List Vaults"); ListVaultsRequest listVaultsRequest = new ListVaultsRequest { CompartmentId = compartmentId }; ListVaultsResponse listVaultsResponse = await kmsVaultClient.ListVaults(listVaultsRequest); logger.Info("Retrieved vaults"); foreach (var response in listVaultsResponse.Items) { logger.Info($"Vault: {response.DisplayName}"); } }