1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- #include "Exception.h"
- #include "Strings.h"
- #include "FileName.h"
- #include "expiretools.h"
- #include "filetools.h"
- #include "Image.h"
- using namespace std;
- Image::Image(const string& dir): name(dir)
- {
- FileName fn(name);
- string dummy; // image "name"
- stringToDate(fn.getName(), time, dummy);
- string expireFileName = name + "/expires";
- valid = !fileExists(name + "/error") &&
- fileExists(expireFileName) &&
- dirExists(name + "/tree");
- // cout << boolalpha << dir << " " << image.valid << endl;
- if (valid)
- {
- Strings expireText;
- file2Strings(expireFileName, expireText);
- if (expireText.empty())
- throw Exception("expireDate", "expire file empty");
- stringToDate(expireText[0], expire, series);
- expireRule = expireText[1];
- }
- }
- void Image::printInfo() const
- {
- cout << name << endl;
- if (valid)
- {
- if (series != "expire")
- cout << "backup set: " << series << endl;
- cout << "created: " << time.getString('h') << endl;
- cout << "expires: " << expire.getString('h') << " - " << timeString(expire - DateTime::now()) << endl;
- }
- else
- cout << "invalid" << endl;
- }
|