use of com.ibm.cloud.cloudant.v1.model.ServerInformation 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.ServerInformation in project cloudant-java-sdk by IBM.
the class ServerInformationTest method testServerInformation.
@Test
public void testServerInformation() throws Throwable {
ServerInformation serverInformationModel = new ServerInformation();
assertNull(serverInformationModel.getCouchdb());
assertNull(serverInformationModel.getFeatures());
assertNull(serverInformationModel.getVendor());
assertNull(serverInformationModel.getVersion());
assertNull(serverInformationModel.getFeaturesFlags());
}
use of com.ibm.cloud.cloudant.v1.model.ServerInformation in project cloudant-java-sdk by IBM.
the class CloudantTest method testGetServerInformationWOptions.
@Test
public void testGetServerInformationWOptions() throws Throwable {
// Schedule some responses.
String mockResponseBody = "{\"couchdb\": \"couchdb\", \"features\": [\"features\"], \"vendor\": {\"name\": \"name\", \"variant\": \"variant\", \"version\": \"version\"}, \"version\": \"version\", \"features_flags\": [\"featuresFlags\"]}";
String getServerInformationPath = "/";
server.enqueue(new MockResponse().setHeader("Content-type", "application/json").setResponseCode(200).setBody(mockResponseBody));
constructClientService();
// Construct an instance of the GetServerInformationOptions model
GetServerInformationOptions getServerInformationOptionsModel = new GetServerInformationOptions();
// Invoke operation with valid options model (positive test)
Response<ServerInformation> response = cloudantService.getServerInformation(getServerInformationOptionsModel).execute();
assertNotNull(response);
ServerInformation 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, getServerInformationPath);
}
use of com.ibm.cloud.cloudant.v1.model.ServerInformation in project cloudant-java-sdk by IBM.
the class Cloudant method getServerInformation.
/**
* Retrieve server instance information.
*
* When you access the root of an instance, IBM Cloudant returns meta-information about the instance. The response
* includes a JSON structure that contains information about the server, including a welcome message and the server's
* version.
*
* @param getServerInformationOptions the {@link GetServerInformationOptions} containing the options for the call
* @return a {@link ServiceCall} with a result of type {@link ServerInformation}
*/
public ServiceCall<ServerInformation> getServerInformation(GetServerInformationOptions getServerInformationOptions) {
RequestBuilder builder = RequestBuilder.get(RequestBuilder.resolveRequestUrl(getServiceUrl(), "/"));
Map<String, String> sdkHeaders = SdkCommon.getSdkHeaders("cloudant", "v1", "getServerInformation");
for (Entry<String, String> header : sdkHeaders.entrySet()) {
builder.header(header.getKey(), header.getValue());
}
builder.header("Accept", "application/json");
ResponseConverter<ServerInformation> responseConverter = ResponseConverterUtils.getValue(new com.google.gson.reflect.TypeToken<ServerInformation>() {
}.getType());
return createServiceCall(builder.build(), responseConverter);
}
Aggregations