cutelyst
4.5.1
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
|
Checks if the field value is a valid IP address. More...
#include <Cutelyst/Plugins/Utils/validatorip.h>
Public Types | |
enum | Constraint { NoConstraint , IPv4Only , IPv6Only , NoPrivateRange , NoReservedRange , NoMultiCast , PublicOnly } |
Acceptable address ranges. More... | |
Public Member Functions | |
ValidatorIp (const QString &field, Constraints constraints=NoConstraint, const ValidatorMessages &messages=ValidatorMessages(), const QString &defValKey=QString()) | |
~ValidatorIp () override | |
Public Member Functions inherited from Cutelyst::ValidatorRule | |
ValidatorRule (const QString &field, const ValidatorMessages &messages={}, const QString &defValKey={}, QByteArrayView validatorName=nullptr) | |
virtual | ~ValidatorRule () |
Deconstructs the ValidatorRule. | |
Static Public Member Functions | |
static bool | validate (const QString &value, Constraints constraints=NoConstraint) |
Returns true if value is a valid IP address within the constraints. More... | |
Protected Member Functions | |
QString | genericValidationError (Context *c, const QVariant &errorData=QVariant()) const override |
ValidatorReturnType | validate (Context *c, const ParamsMultiMap ¶ms) const override |
Protected Member Functions inherited from Cutelyst::ValidatorRule | |
ValidatorRule (ValidatorRulePrivate &dd) | |
QString | debugString (Context *c) const |
void | defaultValue (Context *c, ValidatorReturnType *result) const |
QString | field () const noexcept |
virtual QString | genericParsingError (Context *c, const QVariant &errorData={}) const |
virtual QString | genericValidationDataError (Context *c, const QVariant &errorData={}) const |
QString | label (Context *c) const |
QString | parsingError (Context *c, const QVariant &errorData={}) const |
bool | trimBefore () const noexcept |
QString | validationDataError (Context *c, const QVariant &errorData={}) const |
QString | validationError (Context *c, const QVariant &errorData={}) const |
QString | value (const ParamsMultiMap ¶ms) const |
This uses QHostAddress internally to check if the field contains a valid IP address. You can use the constraints flags to limit the validator to specific address ranges.
Definition at line 34 of file validatorip.h.
Definition at line 40 of file validatorip.h.
ValidatorIp::ValidatorIp | ( | const QString & | field, |
Constraints | constraints = NoConstraint , |
||
const ValidatorMessages & | messages = ValidatorMessages() , |
||
const QString & | defValKey = QString() |
||
) |
Constructs a new ValidatorIp object with the given parameters.
field | Name of the input field to validate. |
constraints | Optional validation constraints. |
messages | Custom error message if validation fails. |
defValKey | Stash key containing a default value if input field is empty. This value will NOT be validated. |
Definition at line 17 of file validatorip.cpp.
|
overridedefault |
Destroys the ValidatorIp object.
|
overrideprotectedvirtual |
Returns a generic error message if validation failed.
Reimplemented from Cutelyst::ValidatorRule.
Definition at line 256 of file validatorip.cpp.
References QString::arg(), QString::isEmpty(), Cutelyst::ValidatorRule::label(), and Cutelyst::Context::qtTrId().
|
overrideprotectedvirtual |
Performs the validation on the input params and returns the result.
If validation succeeded, ValidatorReturnType::value will contain the input paramter value as QString.
Implements Cutelyst::ValidatorRule.
Definition at line 27 of file validatorip.cpp.
References Cutelyst::ValidatorRule::defaultValue(), Cutelyst::ValidatorReturnType::errorMessage, QString::isEmpty(), QVariant::setValue(), validate(), Cutelyst::ValidatorRule::validationError(), Cutelyst::ValidatorReturnType::value, and Cutelyst::ValidatorRule::value().