Set all cross references of policy/models
[policy/models.git] / models-interactions / model-actors / actor.appclcm / src / main / java / org / onap / policy / controlloop / actor / appclcm / AppcLcmConstants.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP
4  * ================================================================================
5  * Copyright (C) 2020-2021 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.policy.controlloop.actor.appclcm;
22
23 import java.util.Collections;
24 import java.util.HashSet;
25 import java.util.Set;
26 import java.util.stream.Collectors;
27 import lombok.AccessLevel;
28 import lombok.NoArgsConstructor;
29
30 @NoArgsConstructor(access = AccessLevel.PRIVATE)
31 public final class AppcLcmConstants {
32
33     // Strings for OPERATIONs
34     public static final String OPERATION_RESTART = "Restart";
35     public static final String OPERATION_REBUILD = "Rebuild";
36     public static final String OPERATION_MIGRATE = "Migrate";
37     public static final String OPERATION_CONFIG_MODIFY = "ConfigModify";
38
39     public static final Set<String> OPERATION_NAMES =
40                     Set.of(OPERATION_RESTART, OPERATION_REBUILD, OPERATION_MIGRATE, OPERATION_CONFIG_MODIFY);
41
42     // operations from legacy APPC
43     public static final String LEGACY_MODIFY_CONFIG = "ModifyConfig";
44
45     public static final Set<String> LEGACY_NAMES =
46                     Set.of(LEGACY_MODIFY_CONFIG);
47
48     public static final Set<String> COMBINED_OPERATION_NAMES;
49
50     static {
51         Set<String> set = new HashSet<>(OPERATION_NAMES);
52         set.addAll(LEGACY_NAMES);
53         COMBINED_OPERATION_NAMES = Collections.unmodifiableSet(set);
54     }
55
56     protected static final Set<String> SUPPORTS_PAYLOAD =
57                     Set.of(OPERATION_CONFIG_MODIFY).stream().map(String::toLowerCase).collect(Collectors.toSet());
58 }