Open Lighting Architecture  Latest Git
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ola::web::BaseValidator Class Reference

Detailed Description

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

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

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. 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

 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.

◆ 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.


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