This document discusses the Software Repository API available for management of the Remote Manager repository and the deployment components maintained by it. It can be used by bundles running on the RM backend or administration applications.

The Software Repository API provides methods for:

  • Developing plug-ins that handle different file types in the repository.
  • Importing and managing the life cycle of various deployment units.
  • Obtaining information about the common and custom properties of the software components, their state and dependencies.
  • Registering and unregistering listeners to monitor the changes in the Software Repository.

Basic Principles of the Software Repository

The software repository is a functional component that stores deployment units in a database. From the software repository deployment units can be retrieved and directly installed on client devices.

The Software Repository package provides the Software Repository front-end API to add to it different deployment units as well as manage their main attributes. With the Software Repository API you can also define deployment unit dependencies, the capabilities they will add to the client device and other deployment-specific tasks.

Another powerful feature of the Software Repository API is the maintenance of client bundles and configurations for different platforms.

The Software Repository API main component is the com.prosyst.mprm.admin.softrepository.SoftwareRepository interface, which is implemented and registered as a service by the RM Software Repository bundle (packages/sr/sr.core.be.jar) on a backend (CC, RAS and MS) OSGi framework.

Developers can also use the sr/lib/sr-api.jar archive for development and compilation of applications using the software repository.

More information about the software repository is available in Basic Concepts.

Accessing the Software Repository API

The software repository, in particular the Software Repository API, can be accessed as a front-end API:

  • On the RM backend as a service on the backend framework by other applications. You use the methods defined by the OSGi Framework specification.
  • Through the remote access client (RAC) from a destination remote to RM backend. The RAC class libraries to use are lib/rac/system-rac.jar, lib/rac/foundation-rac.jar and lib/rac/sr-rac.jar. For further information on using the Remote Access Client, refer to the Remote Access to RM guide from the System package documentation.