Standalone TCA with EELF Logger
[dcaegen2/analytics/tca-gen2.git] / dcae-analytics / dcae-analytics-tca-core / src / main / java / org / onap / dcae / analytics / tca / core / service / TcaExecutionContext.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.core.service;
21
22 import org.onap.dcae.analytics.tca.model.policy.TcaPolicy;
23
24 /**
25  * TCA Execution context captures various fields required to calculate a TCA threshold violation calculation execution
26  *
27  * @author Rajiv Singla
28  */
29 public interface TcaExecutionContext {
30
31     /**
32      * Provides request id associated with execution context
33      *
34      * @return request id associated with execution context
35      */
36     String getRequestId();
37
38
39     /**
40      * Provides transaction id associated with execution context
41      *
42      * @return transaction id associated with execution context
43      */
44     String getTransactionId();
45
46
47     /**
48      * Provides message order number inside a execution batch
49      *
50      * @return message order number inside a execution batch
51      */
52     int getMessageIndex();
53
54
55     /**
56      * Provides common event format message as JSON string that is being analyzed
57      *
58      * @return common event format message as JSON string that is being analyzed
59      */
60     String getCefMessage();
61
62
63     /**
64      * Provides TCA Policy associated with the processing context
65      *
66      * @return TCA Policy associated with processing context
67      */
68     TcaPolicy getTcaPolicy();
69
70
71     /**
72      * Provides TCA Processing Context captures various mutable fields that are computed during TCA execution
73      *
74      * @return TCA Processing Context captures various mutable fields that are computed during TCA execution
75      */
76     TcaProcessingContext getTcaProcessingContext();
77
78
79     /**
80      * Provides TCA Processing Result Context which captures outputs of TCA execution
81      *
82      * @return TCA Processing Result Context which captures outputs of TCA execution
83      */
84     TcaResultContext getTcaResultContext();
85
86
87     /**
88      * Provides TCA Abatement context containing abstractions for TCA Abatement processing calculations
89      *
90      * @return TCA abatement context containing abstractions for TCA Abatement processing calculations
91      */
92     TcaAbatementContext getTcaAbatementContext();
93
94
95     /**
96      * Provides TCA AAI Enrichment Context
97      *
98      * @return TCA AAI enrichment context
99      */
100     TcaAaiEnrichmentContext getTcaAaiEnrichmentContext();
101
102 }