1 /*
2 * The contents of this file are subject to the terms of the Common Development and
3 * Distribution License (the License). You may not use this file except in compliance with the
4 * License.
5 *
6 * You can obtain a copy of the License at legal/CDDLv1.0.txt. See the License for the
7 * specific language governing permission and limitations under the License.
8 *
9 * When distributing Covered Software, include this CDDL Header Notice in each file and include
10 * the License file at legal/CDDLv1.0.txt. If applicable, add the following below the CDDL
11 * Header, with the fields enclosed by brackets [] replaced by your own identifying
12 * information: "Portions Copyrighted [year] [name of copyright owner]".
13 *
14 * Copyright 2011-2015 ForgeRock AS.
15 */
16
17 package org.forgerock.json.resource;
18
19 /**
20 * An exception that is thrown during a operation on a resource when such an
21 * operation would result in a conflict. For example: when a patch conflicts
22 * with the object state. For MVCC version required/failed failures use those
23 * specific exceptions instead,
24 *
25 * @see PreconditionFailedException
26 * @see PreconditionRequiredException
27 */
28 public class ConflictException extends ResourceException {
29
30 private static final long serialVersionUID = 1L;
31
32 /**
33 * Constructs a new exception with {@code null} as its detail message.
34 */
35 public ConflictException() {
36 super(ResourceException.CONFLICT);
37 }
38
39 /**
40 * Constructs a new exception with the specified detail message.
41 *
42 * @param message
43 * The detail message.
44 */
45 public ConflictException(final String message) {
46 super(ResourceException.CONFLICT, message);
47 }
48
49 /**
50 * Constructs a new exception with the specified detail message and cause.
51 *
52 * @param message
53 * The detail message.
54 * @param cause
55 * The exception which caused this exception to be thrown.
56 */
57 public ConflictException(final String message, final Throwable cause) {
58 super(ResourceException.CONFLICT, message, cause);
59 }
60
61 /**
62 * Constructs a new exception with the specified cause.
63 *
64 * @param cause
65 * The exception which caused this exception to be thrown.
66 */
67 public ConflictException(final Throwable cause) {
68 super(ResourceException.CONFLICT, cause);
69 }
70 }