Open Lighting Architecture  0.9.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | List of all members
ola::web::OneOfValidator Class Reference

Detailed Description

A validator which ensures at only one of the child validators pass (oneOf).

Inheritance diagram for ola::web::OneOfValidator:
ola::web::ConjunctionValidator ola::web::BaseValidator ola::web::ValidatorInterface ola::web::JsonValueConstVisitorInterface

Public Member Functions

 OneOfValidator (ValidatorList *validators)
- Public Member Functions inherited from ola::web::ConjunctionValidator
 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.
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.
const JsonValueGetDefaultValue () const
 Return the default value.
void AddEnumValue (const JsonValue *value)
 Add a enum value to the list of allowed values.

Protected Member Functions

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

Additional Inherited Members

- Public Types inherited from ola::web::ValidatorInterface
typedef std::vector
< ValidatorInterface * > 
ValidatorList
 a list of Validators.
- Protected Attributes inherited from ola::web::ConjunctionValidator
std::string m_keyword
ValidatorList m_validators

Constructor & Destructor Documentation

ola::web::OneOfValidator::OneOfValidator ( ValidatorList validators)
inlineexplicit
Parameters
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: