Work Collaboratively
When you are building your host application project files it is often important for multiple people to contribute to a project. Configuration management software, such as Git, provides your team with the ability to manage and merge your project files efficiently. Because Host Integrator saves your project files in an XML format, making them accessible to multiple developers, it is easy to work collaboratively.
Each host application project contains a number of files that you need to keep together in order to ensure the project's uniqueness. Files are generated and saved in a directory that uses the same name as the model you are using. The main model file, .modelx, uses that same name. It is important to keep all the project files together and preserve their folder structure.
The <Model name>
directory, which, by default, is created in my documents\RocketSoftware\Verastream\HostIntegrator\model. Each Model name directory contains the following files and directories:
- The
<model name>
.modelx and modelx_1.xsd files. - The
<entity name>
.entityx and entityx_1.xsd files, in the entities subfolder. - The
<table name>
.tablex and the tablex_1.xsd files, in the tables subfolder. - The Scripts directory.
In particular, build.xml, the \src
subfolder, and the \lib
subfolder are required for event handler maintenance.
In previous versions of Host Integrator, project files were saved with a .model extension. By default your project is saved using its existing extension. Using the Save As option you can choose which format to use. If you choose to save your file as a .model file, the directory contains these files:
- The
<model name>
.model file. - The .snapshot file.
- The Scripts directory.
In particular, build.xml, the \src
subfolder, and the \lib
subfolder are required for event handler maintenance.
Using source control to manage and merge changes
Using the multiple plain text files generated in the Design Tool and a tool, such as Git, different developers can work on the different files needed to build your host application project.
Things to remember
- It is always better to make changes to the model using the Design Tool. In the Design Tool all objects are available to copy from the user interface and every change is validated to make sure that the model stays consistent.
- Because the objects are available in XML format, you can open the modelx, entityx and tablex files in an editor. Make sure that the editor you choose is capable of using the associated .xsd files. The .xsd file checks the syntax and possible element values, but it is up to the developer to check the valid syntax before attempting to run the project.
- If your projects are referencing the same mainframe application, you can copy and rename the entire .entityx or .tablex file into the destination model. You can copy entityx or tablex files from one model directory into another model directory. If the name in the destination model already exists, you can simply give the new entityx or tablex files a new name. The new names will be available as entities or tables in the Design Tool.
-
One advantage of an editor is the ability to globally copy and rename an object. You can copy information within the same modelx file to create a number of variables that use the same properties or within a file (modelx, entityx, or tablex) of one project, you can copy a complete definition of an object, such as a variable, or copy a part of an object such as a pattern or a recordset, belonging to an entity, or copy one or more columns that are part of a table.
For example, it is easy to copy the information contained within the variable tags, and then add this variable to another project by pasting it after an existing variable in your XML file. You must rename the variable to an unique value:
<Variable> <Name>newUserID</Name> <InitOption>VarInitUninitialized</InitOption> <VarKind>VarKindSetting</VarKind> <Attributes> <VarAttrsRead/> <VarAttrsWrite/> </Attributes> <Setting>HostUserName>/Setting> </Variable>
Importing model elements
With this option, developers can work separately on different sections of the same model, import sections into the destination model, and reuse model elements as often as needed. You can import elements from older formatted models into the current format and vice versa. You are not restricted by the different versions of existing project files. There is complete documentation on this option available. See Importing Model Elements.
Optional Files
The Recordings
directory, which is where the Host Emulator trace files are stored is optional. If you do not intend to load and run a model recording in the Host Emulator, this directory is not needed.
Note
If you want to save the settings for this model so that it will be the basis for creating other models, select Save Settings As. The .dtool
file you create can include Design Tool-specific configuration information such as window size, colors, keymapping, and preferences, as well as information about the host application and connection settings.
More information