/******************************************************************************* * Copyright (c) 2012-2017 Codenvy, S.A. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Codenvy, S.A. - initial API and implementation *******************************************************************************/ package org.eclipse.che.api.factory.server.model.impl; import org.eclipse.che.api.core.model.factory.ButtonAttributes; import javax.persistence.Column; import javax.persistence.Embeddable; import java.util.Objects; /** * Data object for {@link ButtonAttributes}. * * @author Anton Korneta */ @Embeddable public class ButtonAttributesImpl implements ButtonAttributes { @Column(name = "color") private String color; @Column(name = "logo") private String logo; @Column(name = "style") private String style; @Column(name = "counter") private Boolean counter; public ButtonAttributesImpl() {} public ButtonAttributesImpl(String color, String logo, String style, Boolean counter) { this.color = color; this.logo = logo; this.style = style; this.counter = counter; } public ButtonAttributesImpl(ButtonAttributes attributes) { this(attributes.getColor(), attributes.getLogo(), attributes.getStyle(), attributes.getCounter()); } @Override public String getColor() { return color; } public void setColor(String color) { this.color = color; } @Override public String getLogo() { return logo; } public void setLogo(String logo) { this.logo = logo; } @Override public String getStyle() { return style; } public void setStyle(String style) { this.style = style; } @Override public Boolean getCounter() { return counter; } public void setCounter(Boolean counter) { this.counter = counter; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (!(obj instanceof ButtonAttributesImpl)) return false; final ButtonAttributesImpl other = (ButtonAttributesImpl)obj; return Objects.equals(color, other.color) && Objects.equals(logo, other.logo) && Objects.equals(style, other.style) && Objects.equals(counter, other.counter); } @Override public int hashCode() { int result = 7; result = 31 * result + Objects.hashCode(color); result = 31 * result + Objects.hashCode(logo); result = 31 * result + Objects.hashCode(style); result = 31 * result + Objects.hashCode(counter); return result; } @Override public String toString() { return "ButtonAttributesImpl{" + "color='" + color + '\'' + ", logo='" + logo + '\'' + ", style='" + style + '\'' + ", counter=" + counter + '}'; } }