- From: David Booth <dbooth@w3.org>
- Date: Mon, 07 Jul 2003 10:48:37 -0400
- To: public-ws-desc-meps@w3.org
On Wednesday's call we talked about what client functions would be needed
in an interface for each of the p2-family patterns[1], and I think we made
some good progress in clarifying the effects of patterns on such an
interface. One question that arose was which of the functions were needed
by which client roles.
Here is a new summary of the client functions, grouped by pattern and
client role. I am assuming the same receiverCallback function can be used
to receive either a fault message or a regular output message. Again, this
is only one of many ways such a client library interface could be written,
but I think it's instructive to examine.
p2:
(Unlabeled message 1 sender role):
void multicastMessage(ServiceAddressList ss, Message m);
(Unlabeled output message 2 receiver role):
void registerMessageReceiverCallback(MessageReceiverCallback f);
(Unlabeled fault message 2 receiver role):
void registerMessageReceiverCallback(MessageReceiverCallback f);
p2a:
Client A:
void sendMessage(ServiceAddress s, Message m);
Client Bi:
void registerMessageReceiverCallback(MessageReceiverCallback f);
Client C:
void registerMessageReceiverCallback(MessageReceiverCallback f);
p2a1:
Client A:
void sendMessage(ServiceAddress s, Message m);
Client Bi:
void registerMessageReceiverCallback(MessageReceiverCallback f);
p2a2:
Client A:
void sendMessage(ServiceAddress s, Message m);
Client Bi:
void registerMessageReceiverCallback(MessageReceiverCallback f);
p2b:
Client A:
Message sendAndReceiveMessage(ServiceAddress s, Message m);
Client Bi:
void registerMessageReceiverCallback(MessageReceiverCallback f);
p2c:
Client A:
void sendMessage(ServiceAddress s, Message m);
Client B:
void registerMessageReceiverCallback(MessageReceiverCallback f);
Client C:
void registerMessageReceiverCallback(MessageReceiverCallback f);
p2d:
Client A:
void sendMessage(ServiceAddress s, Message m);
void registerMessageReceiverCallback(MessageReceiverCallback f);
Client B:
void registerMessageReceiverCallback(MessageReceiverCallback f);
p2d1:
Client A:
void sendMessage(ServiceAddress s, Message m);
Client B:
void registerMessageReceiverCallback(MessageReceiverCallback f);
p2e:
Client A:
Message sendAndReceiveMessage(ServiceAddress s, Message m);
p2umci-7:
Client A:
void multicastMessage(ServiceAddressList ss, Message m);
Client B:
void registerMessageReceiverCallback(MessageReceiverCallback f);
p3: (Uncertain. Depends on what is meant by "on the same channel".)
Reference
1.
http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl12/meps-vs-iops/meps-vs-iops_clean.htm
--
David Booth
W3C Fellow / Hewlett-Packard
Telephone: +1.617.253.1273
Received on Monday, 7 July 2003 10:48:41 UTC