The Project Model
With the advent of the Eclipse-based Configuration Editor (CE), development of solutions in Security Directory Integrator (SDI) is not, as in pre-V7.0 versions, based upon the development of plain Config files, but upon a Project model, and Workspaces. Using the Project model and the Workspace, we can do your development work; once you are ready to deploy the solution, you extract a Config file from the Workspace and send it to a suitable SDI Server: the runtime environment. This yields several benefits, some of which are:
- Cleaner Config files; unnecessary and unused Config elements will not be exported from the Workspace;
- More efficient editing of SDI configurations;
- Greater re-use of common components;
- The possibility of using source code management systems, for example CVS.
The Workspace
When you start the CE you will be prompted to select a workspace directory. The workspace directory is where the CE stores all your SDI projects and files. This is different from the solution directory, though the workspace directory may very well be contained inside the solution directory. From the workspace, the CE gathers files to form a runtime configuration file (rs.xml) that can be executed on an SDI server. Files and projects in the workspace can be thought of as the source for various runtime configuration files.
Install Directory, Solution Directory and the Working directory
Some confusion might arise from having three different directories in play. As stated in the previous section, the workspace directory belongs to the CE where the project files are stored. The install and solution directories belong to the SDI server when it executes. However, when you configure a connector in the CE for example, you will often use the discover attributes function; this will cause the CE to open the connector and execute operations on the connector. Since some connectors use file names for multiple purposes, it can be confusing when relative paths are used. For this reason, the default working directory for the CE should always be the same as the solution directory you are primarily working with1. Primarily, since it is possible to create several servers and solution directories inside the CE. We can still work with those and run AssemblyLines on those servers, but relative paths in configurations are no longer the same when you use connectors in the CE as opposed to using them when you run the AssemblyLine.Consider a configuration with a file connector using abc.txt as its input file. When you use discover attributes in the CE it will look for a file in the working directory of the CE (the preferred solution directory specified at install time). When you run the AssemblyLine with this connector everything looks fine. Then you create a new server with a solution directory pointing somewhere else than the current working directory. You configure the connector and the connector resolves the file name to the correct place (that is, the abc file resides in your current working directory). However, when you run the AssemblyLine it fails, since it can't find the file. This is because the new server runs in a different working directory (the solution directory) than the CE.
By default, the working directory of the CE is set to the solution directory of the default server used to execute AssemblyLines. So if you don't change anything you should not see any of these problems except when you create new solution directories or change the solution directory of the default server.
The Workbench
The workbench is the main user interface application in which you perform all configuration and development of SDI solutions. The workbench consists of a number of views and editors that let you do this.
- The SDI Servers view
- The SDI Project
To develop an SDI solution first create an SDI Project. A project in Eclipse is a collection of related files and resources.- Configuration Files
The configuration file (Config) run by a server is a composite XML document in which AssemblyLines, connectors and so forth are all part of the same document. In the SDI Eclipse CE each of these components are allocated their own physical file. These files only contain one configuration object.- The Project Builder
A custom project builder is associated with the project whose purpose is to assemble all artifacts into a runnable configuration file.- Properties and substitution
Every SDI project is associated with an SDI server. The associated server is the server that will be used to execute the AssemblyLines in the project. Since the server may be located on a different machine, the project model must provide access to properties through local copies of chosen property stores.
Parent topic:
The Configuration Editor1 The working directory should not be confused with the workspace. The workspace is the area where the project files are stored; the working directory is the position in the file system that defines all non-fully qualified filenames. For portability reasons, this should be the solution directory.