CARVIEW |
Select Language
HTTP/2 200
date: Thu, 24 Jul 2025 15:59:48 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
x-robots-tag: none
etag: W/"ffebda6ce6c211cace9e5d2499bd0a57"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=0DpZcYt2mxZgxQj6hZV8X6zOLsRJfQUXY%2B%2BMuPM9HJzz2Zdt9fO%2Fdc80VelJOMH6v5RICiJI9dycffsCdBNnevGyXJQjEJedD%2Blw63Kl2EVEjgwPoxjrDFH6mVFK1%2B%2BawRrhRFBXCmO0uyRXn1AxKj2Q%2B0mrLrwTNaFBiFMDBODC8kGLUxBzcM3QhLzccfadctK2bA%2B1V%2BEF8ejR0A%2FXd1OVrDf6A%2FHmaJAZlvT7m6Y0EG%2B4D%2BzTHpG10PC1uEhNLbB6keToOywgSQUN3C%2BIVA%3D%3D--bzO9AeM2EVOZCxMY--3zlSDi2HNDcTxtKyJm392g%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.952695210.1753372788; Path=/; Domain=github.com; Expires=Fri, 24 Jul 2026 15:59:48 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Fri, 24 Jul 2026 15:59:48 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: B8EC:1E06FB:F3EFC:11C7A4:68825874
Validation Rules · doov-org/doov Wiki · GitHub
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 16
Validation Rules
ozangunalp edited this page Aug 2, 2018
·
5 revisions
See latest version in maven central.
Maven
<!-- The dependency for doov -->
<dependency>
<groupId>io.doov</groupId>
<artifactId>doov-code</artifactId>
<version>LATEST</version>
</dependency>
<!-- The dependency on your generated DSL (see previous step) -->
<dependency>
<groupId>io.doov</groupId>
<artifactId>doov-sample-generated</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
Gradle
dependencies {
compile project(':doov-sample-generated')
}
This documentation is based on the sample project in
dOOv. You can replace
the package name io.doov.sample
by your package name as com.example.myapp
and classes name Sample
with MyApp
.
As the entry point you can either use io.doov.dsl.DOOV
which is generic and
do not depend on the type of your model, or the generated class
io.doov.sample.field.dsl.DslSampleModel
.
package io.doov.sample.validation;
import static io.doov.sample.field.dsl.DslSampleModel.accountEmail;
public interface SampleRules {
// Generic way of writing a rule
ValidationRule RULE_EMAIL_GENERIC = DOOV
.when(accountEmail.matches("\\w+[@]\\w+\\.com"))
.validate();
// Typed way of writing a rule (makes execution more streamlined)
ModelStepWhen RULE_EMAIL = DslModel
.when(accountEmail.matches("\\w+[@]\\w+\\.com"))
.validate();
}
- Boolean Rules for boolean validation (not, and, or, etc.)
- String Rules for string validation (matches, length, etc.)
You can’t perform that action at this time.