SAS Drug Development Remote API

The SAS Drug Development (SDD) Remote API provides a mechanism for accessing the functionality of SDD over the web.

See:
          Description

Packages
com.sas.drugdev.remote Contains all the necessary classes and interfaces for creating sessions and connecting to the server.
com.sas.drugdev.remote.admin Provides classes and interfaces for accessing user and group information.
com.sas.drugdev.remote.repository Provides classes and interfaces for retrieving and writing content and metadata.
com.sas.drugdev.remote.repository.security Provides classes and interfaces managing permissions for nodes.
com.sas.drugdev.remote.sas Provides classes and interfaces for publishing and examining an SDD process.
com.sas.drugdev.remote.session Contains all the necessary classes and interfaces for creating sessions and connecting to the server.
com.sas.drugdev.remote.type Provides classes and interfaces for retrieving type information.

 

The SAS Drug Development (SDD) Remote API provides a mechanism for accessing the functionality of SDD over the web. Remote method calls are made over https to an existing instance of SDD. The API is service-based. A service is provided for each functional area of the API. These services are:


The API provides a mechanism to access the underlying SDD services. For instance, the RepositoryService allows you to access objects in repository, the TypeService allows you to access the typedefs in the system, and the UserService and GroupService allow you to access user and group information.


Which methods result in a remote call?

It is guaranteed that the only methods that result in a remote call in the entire API are on the service interfaces. Therefore, any calls to objects returned by the service interfaces will NOT result in a remote call. This allows the consumer of the API to make design decisions based on the performance of certain method calls. For example, a consumer of the API may make the choice to catch an exception for a non-existent Container rather than pre-checking for its existence before making a call to RepositoryService.getChildren(Container).

The only exception to this rule is in the Session interface. Each of its methods as well as the SessionFactory.newSession(java.net.URL, com.sas.drugdev.remote.session.Credentials) method result in a remote call.

Where To Start

Authenticate using the SessionFactory.newSession(URL, Credentials) static method. This returns an instance of the Session. Here is an example of how to create a session and retrieve the RepositoryService:

URL url = new URL("https://sddinstance.sas.com/sddremote");
Credentials credentials = new UsernamePasswordCredentials(username, password.toCharArray()); Session session = SessionFactory.newSession(url, credentials);
serviceManager = session.getServiceManager();
RepositoryService repositoryService = serviceManager.getRepositoryService();