| /* $Id$ |
| * |
| * Copyright 2007-2008 Cisco Systems Inc. |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); you may not |
| * use this file except in compliance with the License. You may obtain a copy |
| * of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| * License for the specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| module org.apache.etch.examples.example |
| |
| /** |
| * Service version of hello world. |
| */ |
| service Example |
| { |
| /** the number of times to perform the action */ |
| const int COUNT = 4 |
| |
| /** a simple view of time */ |
| enum Times |
| ( |
| /** the past */ |
| YESTERDAY, |
| /** right now */ |
| TODAY, |
| /** the future */ |
| TOMORROW |
| ) |
| |
| /** a way to speak about places */ |
| struct Point |
| ( |
| /** the x-coordinate value */ |
| double x, |
| /** the y-coordinate value */ |
| double y, |
| /** the z-coordinate value */ |
| double z |
| ) |
| |
| /** |
| * Exception thrown if ping doesn't work. |
| * @param msg the explanation. |
| */ |
| exception PongException ( string msg ) |
| |
| /** |
| * Says hello to the server. |
| * @param msg a greeting for the server. |
| * @param d the current date. |
| * @return the id of our hello |
| */ |
| @Timeout( 1234 ) |
| @Direction( Server ) |
| int helloServer( string msg, Datetime d ) |
| |
| /** |
| * Says hello to the client. |
| * @param msg a greeting for the client. |
| * @return the id of our hello |
| */ |
| @Timeout( 2345 ) |
| @Direction( Client ) |
| int helloClient( string msg ) |
| |
| /** |
| * Says hello to the client or server. |
| * @param msg a greeting for the client or server. |
| * @return the id of our hello |
| */ |
| @Timeout( 3456 ) |
| @Direction( Both ) |
| int hello( string msg ) |
| |
| /** |
| * Says howdy to the server. Oneway. |
| * @param msg a greeting for the server. |
| */ |
| @Oneway |
| @Direction( Server ) |
| void howdyServer( string msg ) |
| |
| /** |
| * Says howdy to the client. Oneway. |
| * @param msg a greeting for the client. |
| */ |
| @Oneway |
| @Direction( Client ) |
| void howdyClient( string msg ) |
| |
| /** |
| * Says howdy to the client or server. Oneway. |
| * @param msg a greeting for the client or server. |
| */ |
| @Oneway |
| @Direction( Both ) |
| void howdy( string msg ) |
| |
| /** |
| * Pings the other side. |
| * @throws PongException |
| */ |
| @Timeout( 4567 ) |
| @Direction( Both ) |
| @AsyncReceiver( Queued ) |
| void ping() throws PongException |
| } |