Merge "JsonInser.java : fixed sonar issue"
[music.git] / src / main / java / org / onap / music / datastore / jsonobjects / JsonInsert.java
1 /*
2  * ============LICENSE_START==========================================
3  * org.onap.music
4  * ===================================================================
5  *  Copyright (c) 2017 AT&T Intellectual Property
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  * 
19  * ============LICENSE_END=============================================
20  * ====================================================================
21  */
22 package org.onap.music.datastore.jsonobjects;
23
24 import java.io.ByteArrayOutputStream;
25 import java.io.IOException;
26 import java.io.ObjectOutput;
27 import java.io.ObjectOutputStream;
28 import java.io.Serializable;
29 import java.util.Map;
30
31 import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
32
33 import io.swagger.annotations.ApiModel;
34 import io.swagger.annotations.ApiModelProperty;
35
36 @ApiModel(value = "JsonTable", description = "Json model for table vlaues insert")
37 @JsonIgnoreProperties(ignoreUnknown = true)
38 public class JsonInsert implements Serializable {
39     private String keyspaceName;
40     private String tableName;
41     private transient Map<String, Object> values;
42     private String ttl;
43     private String timestamp;
44     private transient Map<String, Object> row_specification;
45     private Map<String, String> consistencyInfo;
46     private Map<String, byte[]> objectMap;
47     
48     @ApiModelProperty(value = "objectMap")
49     public Map<String, byte[]> getObjectMap() {
50                 return objectMap;
51         }
52     
53     public void setObjectMap(Map<String, byte[]> objectMap) {
54                 this.objectMap = objectMap;
55         }
56     
57     @ApiModelProperty(value = "keyspace")
58     public String getKeyspaceName() {
59         return keyspaceName;
60     }
61
62     public void setKeyspaceName(String keyspaceName) {
63         this.keyspaceName = keyspaceName;
64     }
65
66     @ApiModelProperty(value = "Table name")
67     public String getTableName() {
68         return tableName;
69     }
70
71     public void setTableName(String tableName) {
72         this.tableName = tableName;
73     }
74
75     @ApiModelProperty(value = "Consistency level", allowableValues = "eventual,critical,atomic")
76     public Map<String, String> getConsistencyInfo() {
77         return consistencyInfo;
78     }
79
80     public void setConsistencyInfo(Map<String, String> consistencyInfo) {
81         this.consistencyInfo = consistencyInfo;
82     }
83
84     @ApiModelProperty(value = "Time to live information")
85     public String getTtl() {
86         return ttl;
87     }
88
89     public void setTtl(String ttl) {
90         this.ttl = ttl;
91     }
92
93     @ApiModelProperty(value = "Time stamp")
94     public String getTimestamp() {
95         return timestamp;
96     }
97
98     public void setTimestamp(String timestamp) {
99         this.timestamp = timestamp;
100     }
101
102     @ApiModelProperty(value = "values returned")
103     public Map<String, Object> getValues() {
104         return values;
105     }
106
107     public void setValues(Map<String, Object> values) {
108         this.values = values;
109     }
110
111     @ApiModelProperty(value = "Information for selecting specific rows for insert")
112     public Map<String, Object> getRow_specification() {
113         return row_specification;
114     }
115
116     public void setRow_specification(Map<String, Object> row_specification) {
117         this.row_specification = row_specification;
118     }
119
120     public byte[] serialize() {
121         ByteArrayOutputStream bos = new ByteArrayOutputStream();
122         ObjectOutput out = null;
123         try {
124             out = new ObjectOutputStream(bos);
125             out.writeObject(this);
126         } catch (IOException e) {
127             e.printStackTrace();
128         }
129         return bos.toByteArray();
130     }
131
132 }