Sonar Critical Fix
[dcaegen2/analytics/tca.git] / dcae-analytics-cdap-plugins / src / main / java / org / openecomp / dcae / apod / analytics / cdap / plugins / domain / schema / dmaap / DMaaPSourceOutputSchema.java
1 /*\r
2  * ===============================LICENSE_START======================================\r
3  *  dcae-analytics\r
4  * ================================================================================\r
5  *    Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
6  * ================================================================================\r
7  *  Licensed under the Apache License, Version 2.0 (the "License");\r
8  *  you may not use this file except in compliance with the License.\r
9  *   You may obtain a copy of the License at\r
10  *\r
11  *          http://www.apache.org/licenses/LICENSE-2.0\r
12  *\r
13  *  Unless required by applicable law or agreed to in writing, software\r
14  *  distributed under the License is distributed on an "AS IS" BASIS,\r
15  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  *  See the License for the specific language governing permissions and\r
17  *  limitations under the License.\r
18  *  ============================LICENSE_END===========================================\r
19  */\r
20 \r
21 package org.openecomp.dcae.apod.analytics.cdap.plugins.domain.schema.dmaap;\r
22 \r
23 import co.cask.cdap.api.data.schema.Schema;\r
24 import org.openecomp.dcae.apod.analytics.cdap.plugins.common.PluginSchema;\r
25 \r
26 /**\r
27  * Output Schema for DMaaP MR Source Plugin\r
28  *\r
29  * @author Rajiv Singla . Creation Date: 1/25/2017.\r
30  */\r
31 public enum DMaaPSourceOutputSchema implements PluginSchema {\r
32 \r
33     TIMESTAMP("ts"),\r
34     RESPONSE_CODE("responseCode"),\r
35     RESPONSE_MESSAGE("responseMessage"),\r
36     FETCHED_MESSAGE("message");\r
37 \r
38     private String schemaColumnName;\r
39 \r
40     DMaaPSourceOutputSchema(String schemaColumnName) {\r
41         this.schemaColumnName = schemaColumnName;\r
42     }\r
43 \r
44     @Override\r
45     public String getSchemaColumnName() {\r
46         return schemaColumnName;\r
47     }\r
48 \r
49     public static Schema getSchema() {\r
50         return Schema.recordOf(\r
51                 "DMaaPMRSourcePluginResponse",\r
52                 Schema.Field.of(TIMESTAMP.getSchemaColumnName(), Schema.of(Schema.Type.LONG)),\r
53                 Schema.Field.of(RESPONSE_CODE.getSchemaColumnName(), Schema.of(Schema.Type.INT)),\r
54                 Schema.Field.of(RESPONSE_MESSAGE.getSchemaColumnName(), Schema.of(Schema.Type.STRING)),\r
55                 Schema.Field.of(FETCHED_MESSAGE.getSchemaColumnName(), Schema.of(Schema.Type.STRING))\r
56         );\r
57     }\r
58 \r
59 }\r