...
Code Block |
---|
|
public interface SimplePrx : Ice.ObjectPrx
{
void op();
void op(Ice.OptionalContext __context = new Ice.OptionalContext());
}
|
...
For each operation in the interface, the proxy class has a member function of the same name. For the preceding example, we find that the operation op
has been mapped to the method op
. The optional parameter __context
is for use by the Ice run time to store information about how to deliver a request. You normally do not need to use it. (We examine the __context
parameter in detail in Request Contexts. The parameter is also used by IceStorm.)
...
A value of null
denotes the null proxy. The null proxy is a dedicated value that indicates that a proxy points "nowhere" (denotes no object).
Interface Inheritance in C#
Inheritance relationships among Slice interfaces are maintained in the generated C# classes. For example:
Code Block |
---|
|
module M
{
interface A { ... }
interface B { ... }
interface C extends A, B { ... }
} |
The generated code for CPrx
reflects the inheritance hierarchy:
Code Block |
---|
|
namespace M
{
public interface CPrx : APrx, BPrx
{
...
}
} |
Given a proxy for C
, a client can invoke any operation defined for interface C
, as well as any operation inherited from C
's base interfaces.
...