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
9 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
20 package org.onap.dcae.analytics.tca.model.util.json.module;
22 import com.fasterxml.jackson.databind.module.SimpleModule;
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;
41 * @author Rajiv Singla
43 public class TcaPolicyModule extends SimpleModule {
45 private static final long serialVersionUID = 1L;
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);