2 * ============LICENSE_START==========================================
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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.
19 * ============LICENSE_END=============================================
20 * ====================================================================
22 package org.onap.music.datastore.jsonobjects;
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;
31 import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
33 import io.swagger.annotations.ApiModel;
34 import io.swagger.annotations.ApiModelProperty;
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;
43 private String timestamp;
44 private transient Map<String, Object> row_specification;
45 private Map<String, String> consistencyInfo;
46 private Map<String, byte[]> objectMap;
48 @ApiModelProperty(value = "objectMap")
49 public Map<String, byte[]> getObjectMap() {
53 public void setObjectMap(Map<String, byte[]> objectMap) {
54 this.objectMap = objectMap;
57 @ApiModelProperty(value = "keyspace")
58 public String getKeyspaceName() {
62 public void setKeyspaceName(String keyspaceName) {
63 this.keyspaceName = keyspaceName;
66 @ApiModelProperty(value = "Table name")
67 public String getTableName() {
71 public void setTableName(String tableName) {
72 this.tableName = tableName;
75 @ApiModelProperty(value = "Consistency level", allowableValues = "eventual,critical,atomic")
76 public Map<String, String> getConsistencyInfo() {
77 return consistencyInfo;
80 public void setConsistencyInfo(Map<String, String> consistencyInfo) {
81 this.consistencyInfo = consistencyInfo;
84 @ApiModelProperty(value = "Time to live information")
85 public String getTtl() {
89 public void setTtl(String ttl) {
93 @ApiModelProperty(value = "Time stamp")
94 public String getTimestamp() {
98 public void setTimestamp(String timestamp) {
99 this.timestamp = timestamp;
102 @ApiModelProperty(value = "values returned")
103 public Map<String, Object> getValues() {
107 public void setValues(Map<String, Object> values) {
108 this.values = values;
111 @ApiModelProperty(value = "Information for selecting specific rows for insert")
112 public Map<String, Object> getRow_specification() {
113 return row_specification;
116 public void setRow_specification(Map<String, Object> row_specification) {
117 this.row_specification = row_specification;
120 public byte[] serialize() {
121 ByteArrayOutputStream bos = new ByteArrayOutputStream();
122 ObjectOutput out = null;
124 out = new ObjectOutputStream(bos);
125 out.writeObject(this);
126 } catch (IOException e) {
129 return bos.toByteArray();