|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.neuclear.ledger.Ledger
org.neuclear.ledger.prevalent.PrevalentLedger
Created by IntelliJ IDEA. User: pelleb Date: Mar 20, 2004 Time: 1:03:54 PM To change this template use File | Settings | File Templates.
| Constructor Summary | |
PrevalentLedger(java.lang.String id,
java.lang.String basedir)
|
|
| Method Summary | |
void |
close()
|
org.neuclear.ledger.PostedHeldTransaction |
findHeldTransaction(java.lang.String idstring)
Searches for a Held Transaction based on its Transaction ID |
double |
getAvailableBalance(java.lang.String book)
Calculate the available balance at a given time. |
double |
getBalance(java.lang.String book)
Calculate the true accounting balance at a given time. |
java.util.Date |
getTransactionTime(java.lang.String id)
Searches for a Transaction based on its Transaction ID |
void |
performCancelHold(org.neuclear.ledger.PostedHeldTransaction hold)
Cancels a Held Transaction. |
org.neuclear.ledger.PostedTransaction |
performCompleteHold(org.neuclear.ledger.PostedHeldTransaction hold,
double amount,
java.lang.String comment)
|
org.neuclear.ledger.PostedHeldTransaction |
performHeldTransfer(org.neuclear.ledger.UnPostedHeldTransaction trans)
The basic interface for creating Transactions in the database. |
org.neuclear.ledger.PostedTransaction |
performTransaction(org.neuclear.ledger.UnPostedTransaction trans)
The basic interface for creating Transactions in the database. |
org.neuclear.ledger.PostedTransaction |
performVerifiedTransfer(org.neuclear.ledger.UnPostedTransaction trans)
Similar to a transaction but guarantees that there wont be any negative balances left after the transaction. |
| Methods inherited from class org.neuclear.ledger.Ledger |
cancel, complete, getId, hold, hold, toString, transfer, transfer, verifiedTransfer, verifiedTransfer |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
public PrevalentLedger(java.lang.String id,
java.lang.String basedir)
throws java.io.IOException,
java.lang.ClassNotFoundException
| Method Detail |
public org.neuclear.ledger.PostedTransaction performTransaction(org.neuclear.ledger.UnPostedTransaction trans)
throws org.neuclear.ledger.UnBalancedTransactionException,
org.neuclear.ledger.LowlevelLedgerException,
org.neuclear.ledger.InvalidTransactionException
trans - Transaction to perform
org.neuclear.ledger.UnBalancedTransactionException
org.neuclear.ledger.LowlevelLedgerException
org.neuclear.ledger.InvalidTransactionException
public org.neuclear.ledger.PostedTransaction performVerifiedTransfer(org.neuclear.ledger.UnPostedTransaction trans)
throws org.neuclear.ledger.UnBalancedTransactionException,
org.neuclear.ledger.LowlevelLedgerException,
org.neuclear.ledger.InvalidTransactionException
trans - Transaction to perform
org.neuclear.ledger.UnBalancedTransactionException
org.neuclear.ledger.LowlevelLedgerException
org.neuclear.ledger.InvalidTransactionException
public org.neuclear.ledger.PostedHeldTransaction performHeldTransfer(org.neuclear.ledger.UnPostedHeldTransaction trans)
throws org.neuclear.ledger.UnBalancedTransactionException,
org.neuclear.ledger.LowlevelLedgerException,
org.neuclear.ledger.InvalidTransactionException
trans - Transaction to perform
org.neuclear.ledger.UnBalancedTransactionException
org.neuclear.ledger.LowlevelLedgerException
org.neuclear.ledger.InvalidTransactionException
public java.util.Date getTransactionTime(java.lang.String id)
throws org.neuclear.ledger.LowlevelLedgerException,
org.neuclear.ledger.UnknownTransactionException,
org.neuclear.ledger.InvalidTransactionException,
org.neuclear.ledger.UnknownBookException
id - A valid ID
org.neuclear.ledger.LowlevelLedgerException
org.neuclear.ledger.UnknownTransactionException
org.neuclear.ledger.InvalidTransactionException
org.neuclear.ledger.UnknownBookException
public double getBalance(java.lang.String book)
throws org.neuclear.ledger.LowlevelLedgerException
Example sql for implementors:
select c.credit - d.debit from
(
select sum(amount) as credit
from ledger
where transactiondate <= sysdate and end_date is null and credit= 'neu://bob'
) c,
(
select sum(amount) as debit
from ledger
where transactiondate <= sysdate and end_date is null and debit= 'neu://bob'
) d
org.neuclear.ledger.LowlevelLedgerException
public double getAvailableBalance(java.lang.String book)
throws org.neuclear.ledger.LowlevelLedgerException
select c.credit - d.debit from
(
select sum(amount) as credit
from ledger
where transactiondate <= sysdate and (end_date is null or end_date>= sysdate) and credit= 'neu://bob'
) c,
(
select sum(amount) as debit
from ledger
where transactiondate <= sysdate and end_date is null and debit= 'neu://bob'
) d
org.neuclear.ledger.LowlevelLedgerException
public org.neuclear.ledger.PostedHeldTransaction findHeldTransaction(java.lang.String idstring)
throws org.neuclear.ledger.LowlevelLedgerException,
org.neuclear.ledger.UnknownTransactionException
idstring - A valid ID
org.neuclear.ledger.LowlevelLedgerException
org.neuclear.ledger.UnknownTransactionException
public void performCancelHold(org.neuclear.ledger.PostedHeldTransaction hold)
throws org.neuclear.ledger.LowlevelLedgerException,
org.neuclear.ledger.UnknownTransactionException
hold -
org.neuclear.ledger.LowlevelLedgerException
org.neuclear.ledger.UnknownTransactionException
public org.neuclear.ledger.PostedTransaction performCompleteHold(org.neuclear.ledger.PostedHeldTransaction hold,
double amount,
java.lang.String comment)
throws org.neuclear.ledger.InvalidTransactionException,
org.neuclear.ledger.LowlevelLedgerException,
org.neuclear.ledger.TransactionExpiredException
org.neuclear.ledger.InvalidTransactionException
org.neuclear.ledger.LowlevelLedgerException
org.neuclear.ledger.TransactionExpiredExceptionpublic void close()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||