TransactionEntrySplitX.java :  » ERP-CRM-Financial » jGnash-2 » jgnash » engine » Java Open Source

Java Open Source » ERP CRM Financial » jGnash 2 
jGnash 2 » jgnash » engine » TransactionEntrySplitX.java
/*
 * jGnash, a personal finance application
 * Copyright (C) 2001-2008 Craig Cavanaugh
 * 
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
package jgnash.engine;

import java.math.BigDecimal;

/** Add shares without impacting the cash balance.  This is a single
 * entry transaction
 * 
 * @author Craig Cavanaugh
 * 
 * $Id: TransactionEntrySplitX.java 197 2008-01-01 08:13:35Z ccavanaugh $
 */
public class TransactionEntrySplitX extends TransactionEntryAbstractIncrease {

    /** No argument constructor for reflection purposes.
     * <b>Do not use to create a new instance</b>
     * @deprecated
     */
    @Deprecated
    public TransactionEntrySplitX() {

    }

    public TransactionEntrySplitX(Account account, SecurityNode securityNode, BigDecimal price, BigDecimal quantity) {
        assert account.getAccountType().getAccountGroup() == AccountGroup.INVEST;

        setCreditAccount(account);
        setDebitAccount(account);

        setPrice(price);
        setQuantity(quantity);
        setSecurityNode(securityNode);
    }

    @Override
    public TransactionType getTransactionType() {
        return TransactionType.SPLITSHARE;
    }

    @Override
    public Object clone() {
        TransactionEntrySplitX entry = new TransactionEntrySplitX();

        entry.setCreditAccount(getCreditAccount());
        entry.setCreditAmount(getCreditAmount());
        entry.setDebitAmount(getDebitAmount());
        entry.setCreditReconciled(getCreditReconciled());
        entry.setDebitReconciled(getDebitReconciled());
        entry.setMemo(getMemo());
        entry.setPrice(getPrice());
        entry.setQuantity(getQuantity());
        entry.setSecurityNode(getSecurityNode());

        return entry;
    }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.