00001 #ifndef _IT_BUS_WSADDRESSING_UTIL_H_ 00002 #define _IT_BUS_WSADDRESSING_UTIL_H_ 00003 00004 // @Copyright 2005 IONA Technologies, Plc. All Rights Reserved. 00005 // 00006 00007 #include <it_bus/api_defines.h> 00008 #include <it_bus/reference.h> 00009 00010 #include <it_bus/types.h> 00011 #include <it_bus/qname.h> 00012 00013 namespace WS_Addressing 00014 { 00015 class EndpointReferenceType; 00016 00017 class IT_BUS_API WSAddressingUtil 00018 { 00019 public: 00020 00021 static IT_Bus::QName 00022 get_service_qname( 00023 const EndpointReferenceType& epr 00024 ) throw((IT_Bus::Exception)); 00025 00026 static IT_Bus::String 00027 get_wsdl_location( 00028 const EndpointReferenceType& epr 00029 ) throw((IT_Bus::Exception)); 00030 00031 static IT_Bus::QName 00032 get_interface_name( 00033 const EndpointReferenceType& epr 00034 ) throw((IT_Bus::Exception)); 00035 00036 static void 00037 set_interface_name( 00038 const IT_Bus::QName& interface_name, 00039 EndpointReferenceType& epr 00040 ) throw((IT_Bus::Exception)); 00041 00042 static void 00043 set_group_name( 00044 const IT_Bus::String group_name, 00045 EndpointReferenceType& epr 00046 ) throw((IT_Bus::Exception)); 00047 00048 static void 00049 set_wsaw_service_endpoint( 00050 EndpointReferenceType& epr, 00051 const IT_Bus::QName& service_name, 00052 const IT_Bus::NCNameNillable& endpoint_name 00053 ) throw((IT_Bus::Exception)); 00054 00055 static void 00056 get_wsaw_service_endpoint( 00057 const EndpointReferenceType& epr, 00058 IT_Bus::QName& service_name, 00059 IT_Bus::NCNameNillable& endpoint_name 00060 ) throw((IT_Bus::Exception)); 00061 00062 static IT_Bool 00063 is_empty_epr( 00064 const EndpointReferenceType& epr 00065 ) throw((IT_Bus::Exception)); 00066 00067 private: 00068 00069 WSAddressingUtil(); 00070 }; 00071 } 00072 00073 #endif