00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef _QORE_QOREURL_H
00026
00027 #define _QORE_QOREURL_H
00028
00030 class QoreURL {
00031 private:
00033 struct qore_url_private *priv;
00034
00035 DLLLOCAL void zero();
00036 DLLLOCAL void reset();
00037 DLLLOCAL void parseIntern(const char *url);
00038
00040 DLLLOCAL QoreURL(const QoreURL&);
00041
00043 DLLLOCAL QoreURL& operator=(const QoreURL&);
00044
00045 public:
00047
00049 DLLEXPORT QoreURL();
00050
00052
00055 DLLEXPORT QoreURL(const char *url);
00056
00058
00061 DLLEXPORT QoreURL(const class QoreString *url);
00062
00064 DLLEXPORT ~QoreURL();
00065
00067
00071 DLLEXPORT int parse(const char *url);
00072
00074
00078 DLLEXPORT int parse(const class QoreString *url);
00079
00081
00083 DLLEXPORT bool isValid() const;
00084
00086
00098 DLLEXPORT QoreHashNode *getHash();
00099
00101
00103 DLLEXPORT const QoreString *getHost() const;
00104
00106
00108 DLLEXPORT const QoreString *getUserName() const;
00109
00111
00113 DLLEXPORT const QoreString *getPassword() const;
00114
00116
00118 DLLEXPORT const QoreString *getPath() const;
00119
00121 DLLEXPORT const QoreString *getProtocol() const;
00122
00124
00126 DLLEXPORT int getPort() const;
00127
00128
00129
00130
00132
00135 DLLEXPORT char *take_path();
00136
00138
00141 DLLEXPORT char *take_username();
00142
00144
00147 DLLEXPORT char *take_password();
00148
00150
00153 DLLEXPORT char *take_host();
00154 };
00155
00156 #endif