The Hippo Importer has been built on top of the well documented Content Repository for Java Technology API (https://jcp.org/ja/jsr/detail?id=170). A basic Hippo connection class was used which handles connecting to the repository, starting a session and other basic functionality. While importing the structure and content, the importer records the local (Xillio) id, UUID, path and type of all the nodes that it creates in a database table (SQLite by default).
This data is used for link resolution. Besides, using this data the importer can easily identify which nodes have been created by the importer itself, and which nodes were created by other users.
The importer requires three different types of input – all in xml format:
- Parameterization xml - Specifies jobs and settings, serves as a base for the functionality of importer.
- Structure xml - Specifies the site structure of the content. Typically separate structure files for documents, images and assets.
- Content xml - Specifies the properties and sub-nodes in a separate xml file for each document, image or asset.
The content of these xml files are discussed more in detail in the next chapters.
The import process
The import is a two phase process. In the first run the importer iterates over the structure xml file and creates all the folders and handles.
In the second run the handles that were created in the previous phase are then filled with the contents from the content xml files, like the one above. In this step all the internal links are resolved.