MODULE "RoutePlan" CORBA ORBIX sole "RoutePlanModule"
/* module takes two cities, and returns routes between those cities
*/
METHOD RoutePlan.AllRoutes (IN Cities, RES Route, RES
NoRoutes, RES RoutesList)
PARAM RoutePlan.Cities OPAQUE /* data containing cities
*/
PARAM RoutePlan.Route OPAQUE REP /* one possible route
between cities, successive extracts of this parameter within one invocation
will return all the routes */
PARAM RoutePlan.RoutesList OPAQUE /* a list of all the
possible routes */
PARAM RoutePlan.NoRoutes INT /* number of routes found
*/
MODULE "RouteCost" CORBA ORBIX sole "RouteCostModule"
/* module takes a route and some cargo (goods), and returns the cost
of transporting the goods along that route */
METHOD RouteCost.OneRouteCost(IN Route, IN Goods, RES
RouteCost)
PARAM RouteCost.Route OPAQUE /* a route (between cities)
*/
PARAM RouteCost.Goods OPAQUE /* goods transported along
Route */
PARAM RouteCost.RouteCost OPAQUE /* cost to send goods
along Route */
MODULE "RouteChoose" CORBA ORBIX sole "RouteChooseModule"
/* module takes several routes and returns the best route, based on
the decision criterion */
METHOD RouteChoose.BestRoute(IN RouteCosts, IN Criterion,
RES BestRoute)
/* choose best route from among RouteCosts */
METHOD RouteChoose.AddOneRouteToSet(IN OneRoute, OUT
Set)
/* add one route cost to RouteCosts */
PARAM RouteChoose.RouteCosts OPAQUE /* list of route
costs */
PARAM RouteChoose.Criterion OPAQUE /* criterion to pick
bect route */
PARAM RouteChoose.BestRoute OPAQUE /* best route, based
on criterion */
PARAM RouteChoose.OneRoute OPAQUE /* one route to add
to RouteCosts */
PARAM RouteChoose.Set OPAQUE /* set of routes */
MODULE "CmathS" JAVA sole "SimpleMathChaims"
/* provides simple mathematics */
METHOD CmathS.ADD (IN arg1, IN arg2, RES res)
/* constraint: arg1, arg2 and res have to be of same type */
PARAM CmathS.arg1 INT, REAL, DATETIME
PARAM CmathS.arg2 INT, REAL, DATETIME
PARAM CmathS.res INT, REAL, DATETIME