001/*
002 * Copyright 2010-2013 Ning, Inc.
003 *
004 * Ning licenses this file to you under the Apache License, version 2.0
005 * (the "License"); you may not use this file except in compliance with the
006 * License.  You may obtain a copy of the License at:
007 *
008 *    http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
012 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
013 * License for the specific language governing permissions and limitations
014 * under the License.
015 */
016
017package com.ning.billing.recurly.model;
018
019import javax.xml.bind.annotation.XmlElement;
020import javax.xml.bind.annotation.XmlRootElement;
021
022@XmlRootElement(name = "details")
023public class TransactionDetails extends RecurlyObject {
024
025    @XmlElement(name = "account")
026    private Account account;
027
028    public Account getAccount() {
029        return account;
030    }
031
032    public void setAccount(final Account account) {
033        this.account = account;
034    }
035
036    @Override
037    public String toString() {
038        final StringBuilder sb = new StringBuilder("TransactionDetails{");
039        sb.append("account=").append(account);
040        sb.append('}');
041        return sb.toString();
042    }
043
044    @Override
045    public boolean equals(final Object o) {
046        if (this == o) {
047            return true;
048        }
049        if (o == null || getClass() != o.getClass()) {
050            return false;
051        }
052
053        final TransactionDetails that = (TransactionDetails) o;
054
055        if (account != null ? !account.equals(that.account) : that.account != null) {
056            return false;
057        }
058
059        return true;
060    }
061
062    @Override
063    public int hashCode() {
064        return account != null ? account.hashCode() : 0;
065    }
066}