diff options
| author | Vincent Richard <[email protected]> | 2013-11-23 08:25:38 +0000 |
|---|---|---|
| committer | Vincent Richard <[email protected]> | 2013-11-23 08:25:38 +0000 |
| commit | 7aebeeb2e2ad13c89c202d0bfa8c634ab27b91b4 (patch) | |
| tree | 591c6558daf2773bb0ce913e39189b295d9406c9 /src/contentDispositionField.cpp | |
| parent | Do not throw exception for normal code flow (exceptions::no_such_field). (diff) | |
| download | vmime-7aebeeb2e2ad13c89c202d0bfa8c634ab27b91b4.tar.gz vmime-7aebeeb2e2ad13c89c202d0bfa8c634ab27b91b4.zip | |
Do not throw exception for normal code flow (exceptions::no_such_parameter).
Diffstat (limited to 'src/contentDispositionField.cpp')
| -rw-r--r-- | src/contentDispositionField.cpp | 65 |
1 files changed, 60 insertions, 5 deletions
diff --git a/src/contentDispositionField.cpp b/src/contentDispositionField.cpp index 887d8928..5a9c1212 100644 --- a/src/contentDispositionField.cpp +++ b/src/contentDispositionField.cpp @@ -40,9 +40,20 @@ contentDispositionField::contentDispositionField(contentDispositionField&) } +bool contentDispositionField::hasCreationDate() const +{ + return findParameter("creation-date"); +} + + const datetime contentDispositionField::getCreationDate() const { - return findParameter("creation-date")->getValueAs <datetime>(); + shared_ptr <parameter> param = findParameter("creation-date"); + + if (param) + return param->getValueAs <datetime>(); + else + return datetime::now(); } @@ -52,9 +63,20 @@ void contentDispositionField::setCreationDate(const datetime& creationDate) } +bool contentDispositionField::hasModificationDate() const +{ + return findParameter("modification-date"); +} + + const datetime contentDispositionField::getModificationDate() const { - return findParameter("modification-date")->getValueAs <datetime>(); + shared_ptr <parameter> param = findParameter("modification-date"); + + if (param) + return param->getValueAs <datetime>(); + else + return datetime::now(); } @@ -64,9 +86,20 @@ void contentDispositionField::setModificationDate(const datetime& modificationDa } +bool contentDispositionField::hasReadDate() const +{ + return findParameter("read-date"); +} + + const datetime contentDispositionField::getReadDate() const { - return findParameter("read-date")->getValueAs <datetime>(); + shared_ptr <parameter> param = findParameter("read-date"); + + if (param) + return param->getValueAs <datetime>(); + else + return datetime::now(); } @@ -76,9 +109,20 @@ void contentDispositionField::setReadDate(const datetime& readDate) } +bool contentDispositionField::hasFilename() const +{ + return findParameter("filename"); +} + + const word contentDispositionField::getFilename() const { - return findParameter("filename")->getValue(); + shared_ptr <parameter> param = findParameter("filename"); + + if (param) + return param->getValue(); + else + return word(); } @@ -88,9 +132,20 @@ void contentDispositionField::setFilename(const word& filename) } +bool contentDispositionField::hasSize() const +{ + return findParameter("size"); +} + + const string contentDispositionField::getSize() const { - return findParameter("size")->getValue().getBuffer(); + shared_ptr <parameter> param = findParameter("size"); + + if (param) + return param->getValue().getBuffer(); + else + return ""; } |
