Previous | Table of Contents | Next |
The operation attribute specifies which invocation semantics the communication service must provide for invocations of a particular
operation. An operation attribute is optional. The syntax for its specification is as follows:
(88) <op_attribute> ::= “oneway?
When a client invokes an operation with the oneway attribute, the invocation semantics are best-effort, which does not guarantee
delivery of the call; best-effort implies that the operation will be invoked at most once. An operation with the oneway attribute
must not contain any output parameters and must specify a void return type. An operation defined with the oneway attribute
may not include a raises expression; invocation of such an operation, however, may raise a standard system exception.
If an <op_attribute> is not specified, the invocation semantics is at-most-once if an exception is raised; the semantics are
exactly-once if the operation invocation returns successfully.