Skip to content
This repository has been archived by the owner on Sep 16, 2024. It is now read-only.

Export API

rjrudin edited this page Apr 6, 2017 · 2 revisions

The intent of Export API - currently on the dev branch under com.marklogic.appdeployer.export - is to make it very easy to export any number of MarkLogic resources to files via the Management API. This can then be used to support a variety of Gradle tasks related to "capturing" an application.

A few notes on the API:

  1. ResourceExporter is a simple interface for encapsulating an export operation for a particular resource
  2. AbstractResourceExporter is a simple base class for helping implement ResourceExporter. May add a Spring TaskExecutor here in the future to support multithreading.
  3. AbstractNamedResourceExporter is ideally the class you can extend when adding support for another resource. See how UserExporter and RoleExporter subclass this.
  4. Exporter is an optional "fluent" interface for writing a series of export steps.

When adding support for a new resource, please adhere to the same package structure that's used under com.marklogic.appdeployer.command and com.marklogic.mgmt too - i.e. use package names based on the Manage API endpoints. And name classes similar to how the *Manager classes are named - e.g. UserExporter (UserManager), RoleExporter (RoleManager).

Clone this wiki locally