Standalone TCA with EELF Logger
[dcaegen2/analytics/tca-gen2.git] / dcae-analytics / dcae-analytics-tca-model / src / main / java / org / onap / dcae / analytics / tca / model / util / json / module / TcaPolicyModule.java
1 /*
2  * ================================================================================
3  * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
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
20 package org.onap.dcae.analytics.tca.model.util.json.module;
21
22 import com.fasterxml.jackson.databind.module.SimpleModule;
23
24 import org.onap.dcae.analytics.tca.model.policy.BaseTcaPolicyModel;
25 import org.onap.dcae.analytics.tca.model.policy.ClosedLoopEventStatus;
26 import org.onap.dcae.analytics.tca.model.policy.ControlLoopSchemaType;
27 import org.onap.dcae.analytics.tca.model.policy.Direction;
28 import org.onap.dcae.analytics.tca.model.policy.MetricsPerEventName;
29 import org.onap.dcae.analytics.tca.model.policy.TcaPolicy;
30 import org.onap.dcae.analytics.tca.model.policy.Threshold;
31 import org.onap.dcae.analytics.tca.model.util.json.mixin.policy.BaseTcaPolicyModelMixin;
32 import org.onap.dcae.analytics.tca.model.util.json.mixin.policy.ClosedLoopEventStatusMixin;
33 import org.onap.dcae.analytics.tca.model.util.json.mixin.policy.ControlLoopSchemaTypeMixin;
34 import org.onap.dcae.analytics.tca.model.util.json.mixin.policy.DirectionMixin;
35 import org.onap.dcae.analytics.tca.model.util.json.mixin.policy.MetricsPerEventNameMixin;
36 import org.onap.dcae.analytics.tca.model.util.json.mixin.policy.TcaPolicyMixin;
37 import org.onap.dcae.analytics.tca.model.util.json.mixin.policy.ThresholdMixin;
38
39
40 /**
41  * @author Rajiv Singla
42  */
43 public class TcaPolicyModule extends SimpleModule {
44
45     private static final long serialVersionUID = 1L;
46
47
48     @Override
49     public void setupModule(final SetupContext setupContext) {
50         setupContext.setMixInAnnotations(BaseTcaPolicyModel.class, BaseTcaPolicyModelMixin.class);
51         setupContext.setMixInAnnotations(TcaPolicy.class, TcaPolicyMixin.class);
52         setupContext.setMixInAnnotations(ControlLoopSchemaType.class, ControlLoopSchemaTypeMixin.class);
53         setupContext.setMixInAnnotations(ClosedLoopEventStatus.class, ClosedLoopEventStatusMixin.class);
54         setupContext.setMixInAnnotations(MetricsPerEventName.class, MetricsPerEventNameMixin.class);
55         setupContext.setMixInAnnotations(Direction.class, DirectionMixin.class);
56         setupContext.setMixInAnnotations(Threshold.class, ThresholdMixin.class);
57         setupContext.setMixInAnnotations(TcaPolicy.class, TcaPolicyMixin.class);
58     }
59 }