/// <summary> /// Unmarshaller the response from the service to the response class. /// </summary> /// <param name="context"></param> /// <returns></returns> public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context) { ListDatabasesResponse response = new ListDatabasesResponse(); context.Read(); int targetDepth = context.CurrentDepth; while (context.ReadAtDepth(targetDepth)) { if (context.TestExpression("DatabaseList", targetDepth)) { var unmarshaller = new ListUnmarshaller <Database, DatabaseUnmarshaller>(DatabaseUnmarshaller.Instance); response.DatabaseList = unmarshaller.Unmarshall(context); continue; } if (context.TestExpression("NextToken", targetDepth)) { var unmarshaller = StringUnmarshaller.Instance; response.NextToken = unmarshaller.Unmarshall(context); continue; } } return(response); }
public async Task ListDatabases() { Console.WriteLine("Listing Databases"); try { var listDatabasesRequest = new ListDatabasesRequest { MaxResults = 5 }; ListDatabasesResponse response = await writeClient.ListDatabasesAsync(listDatabasesRequest); PrintDatabases(response.Databases); var nextToken = response.NextToken; while (nextToken != null) { listDatabasesRequest.NextToken = nextToken; response = await writeClient.ListDatabasesAsync(listDatabasesRequest); PrintDatabases(response.Databases); nextToken = response.NextToken; } } catch (Exception e) { Console.WriteLine("List database failed:" + e.ToString()); } }
public override void Invoke(AWSCredentials creds, RegionEndpoint region, int maxItems) { AmazonTimestreamWriteConfig config = new AmazonTimestreamWriteConfig(); config.RegionEndpoint = region; ConfigureClient(config); AmazonTimestreamWriteClient client = new AmazonTimestreamWriteClient(creds, config); ListDatabasesResponse resp = new ListDatabasesResponse(); do { ListDatabasesRequest req = new ListDatabasesRequest { NextToken = resp.NextToken , MaxResults = maxItems }; resp = client.ListDatabases(req); CheckError(resp.HttpStatusCode, "200"); foreach (var obj in resp.Databases) { AddObject(obj); } }while (!string.IsNullOrEmpty(resp.NextToken)); }
public ListDatabasesResponse HandleRequest(ISqlConnectionFactory connectionFactory, ConnectionInfo connectionInfo) { ConnectionDetails connectionDetails = connectionInfo.ConnectionDetails.Clone(); // Connect to master connectionDetails.DatabaseName = "master"; using (var connection = connectionFactory.CreateSqlConnection(ConnectionService.BuildConnectionString(connectionDetails), connectionDetails.AzureAccountToken)) { connection.Open(); ListDatabasesResponse response = new ListDatabasesResponse(); using (DbCommand command = connection.CreateCommand()) { command.CommandText = this.QueryText; command.CommandTimeout = 15; command.CommandType = CommandType.Text; using (var reader = command.ExecuteReader()) { List <T> results = new List <T>(); while (reader.Read()) { results.Add(this.CreateItem(reader)); } // Put system databases at the top of the list results = results.Where(s => SystemDatabases.Any(x => this.NameMatches(x, s))).Concat( results.Where(s => SystemDatabases.All(x => !this.NameMatches(x, s)))).ToList(); SetResponse(response, results.ToArray()); } } connection.Close(); return(response); } }
/// <summary> /// List all databases on the server specified /// </summary> public ListDatabasesResponse ListDatabases(ListDatabasesParams listDatabasesParams) { // Verify parameters var owner = listDatabasesParams.OwnerUri; if (string.IsNullOrEmpty(owner)) { throw new ArgumentException(SR.ConnectionServiceListDbErrorNullOwnerUri); } // Use the existing connection as a base for the search ConnectionInfo info; if (!TryFindConnection(owner, out info)) { throw new Exception(SR.ConnectionServiceListDbErrorNotConnected(owner)); } ConnectionDetails connectionDetails = info.ConnectionDetails.Clone(); // Connect to master and query sys.databases connectionDetails.DatabaseName = "master"; var connection = this.ConnectionFactory.CreateSqlConnection(BuildConnectionString(connectionDetails)); connection.Open(); List <string> results = new List <string>(); var systemDatabases = new[] { "master", "model", "msdb", "tempdb" }; using (DbCommand command = connection.CreateCommand()) { command.CommandText = "SELECT name FROM sys.databases ORDER BY name ASC"; command.CommandTimeout = 15; command.CommandType = CommandType.Text; using (var reader = command.ExecuteReader()) { while (reader.Read()) { results.Add(reader[0].ToString()); } } } // Put system databases at the top of the list results = results.Where(s => systemDatabases.Any(s.Equals)).Concat( results.Where(s => systemDatabases.All(x => !s.Equals(x)))).ToList(); connection.Close(); ListDatabasesResponse response = new ListDatabasesResponse(); response.DatabaseNames = results.ToArray(); return(response); }
public static ListDatabasesResponse Unmarshall(UnmarshallerContext _ctx) { ListDatabasesResponse listDatabasesResponse = new ListDatabasesResponse(); listDatabasesResponse.HttpResponse = _ctx.HttpResponse; listDatabasesResponse.RequestId = _ctx.StringValue("ListDatabases.RequestId"); listDatabasesResponse.Success = _ctx.BooleanValue("ListDatabases.Success"); listDatabasesResponse.ErrorMessage = _ctx.StringValue("ListDatabases.ErrorMessage"); listDatabasesResponse.ErrorCode = _ctx.StringValue("ListDatabases.ErrorCode"); listDatabasesResponse.TotalCount = _ctx.LongValue("ListDatabases.TotalCount"); List <ListDatabasesResponse.ListDatabases_Database> listDatabasesResponse_databaseList = new List <ListDatabasesResponse.ListDatabases_Database>(); for (int i = 0; i < _ctx.Length("ListDatabases.DatabaseList.Length"); i++) { ListDatabasesResponse.ListDatabases_Database database = new ListDatabasesResponse.ListDatabases_Database(); database.InstanceId = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].InstanceId"); database.DatabaseId = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].DatabaseId"); database.EnvType = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].EnvType"); database.SchemaName = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].SchemaName"); database.CatalogName = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].CatalogName"); database.Encoding = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].Encoding"); database.SearchName = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].SearchName"); database.State = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].State"); database.DbType = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].DbType"); database.Host = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].Host"); database.Port = _ctx.IntegerValue("ListDatabases.DatabaseList[" + i + "].Port"); database.Sid = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].Sid"); database.DbaName = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].DbaName"); database.DbaId = _ctx.StringValue("ListDatabases.DatabaseList[" + i + "].DbaId"); List <string> database_ownerIdList = new List <string>(); for (int j = 0; j < _ctx.Length("ListDatabases.DatabaseList[" + i + "].OwnerIdList.Length"); j++) { database_ownerIdList.Add(_ctx.StringValue("ListDatabases.DatabaseList[" + i + "].OwnerIdList[" + j + "]")); } database.OwnerIdList = database_ownerIdList; List <string> database_ownerNameList = new List <string>(); for (int j = 0; j < _ctx.Length("ListDatabases.DatabaseList[" + i + "].OwnerNameList.Length"); j++) { database_ownerNameList.Add(_ctx.StringValue("ListDatabases.DatabaseList[" + i + "].OwnerNameList[" + j + "]")); } database.OwnerNameList = database_ownerNameList; listDatabasesResponse_databaseList.Add(database); } listDatabasesResponse.DatabaseList = listDatabasesResponse_databaseList; return(listDatabasesResponse); }
/// <summary> /// Handle requests to list databases on the current server /// </summary> protected async Task HandleListDatabasesRequest( ListDatabasesParams listDatabasesParams, RequestContext <ListDatabasesResponse> requestContext) { Logger.Write(LogLevel.Verbose, "ListDatabasesRequest"); try { ListDatabasesResponse result = Instance.ListDatabases(listDatabasesParams); await requestContext.SendResult(result); } catch (Exception ex) { await requestContext.SendError(ex.ToString()); } }
public void ListDatabasesResourceNames() { moq::Mock <FirestoreAdmin.FirestoreAdminClient> mockGrpcClient = new moq::Mock <FirestoreAdmin.FirestoreAdminClient>(moq::MockBehavior.Strict); mockGrpcClient.Setup(x => x.CreateOperationsClient()).Returns(new moq::Mock <lro::Operations.OperationsClient>().Object); ListDatabasesRequest request = new ListDatabasesRequest { ParentAsProjectName = gagr::ProjectName.FromProject("[PROJECT]"), }; ListDatabasesResponse expectedResponse = new ListDatabasesResponse { Databases = { new Database(), }, }; mockGrpcClient.Setup(x => x.ListDatabases(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(expectedResponse); FirestoreAdminClient client = new FirestoreAdminClientImpl(mockGrpcClient.Object, null); ListDatabasesResponse response = client.ListDatabases(request.ParentAsProjectName); xunit::Assert.Same(expectedResponse, response); mockGrpcClient.VerifyAll(); }
public async stt::Task ListDatabasesResourceNamesAsync() { moq::Mock <FirestoreAdmin.FirestoreAdminClient> mockGrpcClient = new moq::Mock <FirestoreAdmin.FirestoreAdminClient>(moq::MockBehavior.Strict); mockGrpcClient.Setup(x => x.CreateOperationsClient()).Returns(new moq::Mock <lro::Operations.OperationsClient>().Object); ListDatabasesRequest request = new ListDatabasesRequest { ParentAsProjectName = gagr::ProjectName.FromProject("[PROJECT]"), }; ListDatabasesResponse expectedResponse = new ListDatabasesResponse { Databases = { new Database(), }, }; mockGrpcClient.Setup(x => x.ListDatabasesAsync(request, moq::It.IsAny <grpccore::CallOptions>())).Returns(new grpccore::AsyncUnaryCall <ListDatabasesResponse>(stt::Task.FromResult(expectedResponse), null, null, null, null)); FirestoreAdminClient client = new FirestoreAdminClientImpl(mockGrpcClient.Object, null); ListDatabasesResponse responseCallSettings = await client.ListDatabasesAsync(request.ParentAsProjectName, gaxgrpc::CallSettings.FromCancellationToken(st::CancellationToken.None)); xunit::Assert.Same(expectedResponse, responseCallSettings); ListDatabasesResponse responseCancellationToken = await client.ListDatabasesAsync(request.ParentAsProjectName, st::CancellationToken.None); xunit::Assert.Same(expectedResponse, responseCancellationToken); mockGrpcClient.VerifyAll(); }
protected abstract void SetResponse(ListDatabasesResponse response, T[] results);
protected override void SetResponse(ListDatabasesResponse response, DatabaseInfo[] results) { response.Databases = results; }
protected override void SetResponse(ListDatabasesResponse response, string[] results) { response.DatabaseNames = results; }