Open Lighting Architecture 0.10.9
Loading...
Searching...
No Matches
ola::web::BaseValidator Class Reference

Detailed Description

The base class for Json BaseValidators. All Visit methods return false.

Inheritance diagram for ola::web::BaseValidator:
ola::web::ValidatorInterface ola::web::JsonValueConstVisitorInterface ola::web::ArrayValidator ola::web::BoolValidator ola::web::ConjunctionValidator ola::web::IntegerValidator ola::web::NotValidator ola::web::NullValidator ola::web::ObjectValidator ola::web::StringValidator ola::web::WildcardValidator

Public Member Functions

virtual bool IsValid () const
 Check if the value was valid according to this validator.
 
virtual void Visit (const JsonString &)
 
virtual void Visit (const JsonBool &)
 
virtual void Visit (const JsonNull &)
 
virtual void Visit (const JsonRawValue &)
 
virtual void Visit (const JsonObject &)
 
virtual void Visit (const JsonArray &)
 
virtual void Visit (const JsonUInt &)
 
virtual void Visit (const JsonUInt64 &)
 
virtual void Visit (const JsonInt &)
 
virtual void Visit (const JsonInt64 &)
 
virtual void Visit (const JsonDouble &)
 
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.
 
- Public Member Functions inherited from ola::web::ValidatorInterface
- Public Member Functions inherited from ola::web::JsonValueConstVisitorInterface

Protected Member Functions

 BaseValidator (JsonType type)
 
bool CheckEnums (const JsonValue &value)
 
virtual void ExtendSchema (JsonObject *schema) const
 

Protected Attributes

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.
 

Member Function Documentation

◆ AddEnumValue()

void ola::web::BaseValidator::AddEnumValue ( const JsonValue * value)

Add a enum value to the list of allowed values.

Parameters
valuethe JsonValue to add, ownership is transferred.

◆ GetDefaultValue()

const JsonValue * ola::web::BaseValidator::GetDefaultValue ( ) const
virtual

Return the default value.

Returns
The default value, or NULL if there isn't one.

Implements ola::web::ValidatorInterface.

◆ GetSchema()

JsonObject * ola::web::BaseValidator::GetSchema ( ) const
virtual

Returns the Schema as a JsonObject.

Returns
A new JsonObject that represents the schema. Ownership of the JsonObject is transferred to the caller.

Implements ola::web::ValidatorInterface.

◆ IsValid()

virtual bool ola::web::BaseValidator::IsValid ( ) const
inlinevirtual

Check if the value was valid according to this validator.

Implements ola::web::ValidatorInterface.

Reimplemented in ola::web::WildcardValidator.

◆ SetDefaultValue()

void ola::web::BaseValidator::SetDefaultValue ( const JsonValue * value)
virtual

Set the default value for this validator.

Parameters
valuethe default value, ownership is transferred.

Implements ola::web::ValidatorInterface.

◆ SetDescription()

void ola::web::BaseValidator::SetDescription ( const std::string & title)
virtual

Set the description.

Implements ola::web::ValidatorInterface.

◆ SetId()

void ola::web::BaseValidator::SetId ( const std::string & id)
virtual

Set the id.

Implements ola::web::ValidatorInterface.

◆ SetSchema()

void ola::web::BaseValidator::SetSchema ( const std::string & schema)
virtual

Set the schema.

Implements ola::web::ValidatorInterface.

◆ SetTitle()

void ola::web::BaseValidator::SetTitle ( const std::string & title)
virtual

Set the title.

Implements ola::web::ValidatorInterface.

◆ Visit() [1/11]

virtual void ola::web::BaseValidator::Visit ( const JsonArray & )
inlinevirtual

◆ Visit() [2/11]

virtual void ola::web::BaseValidator::Visit ( const JsonBool & )
inlinevirtual

◆ Visit() [3/11]

virtual void ola::web::BaseValidator::Visit ( const JsonDouble & )
inlinevirtual

◆ Visit() [4/11]

virtual void ola::web::BaseValidator::Visit ( const JsonInt & )
inlinevirtual

◆ Visit() [5/11]

virtual void ola::web::BaseValidator::Visit ( const JsonInt64 & )
inlinevirtual

◆ Visit() [6/11]

virtual void ola::web::BaseValidator::Visit ( const JsonNull & )
inlinevirtual

◆ Visit() [7/11]

virtual void ola::web::BaseValidator::Visit ( const JsonObject & )
inlinevirtual

◆ Visit() [8/11]

virtual void ola::web::BaseValidator::Visit ( const JsonRawValue & )
inlinevirtual

◆ Visit() [9/11]

virtual void ola::web::BaseValidator::Visit ( const JsonString & )
inlinevirtual

◆ Visit() [10/11]

virtual void ola::web::BaseValidator::Visit ( const JsonUInt & )
inlinevirtual

◆ Visit() [11/11]

virtual void ola::web::BaseValidator::Visit ( const JsonUInt64 & )
inlinevirtual

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