Open Lighting Architecture  Latest Git
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ola::web::ConjunctionValidator Class Referenceabstract

Detailed Description

The base class for validators that operate with a list of child validators (allOf, anyOf, oneOf).

Inheritance diagram for ola::web::ConjunctionValidator:
Inheritance graph
[legend]
Collaboration diagram for ola::web::ConjunctionValidator:
Collaboration graph
[legend]

Public Member Functions

 ConjunctionValidator (const std::string &keyword, ValidatorList *validators)
 
void Visit (const JsonString &value)
 
void Visit (const JsonBool &value)
 
void Visit (const JsonNull &value)
 
void Visit (const JsonRawValue &value)
 
void Visit (const JsonObject &value)
 
void Visit (const JsonArray &value)
 
void Visit (const JsonUInt &value)
 
void Visit (const JsonUInt64 &value)
 
void Visit (const JsonInt &value)
 
void Visit (const JsonInt64 &value)
 
void Visit (const JsonDouble &value)
 
- Public Member Functions inherited from ola::web::BaseValidator
virtual bool IsValid () const
 Check if the value was valid according to this validator.
 
virtual JsonObjectGetSchema () const
 Returns the Schema as a JsonObject. More...
 
void SetSchema (const std::string &schema)
 Set the schema.
 
void SetId (const std::string &id)
 Set the id.
 
void SetTitle (const std::string &title)
 Set the title.
 
void SetDescription (const std::string &title)
 Set the description.
 
void SetDefaultValue (const JsonValue *value)
 Set the default value for this validator. More...
 
const JsonValueGetDefaultValue () const
 Return the default value. More...
 
void AddEnumValue (const JsonValue *value)
 Add a enum value to the list of allowed values. More...
 

Protected Member Functions

void ExtendSchema (JsonObject *schema) const
 
virtual void Validate (const JsonValue &value)=0
 
- Protected Member Functions inherited from ola::web::BaseValidator
 BaseValidator (JsonType type)
 
bool CheckEnums (const JsonValue &value)
 

Protected Attributes

std::string m_keyword
 
ValidatorList m_validators
 
- Protected Attributes inherited from ola::web::BaseValidator
bool m_is_valid
 
JsonType m_type
 
std::string m_schema
 
std::string m_id
 
std::string m_title
 
std::string m_description
 
std::auto_ptr< const JsonValuem_default_value
 
std::vector< const JsonValue * > m_enums
 

Additional Inherited Members

- Public Types inherited from ola::web::ValidatorInterface
typedef std::vector
< ValidatorInterface * > 
ValidatorList
 a list of Validators.
 

Constructor & Destructor Documentation

ola::web::ConjunctionValidator::ConjunctionValidator ( const std::string &  keyword,
ValidatorList validators 
)
Parameters
keywordthe name of the conjunction.
validatorsthe list of schemas to validate against. Ownership of the validators in the list is transferred.

The documentation for this class was generated from the following files: