#ifdef HAVE_CONFIG_H #include "config.h" #endif #include "Variables.h" #include "HttpServ.h" #include "BString.h" Variables::Variables(int nb) : Vars(nb), nbvars(nb) { } Variables::Variables(const Variables & v) : nbvars(v.nbvars) { for (int i = 0; i < nbvars; i++) { Vars.push_back(v.Vars[i]); } } Variables::~Variables() { } void Variables::SetTo(int i, const String & s) { Vars[i] = s; } String Variables::operator[](const String & name) { int i; String r; for (i = 0; i < nbvars; i++) { if (Vars[i].strstr(name) == 0) break; } if (i == nbvars) { r = ""; } else { r = Vars[i].extract(Vars[i].strchr('=') + 1); } return r; } String Variables::operator[](int i) { return Vars[i]; } int Variables::GetNb(void) { return nbvars; } void Variables::Dump(Handle * h, const String & format) { int i, eqp; String Vn, Vv; for (i = 0; i < nbvars; i++) { eqp = Vars[i].strchr('='); Vn = Vars[i].extract(0, eqp - 1); Vv = Vars[i].extract(eqp + 1); if (format == "") { (*h) << "" << endnl; } else { // Use format here... // **FIXME** #warning FIXME } } } void Variables::Add(const String & s) { nbvars++; Vars.push_back(s); } void Variables::Del(int i) { nbvars--; Vars.erase(Vars.begin() + i, Vars.begin() + i); } void Variables::Del(const String & name) { int i; for (i = 0; i < nbvars; i++) { if (Vars[i].strstr(name) == 0) break; } if (i != nbvars) { Del(i); } }