00001 00032 #ifndef LLSERVICEBUILDER_H 00033 #define LLSERVICEBUILDER_H 00034 00035 #include <string> 00036 #include <map> 00037 #include "llerror.h" 00038 00039 class LLSD; 00040 00046 class LLServiceBuilder 00047 { 00048 LOG_CLASS(LLServiceBuilder); 00049 public: 00050 LLServiceBuilder(void) {} 00051 ~LLServiceBuilder(void) {} 00052 00058 void loadServiceDefinitionsFromFile(const std::string& service_filename); 00059 00065 std::string buildServiceURI(const std::string& service_name); 00066 00075 std::string buildServiceURI( 00076 const std::string& service_name, 00077 const LLSD& option_map); 00078 00079 public: 00086 void createServiceDefinition( 00087 const std::string& service_name, 00088 LLSD& service_url); 00089 00090 protected: 00091 std::map<std::string, std::string> mServiceMap; 00092 }; 00093 00094 00095 00096 #endif