Difference between revisions of "Tigerstripe Buckminster Integration Tutorial"

From Eclipsepedia

Jump to: navigation, search
(Versioned Components)
(Installation)
 
(13 intermediate revisions by one user not shown)
Line 9: Line 9:
 
==Installation==
 
==Installation==
 
This section will walk through the installation of the Tigerstripe Buckminster Integration plug-in.
 
This section will walk through the installation of the Tigerstripe Buckminster Integration plug-in.
 +
 +
# Download [[Media:TigerstripeBuckminsterFeature.zip | TigerstripeBuckminsterFeature.zip]] and unzip the bundle into the Eclipse installation directory. Restart Eclipse, if necessary.
 +
 
==Example==
 
==Example==
 
This section will describe how to materialize your Tigerstripe workspace and provide a description of the required Buckminster configuration files.
 
This section will describe how to materialize your Tigerstripe workspace and provide a description of the required Buckminster configuration files.
Line 17: Line 20:
 
#Click "Resolve and Materialize" in the CQUERY Editor. This will materialize the project's components from this example into your workspace.
 
#Click "Resolve and Materialize" in the CQUERY Editor. This will materialize the project's components from this example into your workspace.
  
If you are using the Tigerstripe perspective in Eclipse you will see the ClassLevel-Generator, common-model, and Equipment-model projects.
+
If you are using the Tigerstripe perspective in Eclipse you will see the ClassLevel-Generator, common-model, and Equipment-model projects. If you see errors in any of the projects, simple clean and rebuild the workspace.
  
 
====RMAP====
 
====RMAP====
Line 44: Line 47:
 
</pre>
 
</pre>
  
==== Versioned Components ====
+
==== Component Versioning ====
Tigerstripe Generators will support versions using the standard Buckminster mechanism. Please see Buckminster documentation for more details. Tigerstripe components that are discovered via the reference definition will not currently support out of the box versioning. This will be added in "Phase II". In order to resolve a specific version of a "referenced" Tigerstripe component a user will need to define a cspec in the primary model project (or in a separate "meta" project) and specify the dependency and version in the cspec. See the example below.
+
Tigerstripe components that are discovered via the project reference definition will not currently support versioning without "hints" supplied in a .cspec file. In order to resolve a specific version of a "referenced" Tigerstripe component a user will need to define a .cspec in the primary model project (or in a separate "meta" project) and explicitly define the dependency and version in the cspec. See the example below.
  
This file would reside in the  
+
This .cspec would reside in the Equipment-model project.
 
<pre>
 
<pre>
 
<?xml version="1.0" encoding="UTF-8"?>
 
<?xml version="1.0" encoding="UTF-8"?>
<cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="ProjectDefinition" componentType="buckminster" version="1.0.0" versionType="OSGi">
+
<cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="Equipment-model" componentType="buckminster" version="1.0.0" versionType="OSGi">
 
     <cs:dependencies>
 
     <cs:dependencies>
         <cs:dependency name="CoreModel" componentType="tigerstripe"/>
+
         <cs:dependency name="common-model" componentType="tigerstripe" versionDesignator="[3.0.0,3.0.0]" versionType="OSGi"/>/>
        <cs:dependency name="VersionedModel" componentType="tigerstripe" versionDesignator="[3.0.0,3.0.0]" versionType="OSGi"/>
+
 
     </cs:dependencies>
 
     </cs:dependencies>
 
</cs:cspec>
 
</cs:cspec>
 
</pre>
 
</pre>
 +
 +
For more information on CSPEC files see the [[Introduction_to_Buckminster#Component_Specifications_.28CSPECs.29|Component Specifications]] section of the Buckminster Introduction.

Latest revision as of 16:22, 17 November 2008

< To: Tigerstripe_Tutorials

Contents

[edit] Prerequisites

  • This tutorial will assume a working knowledge and installation of the Tigerstripe Workbench [1] and the Buckminster [2] Eclipse plug-ins.

[edit] Overview

This tutorial will use the sample presented at the Eclipse Summit 2008. For information about this project, including content, hierarchy, and additional dependencies (including Tigerstripe generators) please see the Tigerstripe At Eclipse Summit 08, Contents entry.

[edit] Installation

This section will walk through the installation of the Tigerstripe Buckminster Integration plug-in.

  1. Download TigerstripeBuckminsterFeature.zip and unzip the bundle into the Eclipse installation directory. Restart Eclipse, if necessary.

[edit] Example

This section will describe how to materialize your Tigerstripe workspace and provide a description of the required Buckminster configuration files.

[edit] Running the Example

  1. Open Eclipse. Create a new workspace for this tutorial.
  2. Navigate to the File -> Open a Component Query... dialog and paste the CQUERY's URL (below) into the dialog's "URL for query" text box.
    http://www.eclipse.org/tigerstripe/queries/eclipse-summit-08.cquery
  3. Click "OK". This will open the Buckminster CQUERY Editor.
  4. Click "Resolve and Materialize" in the CQUERY Editor. This will materialize the project's components from this example into your workspace.

If you are using the Tigerstripe perspective in Eclipse you will see the ClassLevel-Generator, common-model, and Equipment-model projects. If you see errors in any of the projects, simple clean and rebuild the workspace.

[edit] RMAP

The RMAP used in this tutorial is presented below. This is a standard RMAP file, with the exception of the "tigerstripe" and "tigerstripe.generator" component types. These component types are made available when the optional Tigerstripe Buckminster plug-in is installed.

For more information on RMAP files see the Resource Maps section of the Buckminster Introduction.

<?xml version="1.0" encoding="UTF-8"?>
<rmap
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://www.eclipse.org/buckminster/RMap-1.0"
  xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0">
	
  <searchPath name="default">
    <provider readerType="cvs" componentTypes="buckminster,tigerstripe,tigerstripe.generator" source="true">
      <uri format=":pserver:anonymous@dev.eclipse.org:/cvsroot/technology,org.eclipse.tigerstripe/samples/EclipseSummit08/{0}">
        <bc:propertyRef key="buckminster.component" />
      </uri>
    </provider>
  </searchPath>
	
  <locator searchPathRef="default" pattern=".*" />
	
</rmap>

[edit] Component Versioning

Tigerstripe components that are discovered via the project reference definition will not currently support versioning without "hints" supplied in a .cspec file. In order to resolve a specific version of a "referenced" Tigerstripe component a user will need to define a .cspec in the primary model project (or in a separate "meta" project) and explicitly define the dependency and version in the cspec. See the example below.

This .cspec would reside in the Equipment-model project.

<?xml version="1.0" encoding="UTF-8"?>
<cs:cspec xmlns:cs="http://www.eclipse.org/buckminster/CSpec-1.0" name="Equipment-model" componentType="buckminster" version="1.0.0" versionType="OSGi">
    <cs:dependencies>
        <cs:dependency name="common-model" componentType="tigerstripe" versionDesignator="[3.0.0,3.0.0]" versionType="OSGi"/>/>
    </cs:dependencies>
</cs:cspec>

For more information on CSPEC files see the Component Specifications section of the Buckminster Introduction.