2 * ============LICENSE_START========================================================================
3 * ONAP : tr-069-adapter
4 * =================================================================================================
5 * Copyright (C) 2020 CommScope Inc Intellectual Property.
6 * =================================================================================================
7 * This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
8 * Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
9 * may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
14 * either express or implied. See the License for the specific language governing permissions and
15 * limitations under the License.
16 * ===============LICENSE_END=======================================================================
19 package org.commscope.tr069adapter.vesagent.entity;
\r
21 import com.google.gson.Gson;
\r
23 import java.util.Date;
\r
24 import java.util.Map;
\r
26 import javax.persistence.Column;
\r
27 import javax.persistence.Entity;
\r
28 import javax.persistence.GeneratedValue;
\r
29 import javax.persistence.GenerationType;
\r
30 import javax.persistence.Id;
\r
31 import javax.persistence.Table;
\r
32 import javax.persistence.Transient;
\r
33 import javax.persistence.UniqueConstraint;
\r
36 @Table(name = "VES_DEVICE_DATA",
\r
37 uniqueConstraints = @UniqueConstraint(columnNames = {"DEVICE_ID", "ATTR_GROUP"}))
\r
38 public class DeviceDataEntity {
\r
41 @Column(name = "ID")
\r
42 @GeneratedValue(strategy = GenerationType.AUTO)
\r
45 @Column(name = "DEVICE_ID", length = 30)
\r
46 private String deviceId;
\r
48 @Column(name = "ENODEB_NAME", length = 100)
\r
49 private String eNodeBName;
\r
51 @Column(name = "OUI", length = 30)
\r
54 @Column(name = "PRODUCT_CLASS", length = 100)
\r
55 private String productClass;
\r
57 @Column(name = "ATTR_JSON", length = 4000)
\r
58 private String attrJson;
\r
60 @Column(name = "ATTR_GROUP", length = 255)
\r
61 private String attrGroup;
\r
63 @Column(name = "LAST_UPDATED_TIME")
\r
64 private Date lastUpdateTime = new Date();
\r
66 public Long getId() {
\r
70 public void setId(Long id) {
\r
74 public String getDeviceId() {
\r
78 public void setDeviceId(String deviceId) {
\r
79 this.deviceId = deviceId;
\r
82 public String geteNodeBName() {
\r
86 public void seteNodeBName(String eNodeBName) {
\r
87 this.eNodeBName = eNodeBName;
\r
90 public String getOui() {
\r
94 public void setOui(String oui) {
\r
98 public String getProductClass() {
\r
99 return productClass;
\r
102 public void setProductClass(String productClass) {
\r
103 this.productClass = productClass;
\r
106 public String getAttrJson() {
\r
110 public void setAttrJson(String attrJson) {
\r
111 this.attrJson = attrJson;
\r
114 public String getAttrGroup() {
\r
118 public void setAttrGroup(String attrGroup) {
\r
119 this.attrGroup = attrGroup;
\r
122 public Date getLastUpdateTime() {
\r
123 return lastUpdateTime;
\r
126 public void setLastUpdateTime(Date lastUpdateTime) {
\r
127 this.lastUpdateTime = lastUpdateTime;
\r
131 private Long startEpochMicrosec;
133 public Long getStartEpochMicrosec() {
134 return startEpochMicrosec;
137 public void setStartEpochMicrosec(Long startEpochMicrosec) {
138 this.startEpochMicrosec = startEpochMicrosec;
142 public void setAttributesMap(Map<String, String> attributesMap) {
\r
143 if (null == attributesMap || attributesMap.isEmpty()) {
\r
147 this.attrJson = new Gson().toJson(attributesMap);
\r
152 public Map<String, String> getAttributesMap() {
\r
153 Map<String, String> attributesMap = null;
\r
154 if (null != this.attrJson && !this.attrJson.isEmpty()) {
\r
155 attributesMap = new Gson().fromJson(this.attrJson, Map.class);
\r
157 return attributesMap;
\r