| <title>Intro to the Order System Sample</title> | |
| <style type="text/css"> | |
| code { background-color:lightgray; } | |
| img { border:0px; } | |
| </style> | |
| <body> | |
| <h1>A Simple Order System</h1> | |
| <h2>Package Overview</h2> | |
| See the individual class comments for details. | |
| <dl> | |
| <dt><img src="images/package.gif"> <b><code>package org.objectteams.sample.ordersystem</code></b> | |
| <dd>A simple main class triggering some actions in batch mode. | |
| <dt><img src="images/package.gif"> <b><code>package org.objectteams.sample.ordersystem.data</code></b> | |
| <dd>Plain data classes <code>Customer</code> and <code>Address</code> | |
| <dt><img src="images/package.gif"> <b><code>package org.objectteams.sample.ordersystem.store</code></b> | |
| <dd>This package models a <code>Storage</code> and its <code>StockItems</code>.<br /> | |
| These are normal data objects with the usual access methods.<br /> | |
| Throughout the class <code>StockItem</code> you will find "callin markers" | |
| (<img src="images/callinbinding_obj.gif">) in the gutter, | |
| indicating that the corresponding methods are adapted by one or more aspects in the system. | |
| <dt><img src="images/package.gif"> <b><code>package org.objectteams.sample.ordersystem.reservation</code></b> | |
| <dl> | |
| <dt><img src="images/team_obj.gif"> <code>team class Reservations</code> | |
| <dd>A simple reservation component; abstract at this level because it is | |
| completely undefined what kinds of <img src="images/role_obj.gif"> <code>Reservable</code> items are | |
| being managed. | |
| <dt><img src="images/team_obj.gif"> <code>team class StockReservations</code> | |
| <dd>Binding the reservation component in order to manage <code>StockItems</code>. | |
| </dl> | |
| <dt><img src="images/package.gif"> <b><code>package org.objectteams.sample.ordersystem.order</code></b> | |
| <dl> | |
| <dt><img src="images/team_obj.gif"> <code>team class Order</code> | |
| <dd>A simple ordering component; abstract at this level because it is | |
| completely undefined what kinds of <img src="images/role_obj.gif"> <code>Items</code> items are | |
| being managed. <br /> | |
| However, each order is associated to a <img src="images/role_obj.gif"> <code>Customer</code> | |
| and his or her <img src="images/role_obj.gif"> <code>Address</code>. Please note, that these | |
| role classes are not related to those classes defined in <code>org.objectteams.samples.data</code>. | |
| <dt><img src="images/team_obj.gif"> <code>team class StockOrder</code> | |
| <dd>Binding the order component in order to manage <code>StockItems</code>. | |
| </dl> | |
| <dt><img src="images/package.gif"> <b><code>package org.objectteams.sample.ordersystem.gui</code></b> | |
| <dl><img src="images/class_public.gif"> <code>class OrderSystemMainFrame</code> | |
| <dd>Definition of the GUI of this system. Most of this class might have been generated by | |
| a Form Designer. | |
| <dt><img src="images/team_obj.gif"> <code>team class ModelAdapterTeam</code> | |
| <dd>This aspect binds classes from the packages <code>data</code> and <code>store</code> to | |
| the GUI. | |
| <dt><img src="images/team_obj.gif"> <code>team class ControllerAdapterTeam</code> | |
| <dd>This aspect contains all listeners and attaches them to the GUI. | |
| <dt><img src="images/team_obj.gif"> <code>team class GUIAdapterTeam</code> | |
| <dd>This aspect ensures that each window will appear in the middle of the screen. | |
| <dt> | |
| <dd> | |
| </dl> | |
| </dl> | |
| <h2>Running the application</h2> | |
| In order to see the full functionality enter the following information to the launch configuration: | |
| <table padding=3 border=1> | |
| <tr><td colspan=2><b>Tab <img src="images/class_public.gif"> Main</b> | |
| <tr><td>Main class<td><code>org.eclipse.objectteams.samples.ordersystem.gui.GUITest</code> | |
| <tr><td colspan=2><b>Tab <img src="images/team_obj.gif"> Team Activation</b> | |
| <tr><td>Add: <td><code>ModelAdapterTeam</code><br /> | |
| <code>ControllerAdapterTeam</code><br /> | |
| <code>GUIAdapterTeam</code> | |
| </table> | |
| </body> | |
| </html> |