/// $Id$ /// Compliant with OMG 06-04-01 Section 6.5.3 #if !defined (CCM_RECEPTACLE_IDL) #define CCM_RECEPTACLE_IDL #include "ccm/CCM_Base.idl" #include "ccm/CCM_Navigation.idl" #include "ccm/CCM_Cookie.idl" module Components { typeprefix Components "omg.org"; #if !defined (CCM_LW) valuetype ConnectionDescription { public Cookie ck; public Object objref; }; typedef sequence ConnectionDescriptions; #endif #if !defined (CCM_LW) valuetype ReceptacleDescription : PortDescription { public boolean is_multiple; public ConnectionDescriptions connections; }; typedef sequence ReceptacleDescriptions; #endif exception ExceededConnectionLimit {}; exception CookieRequired {}; interface Receptacles { Cookie connect (in FeatureName name, in Object connection) raises (InvalidName, InvalidConnection, AlreadyConnected, ExceededConnectionLimit); Object disconnect (in FeatureName name, in Cookie ck) raises (InvalidName, InvalidConnection, CookieRequired, NoConnection); #if !defined (CCM_LW) ConnectionDescriptions get_connections (in FeatureName name) raises (InvalidName); #endif #if !defined (CCM_LW) ReceptacleDescriptions get_all_receptacles (); #endif #if !defined (CCM_LW) ReceptacleDescriptions get_named_receptacles (in NameList names) raises (InvalidName); #endif }; }; #endif /* CCM_RECEPTACLE_IDL */