Jump to: navigation, search

Tigerstripe Buckminster Integration Tutorial

Revision as of 17:59, 10 November 2008 by Jistrawn.cisco.com (Talk | contribs)

< To: Tigerstripe_Tutorials

Prerequisites

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

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.

Installation

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

Example

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

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.

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>

Versioned Components

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.

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>