Main Page | Class Hierarchy | Class List | File List | Class Members

XSoap12Proxy.hpp

00001 #ifndef XSOAP12_PROXY_H 00002 #define XSOAP12_PROXY_H 00003 00004 #include <map> 00005 #include <ostream> 00006 00007 #include <msl/Sptr.h> 00008 #include <msl/Mutex.h> 00009 00010 #include <wsit/ArgList.h> 00011 #include <wsit/Result.h> 00012 00013 #include <proteus/Invocation.h> 00014 #include <proteus/VobjectFactory.h> 00015 00016 #include "XSoap12Serializer.hpp" 00017 #include "XSoap12Deserializer.hpp" 00018 00019 namespace xsoap { 00020 00022 00029 class XSoap12Proxy { 00030 00031 public: 00032 //Constructor 00033 XSoap12Proxy() {} 00034 public: 00035 00036 typedef std::map<std::string, proteus::VobjectFactory *> vf_map; 00037 //Methods 00038 public: 00039 00041 00049 void registerVobj(const std::string& type, 00050 proteus::VobjectFactory *f); 00051 private: 00052 // Disallow there unless specifically allowed. 00053 XSoap12Proxy(const XSoap12Proxy &); 00054 XSoap12Proxy &operator=(const XSoap12Proxy&); 00055 00056 protected: 00057 00058 void packArgList(const wsit::ArgList_sptr &args, 00059 XSoap12Serializer& packer); 00060 wsit::ArgList_sptr unpackArgList(XSoap12Deserializer& unpaker); 00061 00062 00063 private: 00064 00065 vf_map m_vobjectFactories; 00066 mutable msl::Mutex m_lock; 00067 00068 }; 00069 00070 } 00071 #endif 00072 00073 00074 00075 00076 00077 00078 00079 00080 00081 00082 00083

Generated on Sat Jun 5 00:52:18 2004 for XSoap-C++ by doxygen 1.3.7