1 package ca.uhn.fhir.rest.server.exceptions;
2
3 import ca.uhn.fhir.model.dstu.resource.OperationOutcome;
4 import ca.uhn.fhir.rest.server.Constants;
5
6 /*
7 * #%L
8 * HAPI FHIR - Core Library
9 * %%
10 * Copyright (C) 2014 University Health Network
11 * %%
12 * Licensed under the Apache License, Version 2.0 (the "License");
13 * you may not use this file except in compliance with the License.
14 * You may obtain a copy of the License at
15 *
16 * http://www.apache.org/licenses/LICENSE-2.0
17 *
18 * Unless required by applicable law or agreed to in writing, software
19 * distributed under the License is distributed on an "AS IS" BASIS,
20 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 * See the License for the specific language governing permissions and
22 * limitations under the License.
23 * #L%
24 */
25
26 /**
27 * Represents an <b>HTTP 400 Bad Request</b> response.
28 * This status indicates that the client's message was invalid (e.g. not a valid FHIR Resource
29 * per the specifications), as opposed to the {@link UnprocessableEntityException} which indicates
30 * that data does not pass business rule validation on the server.
31 *
32 * <p>
33 * Note that a complete list of RESTful exceptions is available in the
34 * <a href="./package-summary.html">Package Summary</a>.
35 * </p>
36 *
37 * @see UnprocessableEntityException Which should be used for business level validation failures
38 */
39 public class InvalidRequestException extends BaseServerResponseException {
40
41 public static final int STATUS_CODE = Constants.STATUS_HTTP_400_BAD_REQUEST;
42 private static final long serialVersionUID = 1L;
43
44 public InvalidRequestException(String theMessage) {
45 super(STATUS_CODE, theMessage);
46 }
47
48 /**
49 * Constructor
50 *
51 * @param theMessage
52 * The message
53 * @param theOperationOutcome The OperationOutcome resource to return to the client
54 */
55 public InvalidRequestException(String theMessage, OperationOutcome theOperationOutcome) {
56 super(STATUS_CODE, theMessage, theOperationOutcome);
57 }
58
59
60 }