+++ /dev/null
-/**
- * ============LICENSE_START==========================================
- * org.onap.aai
- * ===================================================================
- * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017 Amdocs
- * ===================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END============================================
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- */
-package org.onap.aai.champ.event;
-
-
-import java.io.IOException;
-
-import org.onap.aai.champ.model.ChampObject;
-import org.onap.aai.champ.model.ChampObjectIndex;
-import org.onap.aai.champ.model.ChampPartition;
-import org.onap.aai.champ.model.ChampRelationship;
-import org.onap.aai.champ.model.ChampRelationshipIndex;
-
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.core.JsonParseException;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.JsonMappingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-
-public class ChampEvent {
-
- public enum ChampOperation {
- STORE,
- REPLACE,
- DELETE
- }
-
- private static ObjectMapper mapper = new ObjectMapper();
-
- private ChampOperation operation;
- private long timestamp;
- private ChampObject vertex = null;
- private ChampRelationship relationship = null;
- private ChampPartition partition = null;
- private ChampObjectIndex objectIndex = null;
- private ChampRelationshipIndex relationshipIndex = null;
-
-
- public static Builder builder() {
- return new Builder();
- }
-
- public ChampOperation getOperation() {
- return operation;
- }
-
- public void setOperation(ChampOperation operation) {
- this.operation = operation;
- }
-
- public long getTimestamp() {
- return timestamp;
- }
-
- public void setTimestamp(long timestamp) {
- this.timestamp = timestamp;
- }
-
- public ChampObject getVertex() {
- return vertex;
- }
-
- public void setVertex(ChampObject vertex) {
- this.vertex = vertex;
- }
-
- public ChampRelationship getRelationship() {
- return relationship;
- }
-
- public void setRelationship(ChampRelationship relationship) {
- this.relationship = relationship;
- }
-
- public ChampPartition getPartition() {
- return partition;
- }
-
- public void setPartition(ChampPartition partition) {
- this.partition = partition;
- }
-
- public ChampObjectIndex getObjectIndex() {
- return objectIndex;
- }
-
- public void setObjectIndex(ChampObjectIndex index) {
- this.objectIndex = index;
- }
-
- public ChampRelationshipIndex getRelationshipIndex() {
- return relationshipIndex;
- }
-
- public void setRelationshipIndex(ChampRelationshipIndex relationshipIndex) {
- this.relationshipIndex = relationshipIndex;
- }
-
- public String toJson() {
-
- ObjectMapper mapper = new ObjectMapper();
- mapper.setSerializationInclusion(Include.NON_NULL);
-
- try {
- return mapper.writeValueAsString(this);
- } catch (JsonProcessingException e) {
- return "Unmarshallable: " + e.getMessage();
- }
- }
-
- public static ChampEvent fromJson(String json) throws JsonParseException, JsonMappingException, IOException {
-
- mapper.setSerializationInclusion(Include.NON_NULL);
- return mapper.readValue(json, ChampEvent.class);
- }
- @Override
- public String toString() {
- return toJson();
- }
-
- public static class Builder {
-
- ChampEvent event = null;
-
-
- public Builder() {
- event = new ChampEvent();
- }
-
- public Builder operation(ChampOperation operation) {
- event.setOperation(operation);
- return this;
- }
-
- public Builder entity(ChampObject entity) {
- event.setVertex(entity);
- return this;
- }
-
- public Builder entity(ChampRelationship relationship) {
- event.relationship = relationship;
- return this;
- }
-
- public Builder entity(ChampPartition partition) {
- event.partition = partition;
- return this;
- }
-
- public Builder entity(ChampObjectIndex index) {
- event.objectIndex = index;
- return this;
- }
-
- public Builder entity(ChampRelationshipIndex relationshipIndex) {
- event.relationshipIndex = relationshipIndex;
- return this;
- }
-
- public ChampEvent build() {
-
- event.setTimestamp(System.currentTimeMillis());
- return event;
- }
- }
-}