C++ Web Framework  3.0
constants.h
1 /*
2  Copyright 2017 Herik Lima de Castro and Marcelo Medeiros Eler
3  Distributed under MIT license, or public domain if desired and
4  recognized in your jurisdiction.
5  See file LICENSE for detail.
6 */
7 
8 #ifndef CONSTANTS_H
9 #define CONSTANTS_H
10 
11 #include <QString>
12 #include <QByteArray>
13 #include "cppwebframework_global.h"
14 
15 CWF_BEGIN_NAMESPACE
16 //CONFIGURATION CONSTANTS
17 namespace CONFIGURATION
18 {
19  const QByteArray CPP_CONFIG = "/config/";
20  const QByteArray CPP_WEB_INI = "CPPWeb.ini";
21  const QByteArray CPP_LOG_FILE = "CPPWebServer.log";
22  const QString CPP_LOG_VAR = "cwf_log_file";
23  const QString CPP_LOG_MAX_VAR = "cwf_log_max";
24 }
25 
26 //XML CONSTANTS
27 namespace XML
28 {
29  const QByteArray HEADER = "<?xml version=\"1.0\" encoding=\"iso-8859-1\" ?>\n";
30 }
31 
32 //GETTER AND SETTER CONSTANTS
33 namespace GET_SET
34 {
35  const QString GET_LOWER = "get";
36  const QString SET_LOWER = "set";
37  const QString GET_UPPER = "GET";
38  const QString SET_UPPER = "SET";
39 }
40 
41 //STATUS CONSTANTS
42 namespace STATUS
43 {
44  const QByteArray STATUS_401 = "/config/cppwebserverpages/401.view";
45  const QByteArray STATUS_403 = "/config/cppwebserverpages/403.view";
46  const QByteArray STATUS_404 = "/config/cppwebserverpages/404.view";
47  const QByteArray NOT_FOUND = "Not Found";
48 }
49 
50 //CSTL CONSTANTS
51 namespace CSTL
52 {
53  //CSTL TAGS CONSTANTS
54  namespace TAG
55  {
56  const QString OUT = "out";
57  const QString FOR = "for";
58  const QString IF = "if";
59  const QString IMPORT = "import";
60  const QByteArray BEGIN = "<cstl>";
61  const QByteArray END = "</cstl>";
62 
63  //PROPERTIES CONSTANTS
64  namespace PROPERTY
65  {
66  const QString VAR = "var";
67  const QString ERROR = "error";
68  const QString CONDITION = "condition";
69 
70  namespace IMPORT
71  {
72  const QString URL = "url";
73  }
74 
75  namespace FOR
76  {
77  const QString ITEMS = "items";
78  const QString FROM = "from";
79  const QString TO = "to";
80  const QString INCREMENT = "increment";
81  }
82 
83  namespace IF
84  {
85  const QString EQUAL = "equal";
86  const QString DIFFERENT = "different";
87  const QString GREATER = "greater";
88  const QString GREATER_EQUAL = "greater_equal";
89  const QString LESS = "less";
90  const QString LESS_EQUAL = "less_equal";
91  }
92  }
93  }
94 
95  //SUPORTED TYPES CONSTANTS
96  namespace SUPPORTED_TYPES
97  {
98  const QString QSTRING = "QString";
99  const QString STD_STRING = "std::string";
100  const QString BOOL = "bool";
101  const QString CHAR = "char";
102  const QString UNSIGNED_CHAR = "uchar";
103  const QString SHORT = "short";
104  const QString UNSIGNED_SHORT = "ushort";
105  const QString INT = "int";
106  const QString UNSIGNED_INT = "uint";
107  const QString LONG = "long";
108  const QString UNSIGNED_LONG = "ulong";
109  const QString LONG_LONG = "qlonglong";
110  const QString UNSIGNED_LONG_LONG = "qulonglong";
111  const QString FLOAT = "float";
112  const QString DOUBLE = "double";
113  const QString CWF_QLISTOBJECT = "CWF::QListObject";
114  }
115 }
116 
117 //CONTENT TYPE CONSTANTS
118 namespace HTTP
119 {
120  const QByteArray SERVER = "Server";
121  const QByteArray SERVER_VERSION = "C++-Web-Server/3.1";
122  const QByteArray DATA = "Data";
123  const QByteArray TRANSFER_ENCODING = "Transfer-Encoding";
124  const QByteArray CHUNKED = "chunked";
125  const QByteArray END_LINE = "\r\n";
126  const QByteArray SEPARATOR = ": ";
127  const QByteArray HTTP_1_1 = "HTTP/1.1 ";
128  const QByteArray END_OF_MENSAGE = "\r\n\r\n";
129  const QByteArray END_OF_MENSAGE_WITH_ZERO = "0\r\n\r\n";
130  const QByteArray CONTENT_TYPE = "Content-Type";
131  const QByteArray CONTENT_LENGTH = "Content-Length";
132  const QByteArray CONTENT_DISPOSITION = "Content-Disposition";
133  const QByteArray CONTENT_DISPOSITION_COLON = "Content-Disposition:";
134  const QByteArray CONTENT_DISPOSITION_COLON_SPACE = "Content-Disposition: ";
135  const QByteArray MULTIPART = "multipart";
136  const QByteArray URLENCODED = "urlencoded";
137  const QByteArray COOKIE = "Cookie";
138  const QByteArray SET_COOKIE = "Set-Cookie: ";
139  const QByteArray SESSION_ID = "sessionId";
140  const QByteArray FILENAME = "filename";
141  const QByteArray FORM_DATA_COLON_SPACE = "form-data; ";
142  const QByteArray WEBKIT = "WebKit";
143  const QByteArray LOCATION = "Location";
144  const QByteArray REDIRECT = "Redirect";
145  const QByteArray SEE_OTHER = "See Other";
146  const QByteArray ACCEPT_ENCODING = "Accept-Encoding";
147  const QByteArray ACCEPT_LANGUAGE = "Accept-Language";
148  const QByteArray HOST = "Host";
149  const QByteArray USER_AGENT = "User-Agent";
150  const QByteArray OK = "OK";
151  /*
152  const QByteArray = "";
153  const QByteArray = "";
154  */
155 
156 
157  //TEXT
158  const QByteArray TEXT_HTML_UTF8 = "text/html; charset=UTF-8";
159 
160  //IMAGE
161  const QByteArray IMAGE_MICROSOFT_ICO = "image/vnd.microsoft.icon";
162  const QByteArray IMAGE_JPEG = "image/jpeg";
163  const QByteArray IMAGE_TIFF = "image/tiff";
164  const QByteArray IMAGE_SVG_XML = "image/svg+xml";
165 
166  //AUDIO
167  const QByteArray AUDIO_MP3 = "image/mpeg";
168  const QByteArray AUDIO_MP4 = "image/mp4";
169  const QByteArray APPLICATION_PHOTOSHOP = "image/vnd.adobe.photoshop";
170 
171  //VIDEO
172  const QByteArray VIDEO_FLV = "video/x-flv";
173 
174  //APPLICATION
175  const QByteArray APPLICATION_MSWORD = "application/msword";
176  const QByteArray APPLICATION_RTF = "application/rtf";
177  const QByteArray APPLICATION_EXCEL = "application/vnd.ms-excel";
178  const QByteArray APPLICATION_JSON = "application/json";
179  const QByteArray APPLICATION_POWER_POINT = "application/vnd.ms-powerpoint";
180  const QByteArray APPLICATION_JAVASCRIPT = "application/javascript";
181  const QByteArray APPLICATION_OPEN_DOCUMENT_TEXT = "application/vnd.oasis.opendocument.text";
182  const QByteArray APPLICATION_OPEN_DOCUMENT_SPREADSHEET = "application/vnd.oasis.opendocument.spreadsheet";
183  const QByteArray APPLICATION_SHOCKWAVE_FLASH = "application/x-shockwave-flash";
184  const QByteArray APPLICATION_RAR_COMPRESSED = "application/x-rar-compressed";
185  const QByteArray APPLICATION_MS_DOWNLOAD = "application/x-msdownload";
186  const QByteArray APPLICATION_CAB_COMPRESSED = "application/vnd.ms-cab-compressed";
187  const QByteArray APPLICATION_POSTSCRIPT = "application/postscript";
188  const QByteArray APPLICATION_WWW_FORM_URLENCODED = "application/x-www-form-urlencoded";
189 
190  //HTTP METHODS CONSTANTS
191  namespace METHOD
192  {
193  const QByteArray GET = "GET";
194  const QByteArray PUT = "PUT";
195  const QByteArray POST = "POST";
196  const QByteArray DELETE = "DELETE";
197  const QByteArray OPTIONS = "OPTIONS";
198  const QByteArray HEAD = "HEAD";
199  const QByteArray TRACE = "TRACE";
200  }
201 }
202 
203 namespace COOKIE
204 {
205  const QByteArray COMMENT = "Comment";
206  const QByteArray DOMAIN_COOKIE = "Domain";
207  const QByteArray MAX_AGE = "Max-Age";
208  const QByteArray PATH = "Path";
209  const QByteArray SECURE = "Secure";
210  const QByteArray VERSION = "Version";
211 }
212 
213 //FILE EXTENTIONS CONSTANTS
214 namespace FILE_EXTENTION
215 {
216  const QByteArray BAR = "/";
217  const QByteArray HTML = "html";
218  const QByteArray HTM = "htm";
219  const QByteArray CSS = "css";
220  const QByteArray TXT = "txt";
221  const QByteArray PHP = "php";
222  const QByteArray ICO = "ico";
223  const QByteArray PNG = "png";
224  const QByteArray GIF = "gif";
225  const QByteArray BMP = "bmp";
226  const QByteArray JPE = "jpe";
227  const QByteArray JPG = "jpg";
228  const QByteArray TIF = "TIF";
229  const QByteArray TIFF = "TIFF";
230  const QByteArray SVG = "svg";
231  const QByteArray SVGZ = "svgz";
232  const QByteArray PDF = "pdf";
233  const QByteArray XML = "xml";
234  const QByteArray JSON = "json";
235  const QByteArray ZIP = "zip";
236  const QByteArray MP3 = "mp3";
237  const QByteArray MP4 = "mp4";
238  const QByteArray FLV = "flv";
239  const QByteArray DOC = "doc";
240  const QByteArray RTF = "rtf";
241  const QByteArray XLS = "xls";
242  const QByteArray PPT = "ppt";
243  const QByteArray JS = "js";
244  const QByteArray ODT = "odt";
245  const QByteArray ODS = "ods";
246  const QByteArray SWF = "swf";
247  const QByteArray RAR = "rar";
248  const QByteArray EXE = "exe";
249  const QByteArray MSI = "msi";
250  const QByteArray CAB = "cab";
251  const QByteArray PSD = "psd";
252  const QByteArray AI = "ai";
253  const QByteArray EPS = "eps";
254  const QByteArray PS = "ps";
255  const QByteArray INI = "ini";
256 }
257 
258 CWF_END_NAMESPACE
259 
260 #endif // CONSTANTS_H
Definition: constants.h:51
Definition: constants.h:214
Definition: constants.h:118
Definition: constants.h:33
Definition: constants.h:17
Definition: constants.h:27
Definition: constants.h:42
Definition: constants.h:203