2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2018 Ericsson. All rights reserved.
4 * ================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
17 * SPDX-License-Identifier: Apache-2.0
18 * ============LICENSE_END=========================================================
20 package org.onap.so.montoring.model;
22 import static org.onap.so.montoring.utils.ObjectEqualsUtils.isEqual;
25 * @author waqas.ikram@ericsson.com
28 public class ActivityInstanceDetail {
29 private final String activityId;
30 private final String activityName;
31 private final String activityType;
32 private final String processInstanceId;
33 private final String calledProcessInstanceId;
34 private final String startTime;
35 private final String endTime;
36 private final String durationInMilliseconds;
38 public ActivityInstanceDetail(final ActivityInstanceDetailBuilder builder) {
39 this.activityId = builder.activityId;
40 this.activityName = builder.activityName;
41 this.activityType = builder.activityType;
42 this.processInstanceId = builder.processInstanceId;
43 this.calledProcessInstanceId = builder.calledProcessInstanceId;
44 this.startTime = builder.startTime;
45 this.endTime = builder.endTime;
46 this.durationInMilliseconds = builder.durationInMilliseconds;
50 * @return the activityId
52 public String getActivityId() {
57 * @return the activityName
59 public String getActivityName() {
64 * @return the activityType
66 public String getActivityType() {
71 * @return the processInstanceId
73 public String getProcessInstanceId() {
74 return processInstanceId;
78 * @return the calledProcessInstanceId
80 public String getCalledProcessInstanceId() {
81 return calledProcessInstanceId;
85 * @return the startTime
87 public String getStartTime() {
94 public String getEndTime() {
99 * @return the durationInMillis
101 public String getDurationInMillis() {
102 return durationInMilliseconds;
106 public int hashCode() {
107 final int prime = 31;
109 result = prime * result + ((activityId == null) ? 0 : activityId.hashCode());
110 result = prime * result + ((activityName == null) ? 0 : activityName.hashCode());
111 result = prime * result + ((activityType == null) ? 0 : activityType.hashCode());
112 result = prime * result + ((calledProcessInstanceId == null) ? 0 : calledProcessInstanceId.hashCode());
113 result = prime * result + ((durationInMilliseconds == null) ? 0 : durationInMilliseconds.hashCode());
114 result = prime * result + ((endTime == null) ? 0 : endTime.hashCode());
115 result = prime * result + ((processInstanceId == null) ? 0 : processInstanceId.hashCode());
116 result = prime * result + ((startTime == null) ? 0 : startTime.hashCode());
121 public boolean equals(final Object obj) {
123 if (obj instanceof ActivityInstanceDetail) {
124 final ActivityInstanceDetail other = (ActivityInstanceDetail) obj;
125 return isEqual(activityId, other.activityId) && isEqual(activityName, other.activityName)
126 && isEqual(activityType, other.activityType) && isEqual(processInstanceId, other.processInstanceId)
127 && isEqual(calledProcessInstanceId, other.calledProcessInstanceId)
128 && isEqual(startTime, other.startTime) && isEqual(endTime, other.endTime)
129 && isEqual(durationInMilliseconds, other.durationInMilliseconds);
136 public static final class ActivityInstanceDetailBuilder {
138 private String activityId;
139 private String activityName;
140 private String activityType;
141 private String processInstanceId;
142 private String calledProcessInstanceId;
143 private String startTime;
144 private String endTime;
145 private String durationInMilliseconds;
147 public ActivityInstanceDetailBuilder activityId(final String activityId) {
148 this.activityId = activityId;
152 public ActivityInstanceDetailBuilder activityName(final String activityName) {
153 this.activityName = activityName;
157 public ActivityInstanceDetailBuilder activityType(final String activityType) {
158 this.activityType = activityType;
162 public ActivityInstanceDetailBuilder processInstanceId(final String processInstanceId) {
163 this.processInstanceId = processInstanceId;
167 public ActivityInstanceDetailBuilder calledProcessInstanceId(final String calledProcessInstanceId) {
168 this.calledProcessInstanceId = calledProcessInstanceId;
172 public ActivityInstanceDetailBuilder startTime(final String startTime) {
173 this.startTime = startTime;
177 public ActivityInstanceDetailBuilder endTime(final String endTime) {
178 this.endTime = endTime;
182 public ActivityInstanceDetailBuilder durationInMilliseconds(final String durationInMilliseconds) {
183 this.durationInMilliseconds = durationInMilliseconds;
187 public ActivityInstanceDetail build() {
188 return new ActivityInstanceDetail(this);