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::BaseValidator Class Reference

Detailed Description

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

Inheritance diagram for ola::web::BaseValidator:
Inheritance graph
Collaboration diagram for ola::web::BaseValidator:
Collaboration graph

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 * > 
 a list of Validators.

Member Function Documentation

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

Add a enum value to the list of allowed values.

valuethe JsonValue to add, ownership is transferred.
const JsonValue * ola::web::BaseValidator::GetDefaultValue ( ) const

Return the default value.

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

Implements ola::web::ValidatorInterface.

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

Returns the Schema as a JsonObject.

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

Implements ola::web::ValidatorInterface.

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

Set the default value for this validator.

valuethe default value, ownership is transferred.

Implements ola::web::ValidatorInterface.

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