a4e84af0d43ea4c27c3b8073abf1a0b070e88964
[policy/clamp.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  *  Copyright (C) 2021 Nordix Foundation.
4  * ================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  * ============LICENSE_END=========================================================
17  */
18
19 package org.onap.policy.clamp.controlloop.runtime.main.parameters;
20
21 import java.util.concurrent.TimeUnit;
22 import javax.validation.Valid;
23 import javax.validation.constraints.Min;
24 import javax.validation.constraints.NotNull;
25 import lombok.Getter;
26 import lombok.Setter;
27 import org.springframework.validation.annotation.Validated;
28
29 /**
30  * Parameters for communicating with participants.
31  */
32 @Getter
33 @Setter
34 @Validated
35 public class ParticipantParameters {
36
37     /**
38      * Default maximum message age, in milliseconds, that should be examined. Any message
39      * older than this is discarded.
40      */
41     public static final long DEFAULT_MAX_AGE_MS = TimeUnit.MILLISECONDS.convert(10, TimeUnit.MINUTES);
42
43     @Min(1)
44     private long heartBeatMs;
45
46     @Min(1)
47     private long maxMessageAgeMs =  DEFAULT_MAX_AGE_MS;
48
49     @Valid
50     @NotNull
51     private ParticipantUpdateParameters updateParameters;
52
53     @Valid
54     @NotNull
55     private ParticipantStateChangeParameters stateChangeParameters;
56
57 }