ef02c617b7825f71f1ec186b77d656b4c4b2f8db
[policy/drools-pdp.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  * api-active-standby-management
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.policy.drools.activestandby;
22
23 import org.onap.policy.drools.utils.OrderedService;
24 import org.onap.policy.drools.utils.OrderedServiceImpl;
25
26 /**
27  * This interface provides a way to invoke optional features at various
28  * points in the code. At appropriate points in the
29  * application, the code iterates through this list, invoking these optional
30  * methods.
31  */
32 public interface ActiveStandbyFeatureAPI extends OrderedService
33 {
34         /**
35          * 'FeatureAPI.impl.getList()' returns an ordered list of objects
36          * implementing the 'FeatureAPI' interface.
37          */
38         public static OrderedServiceImpl<ActiveStandbyFeatureAPI> impl =
39                                         new OrderedServiceImpl<>(ActiveStandbyFeatureAPI.class);
40
41         /**
42          * This method returns the resourceName (PDP ID) for the Drools-PDP that is
43          * currently designated as active.
44          * 
45          * @return String (resourceName)
46          */
47         public String getPdpdNowActive();
48
49         /**
50          * This method returns the resourceName (PDP ID) for the Drools-PDP that was
51          * previously designated as active.
52          * 
53          * @return String (resourceName)
54          */
55         public String getPdpdLastActive();
56
57         /**
58          * This method returns the resourceName associated with this instance of the feature 
59          * @return String (resourceName)
60          */
61         public String getResourceName();
62
63 }