|
From: Pelle B. <pe...@us...> - 2004-03-21 00:58:47
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/controllers/currency In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2965/src/java/org/neuclear/asset/controllers/currency Modified Files: CurrencyController.java Log Message: The problem with Enveloped signatures has now been fixed. It was a problem in the way transforms work. I have bandaided it, but in the future if better support for transforms need to be made, we need to rethink it a bit. Perhaps using the new crypto channel's in neuclear-commons. Index: CurrencyController.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/controllers/currency/CurrencyController.java,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** CurrencyController.java 13 Jan 2004 15:11:17 -0000 1.14 --- CurrencyController.java 21 Mar 2004 00:48:44 -0000 1.15 *************** *** 10,16 **** import org.neuclear.commons.time.TimeTools; import org.neuclear.exchange.orders.*; - import org.neuclear.exchange.orders.builders.CancelExchangeReceiptBuilder; - import org.neuclear.exchange.orders.builders.ExchangeOrderReceiptBuilder; - import org.neuclear.exchange.orders.builders.ExchangeCompletedReceiptBuilder; import org.neuclear.id.Identity; import org.neuclear.id.resolver.NSResolver; --- 10,13 ---- *************** *** 18,22 **** import java.sql.Timestamp; - import java.util.Date; import java.util.Iterator; --- 15,18 ---- *************** *** 31,47 **** // this(LedgerFactory.getInstance().getLedger(ledgername),title,reserve); // } ! public CurrencyController(final Ledger ledger, final Signer signer,final String assetname) throws LowlevelLedgerException, BookExistsException, NeuClearException { super(); this.ledger = ledger; ! this.signer=signer; asset = (Asset) NSResolver.resolveIdentity(assetname); ! ! Book tmpIssuer = null; ! try { ! tmpIssuer = ledger.getBook(asset.getName()); ! } catch (UnknownBookException e) { ! tmpIssuer = ledger.createNewBook(asset.getName()); ! } ! issuerBook = tmpIssuer; } --- 27,36 ---- // this(LedgerFactory.getInstance().getLedger(ledgername),title,reserve); // } ! public CurrencyController(final Ledger ledger, final Signer signer, final String assetname) throws LowlevelLedgerException, NeuClearException { super(); this.ledger = ledger; ! this.signer = signer; asset = (Asset) NSResolver.resolveIdentity(assetname); ! issuerBook = asset.getName(); } *************** *** 53,64 **** try { - final Book from = getBook(req.getSignatory()); - final Book to = getBook(req.getRecipient()); ! final Timestamp valuetime =TimeTools.now(); ! final PostedTransaction posted = from.transfer(to, req.getAmount().getAmount(), req.getComment(), valuetime); ! return (TransferReceipt) new TransferReceiptBuilder(req, valuetime).convert(asset.getName(),signer); ! } catch (UnknownBookException e) { ! throw new InvalidTransferException(e.getSubMessage()); } catch (LowlevelLedgerException e) { throw new LowLevelPaymentException(e); --- 42,49 ---- try { ! final Timestamp valuetime = TimeTools.now(); ! final PostedTransaction posted = ledger.transfer("id", req.getName(), req.getSignatory().getName(), req.getRecipient().getName(), req.getAmount().getAmount(), req.getComment()); ! return (TransferReceipt) new TransferReceiptBuilder(req, valuetime).convert(asset.getName(), signer); } catch (LowlevelLedgerException e) { throw new LowLevelPaymentException(e); *************** *** 76,83 **** } - private Book getBook(final Identity id) throws UnknownBookException, LowlevelLedgerException { - return ledger.getBook(id.getName()); - } - /** * Returns balance for a given Identity. --- 61,64 ---- *************** *** 88,108 **** * @throws LowLevelPaymentException */ ! public double getBalance(final Identity id, final Date time) throws LowLevelPaymentException { try { ! return getBook(id).getBalance(time); } catch (LowlevelLedgerException e) { throw new LowLevelPaymentException(e); - } catch (UnknownBookException e) { - return 0.0;// If an account isnt listed its balance is always 0 } } public final ExchangeOrderReceipt process(final ExchangeOrder req) throws InvalidTransferException, LowLevelPaymentException, TransferDeniedException, NeuClearException { try { ! final Book from = getBook(req.getSignatory()); ! final Book to = getBook(req.getAgent()); ! final Timestamp valuetime = TimeTools.now(); ! ! final PostedHeldTransaction posted = from.hold(to, req.getAmount().getAmount(), req.getComment(), valuetime,req.getExpiry()); return (ExchangeOrderReceipt) new ExchangeOrderReceiptBuilder(req, valuetime).convert(asset.getName(),signer); --- 69,85 ---- * @throws LowLevelPaymentException */ ! public double getBalance(final Identity id) throws LowLevelPaymentException { try { ! return ledger.getBalance(id.getName()); } catch (LowlevelLedgerException e) { throw new LowLevelPaymentException(e); } } + public final ExchangeOrderReceipt process(final ExchangeOrder req) throws InvalidTransferException, LowLevelPaymentException, TransferDeniedException, NeuClearException { + /* try { ! final PostedHeldTransaction posted = ledger.hold(to, req.getAmount().getAmount(), req.getComment(), valuetime,req.getExpiry()); return (ExchangeOrderReceipt) new ExchangeOrderReceiptBuilder(req, valuetime).convert(asset.getName(),signer); *************** *** 118,124 **** --- 95,104 ---- throw new InvalidTransferException("postive amount"); } + */ + return null; } public final ExchangeCompletedReceipt process(final ExchangeCompletionOrder complete) throws LowLevelPaymentException, InvalidTransferException, TransferDeniedException, NeuClearException { + /* try { // *************** *** 145,151 **** --- 125,133 ---- throw new LowLevelPaymentException(e); } + */ return null; } public final CancelExchangeReceipt process(final CancelExchangeOrder cancel) throws InvalidTransferException, LowLevelPaymentException, TransferDeniedException, NeuClearException { + /* try { final PostedHeldTransaction heldTran = ledger.findHeldTransaction(cancel.getReceipt().getOrder().getDigest()); *************** *** 159,164 **** --- 141,148 ---- throw new LowLevelPaymentException(e); } + */ return null; } + /** * Little tool to return the amount of a ledger transaction. *************** *** 190,194 **** while (iter.hasNext()) { final TransactionItem item = (TransactionItem) iter.next(); ! if (item.getAmount() >= 0 && item.getBook().getBookID().equals(id.getName())) return true; } --- 174,178 ---- while (iter.hasNext()) { final TransactionItem item = (TransactionItem) iter.next(); ! if (item.getAmount() >= 0 && item.getBook().equals(id.getName())) return true; } *************** *** 198,202 **** private final Ledger ledger; private final Asset asset; ! private final Book issuerBook; private final Signer signer; } --- 182,186 ---- private final Ledger ledger; private final Asset asset; ! private final String issuerBook; private final Signer signer; } |