2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6 * Copyright © 2017 Amdocs
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
21 * ECOMP is a trademark and service mark of AT&T Intellectual Property.
23 package org.onap.aai.sparky.sync.entity;
25 import java.sql.Timestamp;
26 import java.text.SimpleDateFormat;
28 import com.fasterxml.jackson.annotation.JsonIgnore;
29 import com.fasterxml.jackson.annotation.JsonProperty;
32 * The Class IndexableEntity.
34 public abstract class IndexableEntity {
35 protected String id; // generated, SHA-256 digest
36 protected String entityType;
37 protected String entityPrimaryKeyValue;
38 protected String lastmodTimestamp;
39 protected String link;
41 private static final String TIMESTAMP_FORMAT = "yyyy-MM-dd'T'HH:mm:ss.SSSZ";
44 * Instantiates a new indexable entity.
46 public IndexableEntity() {
47 SimpleDateFormat dateFormat = new SimpleDateFormat(TIMESTAMP_FORMAT);
48 Timestamp timestamp = new Timestamp(System.currentTimeMillis());
49 String currentFormattedTimeStamp = dateFormat.format(timestamp);
50 this.setEntityTimeStamp(currentFormattedTimeStamp);
54 public String getId() {
58 @JsonProperty("entityType")
59 public String getEntityType() {
63 @JsonProperty("entityPrimaryKeyValue")
64 public String getEntityPrimaryKeyValue() {
65 return entityPrimaryKeyValue;
68 @JsonProperty("lastmodTimestamp")
69 public String getEntityTimeStamp() {
70 return lastmodTimestamp;
73 public void setId(String id) {
77 public void setEntityType(String entityType) {
78 this.entityType = entityType;
81 public void setEntityPrimaryKeyValue(String fieldValue) {
82 this.entityPrimaryKeyValue = fieldValue;
85 public void setEntityTimeStamp(String lastmodTimestamp) {
86 this.lastmodTimestamp = lastmodTimestamp;
90 public String getLink() {
94 public void setLink(String link) {