--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/core/com.nokia.carbide.templatewizard/plugin.xml Fri Apr 03 23:33:03 2009 +0100
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ <copyright>
+ </copyright>
+
+ $Id: plugin.xml,v 1.3 2009/02/17 20:23:17 tkelly Exp $
+-->
+
+<plugin>
+ <extension-point id="wizardTemplate" name="WizardTemplate" schema="schema/wizardTemplate.exsd"/>
+ <extension-point id="templateProcesses" name="Template Processes" schema="schema/templateProcesses.exsd"/>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri = "platform:/resource/com.nokia.carbide.templatewizard/schema/template.xsd"
+ class = "com.nokia.carbide.internal.template.gen.Template.TemplatePackage"
+ genModel = "schema/template.genmodel" />
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.extension_parser">
+ <parser
+ type="template"
+ class="com.nokia.carbide.internal.template.gen.Template.util.TemplateResourceFactoryImpl" />
+ </extension>
+ <extension
+ point="com.nokia.carbide.templatewizard.templateProcesses">
+ <templateProcess
+ class="com.nokia.carbide.templatewizard.processes.CopyFiles"
+ id="com.nokia.carbide.templatewizard.CopyFiles">
+ <description>
+Copies files from the template to the project, optionally template-expanding contents.
+Parameters:
+
+parameter project (required): name of the project to copy into
+* attribute projectName (required): project name
+
+parameter tree (sequence, 0+): a tree of files to copy
+* attribute sourcePath (required): template.xml-relative folder for source content
+* attribute targetPath (required): project-relative folder for target content (does NOT use basename of sourcePath)
+* attribute subsitute (optional, default true): whether this file is parameterized and needs to be variable-substituted from variables in the template's value map.
+When substituting, unrecognized variables are left intact.
+Optionally, any of three operators can be used to automatically uppercase, lowercase and titlecase (uppercase only the first character) the value prior to substitution. The syntax for using the operators is $(id$upper), $(id$lower) or $(id$title).
+* attribute overwrite (optional, default false): if true, allows overwriting existing files without error.
+ </description>
+ </templateProcess>
+ <templateProcess
+ class="com.nokia.carbide.templatewizard.processes.CopyFileTree"
+ id="com.nokia.carbide.templatewizard.CopyFileTree">
+ <description>
+Copies a tree of files from one location to another, optionally template-expanding contents along the way. The leaf of
+source is NOT placed into the target, so repeat the leaf directory in
+targetPath if required.
+
+Syntax:
+
+parameter project (required): name of the project to copy into
+* attribute projectName (required): project name
+
+parameter tree (sequence, 0+): a tree of files to copy
+* attribute sourcePath (required): template.xml-relative folder for source content
+* attribute targetPath (required): project-relative folder for target content (does NOT use basename of sourcePath)
+* attribute subsitute (optional): whether this file is parameterized and needs to be variable-substituted from variables in the template's value map (defaults to false, unlike CopyFiles).
+When substituting, unrecognized variables are left intact.
+Optionally, any of three operators can be used to automatically uppercase, lowercase and titlecase (uppercase only the first character) the value prior to substitution. The syntax for using the operators is $(id$upper), $(id$lower) or $(id$title).
+
+* attribute excludedFileOrDirectoryPattern (optional): a regular expression used to filter out files or directories (leaf name only). If not specified, CVS and .svn directories are the default filter.
+
+* attribute noSubstituteFileOrDirectoryPattern (optional): a regular expression used to exclude files or directories from variable substitution (leaf name only). If a directory matches, all its files and subdirectories are excluded from substitution. If not specified, all files are substituted if 'substitute=true'.
+ </description>
+ </templateProcess>
+
+ <templateProcess
+ class="com.nokia.carbide.templatewizard.processes.CreateFolders"
+ id="com.nokia.carbide.templatewizard.CreateFolders">
+ <description>
+Creates folders in the project.
+
+Syntax:
+
+parameter project (required): name of the project to copy into
+* attribute projectName (required): project name
+
+parameter folder (sequence, 0+): folder to create
+* attribute path (required): project-relative folder to create. This can create multiple levels of folders in one shot (e.g. src/my/folder).
+ </description>
+ </templateProcess>
+
+ <templateProcess
+ class="com.nokia.carbide.templatewizard.processes.CreateTemplateVariable"
+ id="com.nokia.carbide.templatewizard.DefineTemplateVariable">
+ <description>
+Defines template variables for use by other processes. This augments the template's variable map for use by other processes
+(such as template substitution by CopyFiles).
+
+Syntax:
+
+parameter variable (sequence, 0+): a variable to define
+* attribute variableName (required): variable name
+* attribute value (required): variable value
+ </description>
+ </templateProcess>
+
+ <templateProcess
+ class="com.nokia.carbide.templatewizard.processes.OpenFileInEditor"
+ id="com.nokia.carbide.templatewizard.OpenFileInEditor">
+ <description>
+Opens the specified file in an editor.
+
+Syntax:
+
+parameter project (required): the project and file information
+* attribute projectName (required): project in which to find the file
+* attribute fileName (required): path in project to the file to open
+* attribute editorId (optional): the specific Eclipse editor used to open the file; if the id is not specified or
+the editor is not registered, a default editor is used
+ </description>
+ </templateProcess>
+ </extension>
+
+</plugin>
+