Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Lyo/TRSSDK"

< Lyo
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
The Tracked Resource Set (TRS) Software Development Kit (SDK) consists of two primary pieces; a toolkit and reference applications.  
+
The [http://open-services.net/wiki/core/TrackedResourceSet-2.0/ Tracked Resource Set (TRS)] Software Development Kit (SDK) consists of two primary pieces; a toolkit and reference applications.  
  
= TRS Toolkit  =
+
<br>
  
The goal of the TRS toolkit is to provide a simple set of java beans that represent the entities within the TRS specification. Additionally, a convenient set of string constants that represent the TRS properties is provided.  
+
= TRS SDK Prerequisites  =
 +
 
 +
*[http://eclipse.org/downloads Eclipse 3.6 or higher IDE]
 +
*[http://eclipse.org/egit/download/ EGit] team provider for git (recommended) or [http://git-scm.com/download git command line package].
 +
*[http://www.eclipse.org/m2e/download/ m2eclipse] for Maven support in the Eclipse IDE
 +
*The Lyo projects requires a Java 1.6 compiler and Java 1.6 runtime. The Eclipse project settings have been set appropriately. If you are building outside of Eclipse, please use Java 1.6.
  
 
<br>  
 
<br>  
  
== Loading the TRS Toolkit  ==
+
= TRS Toolkit  =
  
=== Prerequisites  ===
+
The goal of the TRS toolkit is to provide a simple set of java beans that represent the entities within the TRS specification. Also, a convenient set of string constants that represent the TRS properties is provided. In addition to these code components which can be used to create TRS implementations, a test suite component exists. &nbsp;The test suite consists of a series of JUnit compliance tests which validate a TRS endpoint conforms to the TRS specification.  
 
+
*[http://eclipse.org/downloads Eclipse 3.6 or higher IDE]
+
*[http://eclipse.org/egit/download/ EGit ]team provider for git (recommended) or [[Git command line package|git command line package]].
+
*[http://www.eclipse.org/m2e/download/ m2eclipse ]for Maven support in the Eclipse IDE
+
*Lyo client requires a Java 1.6 compiler and Java 1.6 runtime. The Eclipse project settings have been set appropriately. If you are building outside of Eclipse, please use Java 1.6.
+
  
 
<br>  
 
<br>  
 +
 +
== Loading the TRS Toolkit  ==
  
 
=== Clone the Lyo Core git repository  ===
 
=== Clone the Lyo Core git repository  ===
Line 31: Line 33:
 
<br>  
 
<br>  
  
=== Import Eclipse projects from the git repository  ===
+
=== Clone the Lyo Testsuite git repository  ===
 +
 
 +
*Repeat the above steps using&nbsp;git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.testsuite.git as the repository URL.&nbsp;
 +
 
 +
This should load a second org.eclipse.lyo.testsuite repository into your Git Repositories view.
 +
 
 +
<br>
 +
 
 +
=== Import Eclipse projects from the Lyo Core git repository  ===
  
 
*In the Git Repositories view, right click org.eclipse.lyo.core and select Import Projects  
 
*In the Git Repositories view, right click org.eclipse.lyo.core and select Import Projects  
Line 53: Line 63:
 
[Optional] Add the projects to a new working set.  
 
[Optional] Add the projects to a new working set.  
  
=== <br>Build all projects  ===
+
<br>
 +
 
 +
=== Import the TRS compliance test suite from the Lyo Testsuite git repository  ===
 +
 
 +
*In the Git Repositories view, right click org.eclipse.lyo.testsuite and select Import Projects
 +
*Select the Import Existing Projects wizard and click Next
 +
*Import the org.eclipse.lyo.testsuite.trs projects.
 +
 
 +
<br>  
 +
 
 +
=== Build all projects  ===
  
 
*Expand the OSLC4J project  
 
*Expand the OSLC4J project  
Line 60: Line 80:
 
*Repeat these steps for the following projects in the listed order:
 
*Repeat these steps for the following projects in the listed order:
  
&nbsp; &nbsp; OSLC4JJenaProvider<br>&nbsp; &nbsp; OSLC4JJson4JProvider<br>&nbsp; &nbsp; OSLC4JWink<br>&nbsp; &nbsp; org.eclipse.lyo.core.utils<br>&nbsp; &nbsp; org.eclipse.lyo.core.trs
+
&nbsp; &nbsp; OSLC4JJenaProvider  
  
<br>  
+
&nbsp; &nbsp; OSLC4JJson4JProvider
 +
 
 +
&nbsp; &nbsp; OSLC4JWink
 +
 
 +
&nbsp; &nbsp; org.eclipse.lyo.core.utils
 +
 
 +
&nbsp; &nbsp; org.eclipse.lyo.core.trs
 +
 
 +
&nbsp; &nbsp; org.eclipse.lyo.testsuite.trs
 +
 
 +
&nbsp; &nbsp;<br>  
  
 
== Exploring the TRS Toolkit  ==
 
== Exploring the TRS Toolkit  ==
  
The goal of the TRS toolkit is to provide an inclusive library stack for adopting TRS. This framework will provide the ability for:
+
Under most circumstances the best way to learn how to use the TRS Toolkit is through exploring the TRS reference application (continue on to next section). &nbsp;However, some additional details concerning the TRS Toolkit may be found on the [[Lyo/TRSToolkit|Exploring the TRS Toolkit]] page.
  
*Generating the TRS services via JAX-RS using Apache Wink
+
<br>
*(De)Serialization of the TRS Beans through OSLC4J
+
  
In addition to the framework provided by OSLC4J the TRS toolkit consists of a set of Java beans that may be used with or without the provided framework.
+
= TRS Reference Application  =
 +
 
 +
The reference application is written in Java and demonstrates the implementation of a TRS Provider using change requests as the resources that are being created, modified and deleted. &nbsp;JAX-RS, an annotation based Java RESTful specification, and Apache Wink, a&nbsp;JAX-RS server side component, are used to define and serve up the TRS provider endpoints.
 +
 
 +
While this reference application depends on certain technlogoies, the core TRS concepts demonstrated within may be applied to other languages, frameworks, and resource domains.  
  
 
<br>  
 
<br>  
  
'''Beans'''
+
== Learning Objectives  ==
  
*TrackedResourceSet
+
<span style="line-height: 1.5em;">By working through the material for the TRS Reference Application, you will learn how to perform the following tasks:</span>
*Base
+
 
*AbstractChangeLog
+
*Use the TRS toolkit to create a TRS provider using JAX-RS
*ChangeLog
+
*Configure and use the TRS compliance test suite to verify the validity of a TRS provider<br>
*EmptyChangeLog
+
*ChangeEvent
+
*Creation
+
*Modification
+
*Deletion<br>
+
  
 
<br>  
 
<br>  
  
= TRS Reference Application  =
+
== <span style="line-height: 1.5em;">TRS Reference Application Prerequisites</span> ==
 +
 
 +
*The TRS Reference Application saves change requests to c:\temp\ChangeRequests.xml. Ensure that you have write access to this file. If you are on a Linux or Mac system, or if you want to change the default location, you can open up the org.eclipse.lyo.rio.trs.Constants.java file and change the PATH_FLAT_FILE location to point to a location of your choosing.<br>
 +
*Before following the steps in the following sections please make sure the TRS Toolkit from section 2.1 has been loaded into your workspace.
 +
 
 +
<br>
 +
 
 +
== Loading the TRS Reference Application  ==
 +
 
 +
=== Clone the Lyo Rio git repository  ===
 +
 
 +
This example assumes EGit is being used.
 +
 
 +
*Open the Git Repositories view in Eclipse and click the Clone Git Repository icon
 +
*Usegit://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.rio.git as the URI (browse it also on line). User/Password are not required.
 +
*On the Branch Selection page, select the master branch
 +
*On the Local Destination page, specify a location or accept the default and click Finish
 +
 
 +
The repository should now show up in your Git Repositories view.
 +
 
 +
<br>
 +
 
 +
=== Import Eclipse projects from the git repository  ===
 +
 
 +
*In the Git Repositories view, right click org.eclipse.lyo.rio and select Import Projects
 +
*Select the Import Existing Projects wizard and click Next
 +
*Import the org.eclipse.lyo.rio.trs project<br><br>
 +
 
 +
== Building and Running the TRS Reference Application  ==
 +
 
 +
*Expand the org.eclipse.lyo.rio.trs project
 +
*Right click pom.xml -&gt; Run As -&gt; Maven clean
 +
*Right click pom.xml -&gt; Run As -&gt; Maven install
 +
 
 +
Once the build completes,&nbsp;right-click Launch TRS Reference App.launch and click Run As -&gt; Launch TRS Reference App.
 +
 
 +
The reference application is launched within an embedded Jetty server and the message "TRS Reference Application launched at http://localhost:8082/org.eclipse.lyo.rio.trs/index.html" is displayed in the Console view. The link in the message opens a web page that describes the various links that are available in the reference application.
 +
 
 +
<br>
  
Before following the steps in this section please make sure the TRS Toolkit from section 1 has been loaded into your workspace. The reference application is written in Java and demonstrates the implementation of a TRS Provider using change requests as the resources that are being created, modified and deleted. &nbsp;JAX-RS, an annotation based Java RESTful specification, and Apache Wink, a&nbsp;JAX-RS server side component, are used to define and serve up the TRS provider endpoints.
+
== TRS Reference Application Guided Tour  ==
  
While this reference application depends on certain technlogoies, the core TRS concepts demonstrated within may be applied to other languages, frameworks, and resource domains.
+
For a walkthrough of the TRS reference application and its capabilities please see the [[Lyo/TRSReferenceApplication|TRS reference application guided tour]].

Revision as of 17:40, 14 March 2013

The Tracked Resource Set (TRS) Software Development Kit (SDK) consists of two primary pieces; a toolkit and reference applications.


TRS SDK Prerequisites

  • Eclipse 3.6 or higher IDE
  • EGit team provider for git (recommended) or git command line package.
  • m2eclipse for Maven support in the Eclipse IDE
  • The Lyo projects requires a Java 1.6 compiler and Java 1.6 runtime. The Eclipse project settings have been set appropriately. If you are building outside of Eclipse, please use Java 1.6.


TRS Toolkit

The goal of the TRS toolkit is to provide a simple set of java beans that represent the entities within the TRS specification. Also, a convenient set of string constants that represent the TRS properties is provided. In addition to these code components which can be used to create TRS implementations, a test suite component exists.  The test suite consists of a series of JUnit compliance tests which validate a TRS endpoint conforms to the TRS specification.


Loading the TRS Toolkit

Clone the Lyo Core git repository

This example assumes EGit is being used.

  • Open the Git Repositories view in Eclipse and click the Clone Git Repository icon
  • Use git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.core.git as the URI (browse it also on line). User/Password are not required.
  • On the Branch Selection page, select the master branch
  • On the Local Destination page, specify a location or accept the default and click Finish

The repository should now show up in your Git Repositories view.


Clone the Lyo Testsuite git repository

This should load a second org.eclipse.lyo.testsuite repository into your Git Repositories view.


Import Eclipse projects from the Lyo Core git repository

  • In the Git Repositories view, right click org.eclipse.lyo.core and select Import Projects
  • Select the Import Existing Projects wizard and click Next
  • Import the following projects:

   OSLC4J

   OSLC4JJenaProvider

   OSLC4JJson4JProvider

   OSLC4JWink

   org.eclipse.lyo.core.utils

   org.eclipse.lyo.core.trs


You may import the other projects if you like, but they are not required for building the TRS Toolkit.

[Optional] Add the projects to a new working set.


Import the TRS compliance test suite from the Lyo Testsuite git repository

  • In the Git Repositories view, right click org.eclipse.lyo.testsuite and select Import Projects
  • Select the Import Existing Projects wizard and click Next
  • Import the org.eclipse.lyo.testsuite.trs projects.


Build all projects

  • Expand the OSLC4J project
  • Right click pom.xml -> Run As -> Maven clean
  • Right click pom.xml -> Run As -> Maven install
  • Repeat these steps for the following projects in the listed order:

    OSLC4JJenaProvider

    OSLC4JJson4JProvider

    OSLC4JWink

    org.eclipse.lyo.core.utils

    org.eclipse.lyo.core.trs

    org.eclipse.lyo.testsuite.trs

   

Exploring the TRS Toolkit

Under most circumstances the best way to learn how to use the TRS Toolkit is through exploring the TRS reference application (continue on to next section).  However, some additional details concerning the TRS Toolkit may be found on the Exploring the TRS Toolkit page.


TRS Reference Application

The reference application is written in Java and demonstrates the implementation of a TRS Provider using change requests as the resources that are being created, modified and deleted.  JAX-RS, an annotation based Java RESTful specification, and Apache Wink, a JAX-RS server side component, are used to define and serve up the TRS provider endpoints.

While this reference application depends on certain technlogoies, the core TRS concepts demonstrated within may be applied to other languages, frameworks, and resource domains.


Learning Objectives

By working through the material for the TRS Reference Application, you will learn how to perform the following tasks:

  • Use the TRS toolkit to create a TRS provider using JAX-RS
  • Configure and use the TRS compliance test suite to verify the validity of a TRS provider


TRS Reference Application Prerequisites

  • The TRS Reference Application saves change requests to c:\temp\ChangeRequests.xml. Ensure that you have write access to this file. If you are on a Linux or Mac system, or if you want to change the default location, you can open up the org.eclipse.lyo.rio.trs.Constants.java file and change the PATH_FLAT_FILE location to point to a location of your choosing.
  • Before following the steps in the following sections please make sure the TRS Toolkit from section 2.1 has been loaded into your workspace.


Loading the TRS Reference Application

Clone the Lyo Rio git repository

This example assumes EGit is being used.

  • Open the Git Repositories view in Eclipse and click the Clone Git Repository icon
  • Usegit://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.rio.git as the URI (browse it also on line). User/Password are not required.
  • On the Branch Selection page, select the master branch
  • On the Local Destination page, specify a location or accept the default and click Finish

The repository should now show up in your Git Repositories view.


Import Eclipse projects from the git repository

  • In the Git Repositories view, right click org.eclipse.lyo.rio and select Import Projects
  • Select the Import Existing Projects wizard and click Next
  • Import the org.eclipse.lyo.rio.trs project

Building and Running the TRS Reference Application

  • Expand the org.eclipse.lyo.rio.trs project
  • Right click pom.xml -> Run As -> Maven clean
  • Right click pom.xml -> Run As -> Maven install

Once the build completes, right-click Launch TRS Reference App.launch and click Run As -> Launch TRS Reference App.

The reference application is launched within an embedded Jetty server and the message "TRS Reference Application launched at http://localhost:8082/org.eclipse.lyo.rio.trs/index.html" is displayed in the Console view. The link in the message opens a web page that describes the various links that are available in the reference application.


TRS Reference Application Guided Tour

For a walkthrough of the TRS reference application and its capabilities please see the TRS reference application guided tour.

Copyright © Eclipse Foundation, Inc. All Rights Reserved.