Skip to content

Java Client example code

David An edited this page Aug 23, 2022 · 1 revision

Example Java code for calling WDS via its Java client:

import org.databiosphere.workspacedata.api.InstancesApi;
import org.databiosphere.workspacedata.api.RecordsApi;
import org.databiosphere.workspacedata.client.ApiClient;
import org.databiosphere.workspacedata.model.RecordRequest;
import org.databiosphere.workspacedata.model.RecordResponse;

import java.util.UUID;

public class Main {
    public static void main(String[] args) throws Exception {
        String version = "v0.2";
        UUID instanceUuid = UUID.randomUUID();
        String instanceId = instanceUuid.toString();

        ApiClient apiClient = new ApiClient();
        apiClient.setBasePath("http://localhost:8080");

        InstancesApi instanceApi = new InstancesApi();
        instanceApi.setApiClient(apiClient);

        RecordsApi recordsApi = new RecordsApi();
        recordsApi.setApiClient(apiClient);

        // create instance
        instanceApi.createWDSInstance(instanceId, version);

        // put record
        String recordId = "my-id";
        String recordType = "my-type";
        RecordRequest recordRequest = new RecordRequest();
        recordRequest.putAttributesItem("foo", "bar");
        recordRequest.putAttributesItem("num", 123);
        RecordResponse putResponse = recordsApi.createOrReplaceRecord(instanceId, version, recordType, recordId, recordRequest);

        System.out.println("PUT response:");
        System.out.println(putResponse.toString());

        RecordResponse rec = recordsApi.getRecord(instanceId, version, recordType, recordId);
        System.out.println("GET response:");
        System.out.println(rec.toString());
    }
}