00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef RESOURCEPOOL_ORACLE_ORACLECONNECT_HH
00025 #define RESOURCEPOOL_ORACLE_ORACLECONNECT_HH
00026
00027 #ifndef INCLUDED_GC_PTR_HH
00028 #include "mm/gc_ptr.hh"
00029 #endif
00030
00031 #include <string>
00032 #include <sstream>
00033
00034 #ifndef ORACLE_INCLUDE_FLEXLEXER
00035 #undef yyFlexLexer
00036 #define yyFlexLexer oracle_connectFlexLexer
00037 #include <FlexLexer.h>
00038 #endif
00039
00040 namespace fatalmind {
00041
00042 class oracle_connect: public oracle_connectFlexLexer {
00043 public:
00044 oracle_connect(const std::string& service, const std::string& user, const std::string& pass);
00045 oracle_connect(const std::string& connect);
00046 oracle_connect(const oracle_connect& oc);
00047
00048 std::string getUser() const;
00049 std::string getPass() const;
00050 std::string getService() const;
00051
00052 private:
00053 void _validate() const;
00054 void _parsingError(char ch) const;
00055 int yylex ();
00056
00057 std::string _user;
00058 std::string _pass;
00059 std::string _service;
00060 };
00061 }
00062
00063 #endif