42198e2d0c095f47f7f1b2615bf4ee6bdad8ea30
[so.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.onap.so.apihandlerinfra.exceptions;
22
23 public class DuplicateRequestException extends ApiException {
24
25     private static final String duplicateFailMessage = "Error: Locked instance - This %s (%s) "
26             + "already has a request being worked with a status of %s (RequestId - %s). The existing request must finish or be cleaned up before proceeding.";
27
28     private DuplicateRequestException(Builder builder) {
29         super(builder);
30     }
31
32
33
34     public static class Builder extends ApiException.Builder<Builder> {
35
36
37         public Builder(String requestScope, String instance, String requestStatus, String requestID,
38                 int httpResponseCode, String messageID) {
39             super(String.format(duplicateFailMessage, requestScope, instance, requestStatus, requestID),
40                     httpResponseCode, messageID);
41
42         }
43
44
45         public DuplicateRequestException build() {
46
47             return new DuplicateRequestException(this);
48         }
49     }
50
51 }