This page details the format for the JSON artefact template definition file.
ArtefactTemplate
Property Name | Data Type | Remarks |
---|---|---|
TemplateCode | String | The code that uniquely identifies this template within the template source |
TemplateName | String | The name of the template, for identification in the UI |
TemplateDescription | String | A description of the template's usage/purpose |
TemplateCategoryCode | String | The code of the template category into which to place the template |
TemplatePath | String | The path and filename of the template text file within the template source |
ArtefactTypeCode | String | The code specifying the type of artefact the template creates |
RequiresDataStructure | Boolean | Whether a data structure must be selected when creating an artefact with this template |
PrimaryLanguageCode | String | A code that represents the language being generated, used to determine naming conventions |
ArtefactNameTemplate | String | A naming template that is used to calculate the default name when adding a new artefact |
ArtefactSummaryTemplate | String | A template that is used to calculate the default summary when adding a new artefact |
OutputNameTemplate | String | A template that is used to calculate the default output name when adding a new artefact |
OutputEncodingCode | String | A code that represents the encoding for the output from code generation |
Sequence | string | The sequence of this artefact template in its parent category when shown in a list |
Properties | Array of ArtefactTemplateProperty | The custom properties available for editing on an artefact created from this template |
Helpers | Array of ArtefactTemplateHelper | The helpers to be exposed during generation of an artefact created from this template |
Valid values for ArtefactTypeCode are:
Code | Meaning |
---|---|
SOLUTION | A solution - the top-level of the artefact type hierarchy. Solutions can contain artefacts of any other type |
PROJECT | A project. Projects can contain folders and items |
FOLDER | A folder. Folders can contain other folders and items |
ITEM | An item. This is the bottom of the artefact type hierarchy and cannot contain anything else |
Valid values for PrimaryLanguageCode are defined by what languages you set up. However, common ones include:
Code | Meaning |
---|---|
CSHARP | C# |
MSSQL | Microsoft's T-SQL |
HTML | Hypertext Markup Language |
JAVASCRIPT | JavaScript |
TEXT | Other, unspecified text |
Valid values for OutputEncodingCode are:
Code | Meaning |
---|---|
UTF7 | UTF-7 |
UTF8BOM | UTF-8 with a byte order mark |
UTF8 | UTF-8 (no byte order mark) |
UTF16LittleEndianBOM | Little-endian UTF-16 with a byte order mark |
UTF16LittleEndian | Little-endian UTF-16 (no byte order mark) |
UTF16BigEndianBOM | Big-endian UTF-16 with a byte order mark |
UTF16BigEndian | Big-endian UTF-16 (no byte order mark) |
UTF32LittleEndianBOM | Little-endian UTF-32 with a byte order mark |
UTF32LittleEndian | Little-endian UTF-32 (no byte order mark) |
UTF32BigEndianBOM | Big-endian UTF-32 with a byte order mark |
UTF32BigEndian | Big-endian UTF-32 (no byte order mark) |
ArtefactTemplateProperty
Property Name | Data Type | Remarks |
---|---|---|
PropertyName | String | The name by which this property can be accessed in code generation templates |
PropertyFriendlyName | String | The user-friendly name by which this property is known in the DesiGen UI |
PropertyDescription | String | The description of this property, for display to a user in the DesiGen UI |
DefaultValueTemplate | String | The template used to calculate the default value for this property when adding a new artefact |
ArtefactTemplateHelper
Property Name | Data Type | Remarks |
---|---|---|
CodeGenTemplateSourceCode | String | The code for the template source in which the helper type is defined; empty string for this template source |
ArtefactTemplateHelperTypeCode | String | The code by which the helper is known in the template source |
It is a current limitation of DesiGen that only built-in helpers can be used. Therefore, the only valid value for CodeGenTemplateSourceCode is currently "BUILTIN"
Details of the built-in helpers are in the Code Generation section.