use of com.ibm.cloud.cloudant.v1.model.DatabaseInformation in project cloudant-java-sdk by IBM.
the class GetInfoFromExistingDatabase method main.
public static void main(String[] args) {
// 1. Create a Cloudant client with "EXAMPLES" service name ===========
Cloudant client = Cloudant.newInstance("EXAMPLES");
// 2. Get server information ==========================================
ServerInformation serverInformation = client.getServerInformation().execute().getResult();
System.out.println("Server Version: " + serverInformation.getVersion());
// 3. Get database information for "animaldb" =========================
String dbName = "animaldb";
GetDatabaseInformationOptions dbInformationOptions = new GetDatabaseInformationOptions.Builder(dbName).build();
DatabaseInformation dbInformationResponse = client.getDatabaseInformation(dbInformationOptions).execute().getResult();
// 4. Show document count in database =================================
Long documentCount = dbInformationResponse.getDocCount();
System.out.println("Document count in \"" + dbInformationResponse.getDbName() + "\" database is " + documentCount + ".");
// 5. Get zebra document out of the database by document id ===========
GetDocumentOptions getDocOptions = new GetDocumentOptions.Builder().db(dbName).docId("zebra").build();
Document documentAboutZebra = client.getDocument(getDocOptions).execute().getResult();
System.out.println("Document retrieved from database:\n" + documentAboutZebra);
}
use of com.ibm.cloud.cloudant.v1.model.DatabaseInformation in project cloudant-java-sdk by IBM.
the class CloudantTest method testGetDatabaseInformationWOptions.
@Test
public void testGetDatabaseInformationWOptions() throws Throwable {
// Schedule some responses.
String mockResponseBody = "{\"cluster\": {\"n\": 1, \"q\": 1, \"r\": 1, \"w\": 1}, \"committed_update_seq\": \"committedUpdateSeq\", \"compact_running\": true, \"compacted_seq\": \"compactedSeq\", \"db_name\": \"dbName\", \"disk_format_version\": 17, \"doc_count\": 0, \"doc_del_count\": 0, \"engine\": \"engine\", \"props\": {\"partitioned\": false}, \"sizes\": {\"active\": 6, \"external\": 8, \"file\": 4}, \"update_seq\": \"updateSeq\", \"uuid\": \"uuid\"}";
String getDatabaseInformationPath = "/testString";
server.enqueue(new MockResponse().setHeader("Content-type", "application/json").setResponseCode(200).setBody(mockResponseBody));
constructClientService();
// Construct an instance of the GetDatabaseInformationOptions model
GetDatabaseInformationOptions getDatabaseInformationOptionsModel = new GetDatabaseInformationOptions.Builder().db("testString").build();
// Invoke operation with valid options model (positive test)
Response<DatabaseInformation> response = cloudantService.getDatabaseInformation(getDatabaseInformationOptionsModel).execute();
assertNotNull(response);
DatabaseInformation responseObj = response.getResult();
assertNotNull(responseObj);
// Verify the contents of the request
RecordedRequest request = server.takeRequest();
assertNotNull(request);
assertEquals(request.getMethod(), "GET");
// Check query
Map<String, String> query = TestUtilities.parseQueryString(request);
assertNull(query);
// Check request path
String parsedPath = TestUtilities.parseReqPath(request);
assertEquals(parsedPath, getDatabaseInformationPath);
}
use of com.ibm.cloud.cloudant.v1.model.DatabaseInformation in project cloudant-java-sdk by IBM.
the class Cloudant method getDatabaseInformation.
/**
* Retrieve information about a database.
*
* @param getDatabaseInformationOptions the {@link GetDatabaseInformationOptions} containing the options for the call
* @return a {@link ServiceCall} with a result of type {@link DatabaseInformation}
*/
public ServiceCall<DatabaseInformation> getDatabaseInformation(GetDatabaseInformationOptions getDatabaseInformationOptions) {
com.ibm.cloud.sdk.core.util.Validator.notNull(getDatabaseInformationOptions, "getDatabaseInformationOptions cannot be null");
Map<String, String> pathParamsMap = new HashMap<String, String>();
pathParamsMap.put("db", getDatabaseInformationOptions.db());
RequestBuilder builder = RequestBuilder.get(RequestBuilder.resolveRequestUrl(getServiceUrl(), "/{db}", pathParamsMap));
Map<String, String> sdkHeaders = SdkCommon.getSdkHeaders("cloudant", "v1", "getDatabaseInformation");
for (Entry<String, String> header : sdkHeaders.entrySet()) {
builder.header(header.getKey(), header.getValue());
}
builder.header("Accept", "application/json");
ResponseConverter<DatabaseInformation> responseConverter = ResponseConverterUtils.getValue(new com.google.gson.reflect.TypeToken<DatabaseInformation>() {
}.getType());
return createServiceCall(builder.build(), responseConverter);
}
use of com.ibm.cloud.cloudant.v1.model.DatabaseInformation in project cloudant-java-sdk by IBM.
the class DatabaseInformationTest method testDatabaseInformation.
@Test
public void testDatabaseInformation() throws Throwable {
DatabaseInformation databaseInformationModel = new DatabaseInformation();
assertNull(databaseInformationModel.getCluster());
assertNull(databaseInformationModel.getCommittedUpdateSeq());
assertNull(databaseInformationModel.isCompactRunning());
assertNull(databaseInformationModel.getCompactedSeq());
assertNull(databaseInformationModel.getDbName());
assertNull(databaseInformationModel.getDiskFormatVersion());
assertNull(databaseInformationModel.getDocCount());
assertNull(databaseInformationModel.getDocDelCount());
assertNull(databaseInformationModel.getEngine());
assertNull(databaseInformationModel.getProps());
assertNull(databaseInformationModel.getSizes());
assertNull(databaseInformationModel.getUpdateSeq());
assertNull(databaseInformationModel.getUuid());
}
Aggregations