In IDK 5.0 and above, the Service Configuration Interface (SCI) provides an easy way to write configuration pages for your services that are integrated with portal editors. SCI wraps the portal?s XUI XML and allows you to create controls without XUI. (The portal UI is still articulated via XML and rendered using an XSL transformation, so XUI and SCI pages are backward and forward compatible.)
SCI is designed for providing default elements such as checkboxes, radio buttons, textboxes, password elements, and labels. Custom HTML can be added through the use of custom SCI elements. SCI is not designed to do in-place refresh. When designing SCI pages, place each dependency on a separate page. For example, for a database crawler, there could be separate pages for schema (database), table, and column, as each depends on the previous page.
Crawlers must provide SCI pages for the Data Source and Crawler editors. SCI pages are integrated with portal editors and used to define settings used by a crawler. SCI pages can also be used by auth, profile, and search services. The Plumtree.Remote.Sci package/namespace includes the following interfaces:
In general, a portal editor will call a service's SCI page interfaces in the following order.
Note: Values retrieved from the portal using IDocFetchProvider.Initialize(DataSourceInfo dsInfo) will be decoded in the process. To prevent "+" from being decoded into a space and "%" from having indeterminate behavior, make sure that all values entered into the data source using SCI pages are encoded using Plumtree.Remote.Util.CSPCodec. Likewise, all values that have been encoded in the SCI data source pages should be decoded when displayed with SCI using Plumtree.Remote.Util.CSPCodec. If the developer is not using DocFetch this is not an issue.
Note: The names in all NamedValues will be uppercased by the portal. For this reason, we recommend that all names in NamedValues be uppercase.
Class | Description |
---|---|
SciCheckboxElement | Represents a checkbox control. |
SciHiddenElement | Represents a hidden field (equivalent to type=hidden in HTML). |
SciLabelElement | Represents a label control. |
SciPage | Represents a page of SCI content. |
SciPasswordElement | Represents a password control with confirmation box. |
SciRadioElement | Represents a radio element. |
SciSelectElement | Represents a select (drop-down) control. |
SciTextElement | Represents a textbox with a label and validation. |
SciTreeElement | Represents an element that displays a tree view of directories (for example, a file system or database). |
TypeMatch | Type-safe enumeration for match types (match or not-match). |
TypeNamespace | Type-safe enum for namespaces (representing object types). |
TypeStorage | Type-safe enumeration for storage types (integer or string). There are a number of values in the 4.5 portal that are required to be stored as an integer, including CrawlerConstants.TAG_DEPTH and CrawlerConstants.TAG_THREADS. |
TypeStyle | Type-safe enumeration for text styles (normal or important). Important text is displayed in bold red type. |
ValidationException | Exception used to transmit an error code to GetPageContent . |
Interface | Description |
---|---|
IAdminEditor | Root interface for the SCI editor. Allows you to create Service Configuration pages that plug into portal editors. |
IAdminPage | An interface for an individual SCI page. |
ISciElement | Root interface for all SciElements. This includes SciCheckboxElement, SciPasswordElement, SciRadioElement, SciSelectElement and SciTreeElement. Developers wanting to add other elements to an SCI page should implement this interface and set the xmlns attribute on the root xml node to "http://www.w3.org/1999/xhtml" |
ISciPage | An interface for an individual SciPage . |
ITreeIterator | Interface used in SciTreeElement . Can be an interface to any system that supports iterating through a directory (for example, a file system). |
ITreeIteratorNode | Interface to access information about an ITreeIterator node. Used by SciTreeElement . |