Document management integration

The following are the main plugin interfaces used to integrate with a document management system. Each plugin interface has a default plugin implementation class.

Interface

Description

IDocumentMetadataSource

PolicyCenter passes search parameters—metadata—to the plugin implementation class registered in this plugin registry. The class searches its metadata and returns a list of documents found.

You can implement your own plugin implementation class to interface with a system for storing document metadata—name, id, status, author, and so on. If the plugin is not enabled, then the PolicyCenter database stores the metadata.This interface is separate from IDocumentContentSource because of different architectural requirements.

In the base configuration, this plugin is disabled, and the following plugin implementation class is registered:

gw.plugin.document.impl.LocalDocumentMetadataSource

IDocumentContentSource

PolicyCenter passes to the plugin implementation class registered in this plugin registry the metadata for one document. The registered class registered returns the document content and does the following:

  • Interfaces with a document storage system.
  • Contains methods for creating, updating, and retrieving document contents.
  • Supports the following document retrieval modes:
    • Document contents.
    • Gosu executed by client rules.
    • URL to a server content store.

In the base configuration, the following plugin implementation class is registered:

gw.plugin.document.impl.AsyncDocumentContentSource

  • In the registry, the parameter TrySynchedAddFirst is set to true and SynchedContentSource is set to gw.plugin.document.impl.LocalDocumentContentSource.
  • These parameter values cause the class to first try to use synchronous document management. If it fails, then it uses asynchronous document management.

IDocumentProduction

This plugin registry registers a plugin implementation class that is the interface to a document creation system.

The document creation process can:

  • Involve extended workflow or asynchronous processes or both.
  • Depend on or set document fields.

In the base configuration, the following plugin implementation class is registered:

gw.plugin.document.impl.LocalDocumentProductionDispatcher

IDocumentTemplateSource

This plugin registry registers a plugin implementation class that searches for and retrieves templates describing the document to be created. In the base configuration, the plugin implementation class is:

gw.plugin.document.impl.LocalDocumentTemplateSource

IDocumentTemplateDescriptor

This interface describes the templates used to create documents. It include basic metadata (name, MIME type, and so on) and a pointer to the template content. In the base configuration, a class that implements this interface is:

gw.plugin.document.impl.XMLDocumentTemplateDescriptor

See also