com.google.web.bindery.requestfactory.shared.Violation Maven / Gradle / Ivy
/*
* Copyright 2010 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.google.web.bindery.requestfactory.shared;
/**
* A lightweight representation of a
* {@link javax.validation.ConstraintViolation}.
*/
public interface Violation {
/**
* If the ConstraintViolation occurred while validating a object, this method
* will return a BaseProxy that contains the invalid values.
*
* @return the BaseProxy that caused the ConstraintViolation
*/
BaseProxy getInvalidProxy();
/**
* Returns the message associated with this {@link Violation}.
*
* @return a String message
*/
String getMessage();
/**
* If the ConstraintViolation occurred while validating a value object that
* originated from the server, this method will return a BaseProxy that
* contains the original values.
*
* @return the BaseProxy originally sent by the server or {@code null} if the
* BaseProxy was created on the client.
*/
BaseProxy getOriginalProxy();
/**
* Returns the path associated with this {@link Violation}.
*
* @return a String path
*/
String getPath();
/**
* Returns the proxy id associated with this {@link Violation} if the object
* associated with the violation is an {@link EntityProxy}.
*
* @return an {@link EntityProxyId} instance or {@code null} if the object is
* a ValueProxy.
*/
EntityProxyId> getProxyId();
}