SSAGES
0.1
A MetaDynamics Package
|
Requirements on input files. More...
#include <Requirement.h>
Public Member Functions | |
virtual void | Parse (Value json, const std::string &path)=0 |
Parse JSON value. More... | |
virtual void | Validate (const Value &json, const std::string &path)=0 |
Validate that JSON value meets requirements. More... | |
virtual void | Reset ()=0 |
Reset validator. | |
bool | HasErrors () |
Check if errors have occured. More... | |
std::vector< std::string > | GetErrors () |
Get list of error messages. More... | |
virtual void | ClearErrors () |
Clear list of error messages. | |
virtual bool | HasNotices () |
Check if notices have been queued. More... | |
std::vector< std::string > | GetNotices () |
Get list of notices. More... | |
virtual void | ClearNotices () |
Clear list of notice messages. | |
virtual | ~Requirement () |
Destructor. | |
Protected Member Functions | |
void | PushError (const std::string &error) |
Add error to list of error messages. More... | |
void | PushNotice (const std::string ¬ice) |
Add message to list of notices. More... | |
Private Attributes | |
std::vector< std::string > | errors_ |
List of error messages. | |
std::vector< std::string > | notices_ |
List of messages. | |
Requirements on input files.
Definition at line 39 of file Requirement.h.
|
inline |
Get list of error messages.
Definition at line 92 of file Requirement.h.
References errors_.
Referenced by SSAGES::GaussianPK::Build(), SSAGES::Logger::Build(), SSAGES::ResourceHandler::Build(), SSAGES::RationalSwitchPK::Build(), SSAGES::Umbrella::Build(), SSAGES::Meta::Build(), SSAGES::AlphaRMSDCV::Build(), SSAGES::StringMethod::Build(), SSAGES::AntiBetaRMSDCV::Build(), SSAGES::ParallelBetaRMSDCV::Build(), SSAGES::ABF::Build(), SSAGES::Basis::Build(), SSAGES::ForwardFlux::Build(), SSAGES::Constraint::BuildConstraint(), SSAGES::Grid< int >::BuildGrid(), SSAGES::Histogram< int >::BuildHistogram(), SSAGES::Method::BuildMethod(), Json::ArrayRequirement::Validate(), and Json::ObjectRequirement::Validate().
|
inline |
Get list of notices.
Definition at line 107 of file Requirement.h.
References notices_.
Referenced by Json::ArrayRequirement::Validate(), and Json::ObjectRequirement::Validate().
|
inline |
Check if errors have occured.
True
if the list of errors is not empty. Definition at line 86 of file Requirement.h.
References errors_.
Referenced by SSAGES::GaussianPK::Build(), SSAGES::Logger::Build(), SSAGES::ResourceHandler::Build(), SSAGES::RationalSwitchPK::Build(), SSAGES::Umbrella::Build(), SSAGES::Meta::Build(), SSAGES::AlphaRMSDCV::Build(), SSAGES::StringMethod::Build(), SSAGES::AntiBetaRMSDCV::Build(), SSAGES::ParallelBetaRMSDCV::Build(), SSAGES::ABF::Build(), SSAGES::Basis::Build(), SSAGES::ForwardFlux::Build(), SSAGES::Constraint::BuildConstraint(), SSAGES::Grid< int >::BuildGrid(), SSAGES::Histogram< int >::BuildHistogram(), SSAGES::Method::BuildMethod(), and Json::ObjectRequirement::Validate().
|
inlinevirtual |
Check if notices have been queued.
True
if list of notices is not empty. Definition at line 101 of file Requirement.h.
References notices_.
Referenced by Json::ObjectRequirement::Validate().
|
pure virtual |
Parse JSON value.
json | JSON value with input information. |
path | Path for JSON path specification. |
Implemented in Json::ObjectRequirement, Json::ArrayRequirement, Json::AllOfRequirement, Json::AnyOfRequirement, Json::NotRequirement, Json::StringRequirement, Json::NumberRequirement, Json::OneOfRequirement, Json::IntegerRequirement, Json::DependencyRequirement, Json::EnumRequirement, Json::BooleanRequirement, and Json::NullRequirement.
|
inlineprotected |
Add error to list of error messages.
error | Error message. |
This function adds an error message to the list of error messages. The list of error messages can be retrieved by Requirement::GetErrors()
Definition at line 53 of file Requirement.h.
References errors_.
Referenced by Json::BooleanRequirement::Validate(), Json::NullRequirement::Validate(), Json::EnumRequirement::Validate(), Json::DependencyRequirement::Validate(), Json::NotRequirement::Validate(), Json::OneOfRequirement::Validate(), Json::AnyOfRequirement::Validate(), Json::AllOfRequirement::Validate(), Json::IntegerRequirement::Validate(), Json::StringRequirement::Validate(), Json::NumberRequirement::Validate(), Json::ArrayRequirement::Validate(), and Json::ObjectRequirement::Validate().
|
inlineprotected |
Add message to list of notices.
notice | Message string. |
This function adds a new message to the list of messages. The list can be retrieved using Requirement::GetNotices().
Definition at line 62 of file Requirement.h.
References notices_.
Referenced by Json::OneOfRequirement::Validate(), Json::AnyOfRequirement::Validate(), Json::AllOfRequirement::Validate(), Json::ArrayRequirement::Validate(), and Json::ObjectRequirement::Validate().
|
pure virtual |
Validate that JSON value meets requirements.
json | JSON value to validate. |
path | Path for JSON path specification. |
Implemented in Json::ObjectRequirement, Json::ArrayRequirement, Json::NumberRequirement, Json::StringRequirement, Json::IntegerRequirement, Json::AllOfRequirement, Json::AnyOfRequirement, Json::OneOfRequirement, Json::NotRequirement, Json::DependencyRequirement, Json::EnumRequirement, Json::BooleanRequirement, and Json::NullRequirement.
Referenced by Json::ObjectRequirement::Validate().