|
From: Pelle B. <pe...@us...> - 2004-04-05 22:21:22
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27426/src/java/org/neuclear/asset Modified Files: Auditor.java InvalidTransferException.java TransferException.java Log Message: CurrencyController and AuditController now now pass all unit tests in CurrencyTests. Index: Auditor.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/Auditor.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Auditor.java 1 Apr 2004 23:18:33 -0000 1.1 --- Auditor.java 5 Apr 2004 22:08:23 -0000 1.2 *************** *** 1,13 **** package org.neuclear.asset; import org.neuclear.asset.orders.TransferOrder; import org.neuclear.commons.NeuClearException; ! import org.neuclear.exchange.orders.CancelExchangeOrder; ! import org.neuclear.exchange.orders.ExchangeCompletionOrder; ! import org.neuclear.exchange.orders.ExchangeOrder; import org.neuclear.id.SignedNamedObject; import org.neuclear.id.receiver.Receiver; import org.neuclear.id.receiver.UnsupportedTransaction; ! import org.neuclear.ledger.Ledger; /* --- 1,14 ---- package org.neuclear.asset; + import org.neuclear.asset.contracts.Asset; import org.neuclear.asset.orders.TransferOrder; + import org.neuclear.asset.orders.TransferReceipt; import org.neuclear.commons.NeuClearException; ! import org.neuclear.exchange.orders.*; ! import org.neuclear.id.Service; import org.neuclear.id.SignedNamedObject; import org.neuclear.id.receiver.Receiver; import org.neuclear.id.receiver.UnsupportedTransaction; ! import org.neuclear.ledger.*; /* *************** *** 31,34 **** --- 32,38 ---- $Id$ $Log$ + Revision 1.2 2004/04/05 22:08:23 pelle + CurrencyController and AuditController now now pass all unit tests in CurrencyTests. + Revision 1.1 2004/04/01 23:18:33 pelle Split Identity into Signatory and Identity class. *************** *** 122,127 **** */ public class Auditor implements Receiver { ! public Auditor(Ledger ledger) { this.ledger = ledger; } --- 126,132 ---- */ public class Auditor implements Receiver { ! public Auditor(Asset asset, Ledger ledger) { this.ledger = ledger; + this.asset = asset; } *************** *** 133,149 **** */ public final SignedNamedObject receive(final SignedNamedObject contract) throws UnsupportedTransaction, NeuClearException { ! if (contract instanceof TransferOrder) { ! TransferOrder order = (TransferOrder) contract; ! } else if (contract instanceof ExchangeOrder) ! if (contract instanceof ExchangeCompletionOrder) ! if (contract instanceof CancelExchangeOrder) ; ! return null; } private final Ledger ledger; } --- 138,226 ---- */ public final SignedNamedObject receive(final SignedNamedObject contract) throws UnsupportedTransaction, NeuClearException { ! try { ! if (contract instanceof TransferReceipt) ! process((TransferReceipt) contract); ! if (contract instanceof ExchangeOrderReceipt) ! process((ExchangeOrderReceipt) contract); ! if (contract instanceof ExchangeCompletedReceipt) ! process((ExchangeCompletedReceipt) contract); ! if (contract instanceof CancelExchangeReceipt) ! process((CancelExchangeReceipt) contract); ! } catch (LowLevelPaymentException e) { ! throw new NeuClearException(e); ! } catch (TransferDeniedException e) { ! throw new NeuClearException(e); ! } catch (InvalidTransferException e) { ! throw new NeuClearException(e); ! } ! return contract; ! } ! public boolean canProcess(final Service asset) { ! return this.asset.getName().equals(asset.getName()); ! } + public final void process(final TransferReceipt receipt) throws InvalidTransferException, LowLevelPaymentException, TransferDeniedException, NeuClearException { ! try { ! final TransferOrder req = receipt.getOrder(); ! final PostedTransaction posted = ledger.verifiedTransfer(req.getDigest(), req.getSignatory().getName(), req.getRecipient(), req.getAmount().getAmount(), req.getComment()); ! ledger.setReceiptId(req.getDigest(), receipt.getDigest()); ! } catch (LowlevelLedgerException e) { ! throw new LowLevelPaymentException(e); ! } catch (InvalidTransactionException e) { ! throw new InvalidTransferException(e.getSubMessage()); ! } catch (UnknownTransactionException e) { ! throw new LowLevelPaymentException(e); ! } } + + public final void process(final ExchangeOrderReceipt receipt) throws InvalidTransferException, LowLevelPaymentException, TransferDeniedException, NeuClearException { + try { + final ExchangeOrder req = receipt.getOrder(); + final PostedHeldTransaction posted = ledger.hold(req.getDigest(), req.getSignatory().getName(), req.getAgent().getSignatory().getName(), req.getExpiry(), req.getAmount().getAmount(), req.getComment()); + ledger.setHeldReceiptId(req.getDigest(), receipt.getDigest()); + } catch (LowlevelLedgerException e) { + throw new LowLevelPaymentException(e); + } catch (InvalidTransactionException e) { + throw new InvalidTransferException(e.getSubMessage()); + } catch (UnknownTransactionException e) { + throw new LowLevelPaymentException(e); + } + } + + public final void process(final ExchangeCompletedReceipt receipt) throws LowLevelPaymentException, InvalidTransferException, TransferDeniedException, NeuClearException { + try { + ExchangeCompletionOrder complete = receipt.getOrder(); + PostedTransaction tran = ledger.complete(complete.getReceipt().getOrder().getDigest(), complete.getAmount().getAmount(), complete.getComment()); + ledger.setReceiptId(complete.getReceipt().getOrder().getDigest(), receipt.getDigest()); + } catch (LowlevelLedgerException e) { + throw new LowLevelPaymentException(e); + } catch (UnknownTransactionException e) { + throw new InvalidTransferException(e.getLocalizedMessage()); + } catch (TransactionExpiredException e) { + throw new InvalidTransferException(e.getLocalizedMessage()); + } catch (InvalidTransactionException e) { + throw new InvalidTransferException(e.getLocalizedMessage()); + } + } + + public final void process(final CancelExchangeReceipt receipt) throws InvalidTransferException, LowLevelPaymentException, TransferDeniedException, NeuClearException { + try { + CancelExchangeOrder cancel = receipt.getOrder(); + ledger.cancel(cancel.getReceipt().getOrder().getDigest()); + + } catch (LowlevelLedgerException e) { + throw new LowLevelPaymentException(e); + } catch (UnknownTransactionException e) { + throw new InvalidTransferException(e.getLocalizedMessage()); + } + } + + private final Ledger ledger; + private final Service asset; } Index: InvalidTransferException.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/InvalidTransferException.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** InvalidTransferException.java 5 Jan 2004 23:47:10 -0000 1.4 --- InvalidTransferException.java 5 Apr 2004 22:08:23 -0000 1.5 *************** *** 21,24 **** --- 21,27 ---- $Id$ $Log$ + Revision 1.5 2004/04/05 22:08:23 pelle + CurrencyController and AuditController now now pass all unit tests in CurrencyTests. + Revision 1.4 2004/01/05 23:47:10 pelle Create new Document classification "order", which is really just inherint in the new *************** *** 57,67 **** */ public class InvalidTransferException extends TransferException { public InvalidTransferException(final String missing) { super(); ! this.missing = missing; } public String getSubMessage() { ! return missing + " was empty"; } --- 60,76 ---- */ public class InvalidTransferException extends TransferException { + public InvalidTransferException(final Throwable e) { + super(e); + this.missing = ""; + + } + public InvalidTransferException(final String missing) { super(); ! this.missing = missing + " was empty"; } public String getSubMessage() { ! return missing; } Index: TransferException.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/TransferException.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** TransferException.java 21 Nov 2003 04:43:04 -0000 1.5 --- TransferException.java 5 Apr 2004 22:08:23 -0000 1.6 *************** *** 1,6 **** package org.neuclear.asset; - import org.neuclear.commons.Utility; - /** --- 1,4 ---- *************** *** 27,31 **** public final String getMessage() { ! return "NeuClear Transfer Exception: " + Utility.denullString(proc.toString()) + "\n" + getSubMessage(); } --- 25,29 ---- public final String getMessage() { ! return "NeuClear Transfer Exception: ";// + Utility.denullString(proc.toString()) + "\n" + getSubMessage(); } |