/** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you 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. */ package org.apache.ambari.server.controller.ivory; /** * Ivory mirroring job instance. */ public class Instance { private final String feedName; private final String id; private final String status; private final String startTime; private final String endTime; private final String details; private final String log; /** * Construct an instance. * * @param feedName the feed name * @param id the id * @param status the status * @param startTime the start time * @param endTime the end time * @param details the details * @param log the log */ public Instance(String feedName, String id, String status, String startTime, String endTime, String details, String log) { this.feedName = feedName; this.id = id; this.status = status; this.startTime = startTime; this.endTime = endTime; this.details = details; this.log = log; } /** * Get the feed name. * * @return the feed name */ public String getFeedName() { return feedName; } /** * Get the ID. * * @return the id */ public String getId() { return id; } /** * Get the status. * * @return the status */ public String getStatus() { return status; } /** * Get the start time. * * @return the start time */ public String getStartTime() { return startTime; } /** * Get the end time. * * @return the end time */ public String getEndTime() { return endTime; } /** * Get the details. * * @return the details */ public String getDetails() { return details; } /** * Get the log. * * @return the log */ public String getLog() { return log; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Instance instance = (Instance) o; return !(details != null ? !details.equals(instance.details) : instance.details != null) && !(endTime != null ? !endTime.equals(instance.endTime) : instance.endTime != null) && !(feedName != null ? !feedName.equals(instance.feedName) : instance.feedName != null) && !(id != null ? !id.equals(instance.id) : instance.id != null) && !(log != null ? !log.equals(instance.log) : instance.log != null) && !(startTime != null ? !startTime.equals(instance.startTime) : instance.startTime != null) && !(status != null ? !status.equals(instance.status) : instance.status != null); } @Override public int hashCode() { int result = feedName != null ? feedName.hashCode() : 0; result = 31 * result + (id != null ? id.hashCode() : 0); result = 31 * result + (status != null ? status.hashCode() : 0); result = 31 * result + (startTime != null ? startTime.hashCode() : 0); result = 31 * result + (endTime != null ? endTime.hashCode() : 0); result = 31 * result + (details != null ? details.hashCode() : 0); result = 31 * result + (log != null ? log.hashCode() : 0); return result; } }