|
From: Pelle B. <pe...@us...> - 2004-04-01 23:30:39
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4049/src/java/org/neuclear/exchange/orders Modified Files: ExchangeGlobals.java ExchangeOrder.java Log Message: Split Identity into Signatory and Identity class. Identity remains a signed named object and will in the future just be used for self declared information. Signatory now contains the PublicKey etc and is NOT a signed object. Index: ExchangeOrder.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeOrder.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** ExchangeOrder.java 13 Jan 2004 15:11:18 -0000 1.6 --- ExchangeOrder.java 1 Apr 2004 23:18:33 -0000 1.7 *************** *** 12,16 **** import java.util.Date; import java.util.Iterator; - import java.util.ArrayList; import java.util.List; --- 12,15 ---- *************** *** 22,37 **** public final class ExchangeOrder extends ExchangeTransactionContract { private ExchangeOrder(final SignedNamedCore core, ! final Asset bidAsset, final ExchangeAgent agent, final Value amount, ! BidItem items[], final String comment, final Date expires) { ! super(core, bidAsset,agent); ! this.items =makeSafeCopy(items); this.amount = amount; this.comment = (comment != null) ? comment : ""; this.expires = expires.getTime(); } private static BidItem[] makeSafeCopy(final BidItem src[]) { ! BidItem items[]= new BidItem[src.length]; ! for (int i=0;i<src.length;i++) ! items[i]=src[i]; return items; } --- 21,37 ---- public final class ExchangeOrder extends ExchangeTransactionContract { private ExchangeOrder(final SignedNamedCore core, ! final Asset bidAsset, final ExchangeAgent agent, final Value amount, ! BidItem items[], final String comment, final Date expires) { ! super(core, bidAsset, agent); ! this.items = makeSafeCopy(items); this.amount = amount; this.comment = (comment != null) ? comment : ""; this.expires = expires.getTime(); } + private static BidItem[] makeSafeCopy(final BidItem src[]) { ! BidItem items[] = new BidItem[src.length]; ! for (int i = 0; i < src.length; i++) ! items[i] = src[i]; return items; } *************** *** 41,45 **** } ! public final Identity getBidder() { return getSignatory(); } --- 41,45 ---- } ! public final Signatory getBidder() { return getSignatory(); } *************** *** 54,65 **** } ! public final Iterator iterateBidItems(){ ! return new Iterator(){ ! private int i=0; public void remove() { } public boolean hasNext() { ! return i<items.length; } --- 54,66 ---- } ! public final Iterator iterateBidItems() { ! return new Iterator() { ! private int i = 0; ! public void remove() { } public boolean hasNext() { ! return i < items.length; } *************** *** 69,72 **** --- 70,74 ---- }; } + private final Value amount; private final String comment; *************** *** 83,87 **** public final SignedNamedObject read(final SignedNamedCore core, final Element elem) throws InvalidNamedObjectException { if (!elem.getNamespace().equals(AssetGlobals.NS_ASSET)) ! throw new InvalidNamedObjectException(core.getName(),"Not in XML NameSpace: "+AssetGlobals.NS_ASSET.getURI()); if (elem.getName().equals(ExchangeGlobals.EXCHANGE_TAGNAME)) --- 85,89 ---- public final SignedNamedObject read(final SignedNamedCore core, final Element elem) throws InvalidNamedObjectException { if (!elem.getNamespace().equals(AssetGlobals.NS_ASSET)) ! throw new InvalidNamedObjectException(core.getName(), "Not in XML NameSpace: " + AssetGlobals.NS_ASSET.getURI()); if (elem.getName().equals(ExchangeGlobals.EXCHANGE_TAGNAME)) *************** *** 92,111 **** parseBidItems(elem), TransferGlobals.parseCommentElement(elem), ! TransferGlobals.parseTimeStampElement(elem,ExchangeGlobals.createQName(ExchangeGlobals.EXPIRY_TAG)) ! ); ! throw new InvalidNamedObjectException(core.getName(),"Not Matched"); } private BidItem[] parseBidItems(Element elem) throws InvalidNamedObjectException { ! List list=elem.elements(ExchangeGlobals.createQName(ExchangeGlobals.BID_ITEM_TAG)); ! BidItem items[]=new BidItem[list.size()]; for (int i = 0; i < list.size(); i++) ! items[i]= parseBidItem(elem); return items; } private BidItem parseBidItem(Element element) throws InvalidNamedObjectException { ! return new BidItem( ! TransferGlobals.parseAssetTag(element), TransferGlobals.parseValueTag(element)); --- 94,111 ---- parseBidItems(elem), TransferGlobals.parseCommentElement(elem), ! TransferGlobals.parseTimeStampElement(elem, ExchangeGlobals.createQName(ExchangeGlobals.EXPIRY_TAG))); ! throw new InvalidNamedObjectException(core.getName(), "Not Matched"); } private BidItem[] parseBidItems(Element elem) throws InvalidNamedObjectException { ! List list = elem.elements(ExchangeGlobals.createQName(ExchangeGlobals.BID_ITEM_TAG)); ! BidItem items[] = new BidItem[list.size()]; for (int i = 0; i < list.size(); i++) ! items[i] = parseBidItem(elem); return items; } private BidItem parseBidItem(Element element) throws InvalidNamedObjectException { ! return new BidItem(TransferGlobals.parseAssetTag(element), TransferGlobals.parseValueTag(element)); Index: ExchangeGlobals.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeGlobals.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ExchangeGlobals.java 11 Jan 2004 00:39:06 -0000 1.3 --- ExchangeGlobals.java 1 Apr 2004 23:18:33 -0000 1.4 *************** *** 7,11 **** import org.neuclear.id.InvalidNamedObjectException; import org.neuclear.id.NameResolutionException; ! import org.neuclear.id.resolver.NSResolver; /* --- 7,11 ---- import org.neuclear.id.InvalidNamedObjectException; import org.neuclear.id.NameResolutionException; ! import org.neuclear.id.resolver.Resolver; /* *************** *** 29,32 **** --- 29,37 ---- $Id$ $Log$ + Revision 1.4 2004/04/01 23:18:33 pelle + Split Identity into Signatory and Identity class. + Identity remains a signed named object and will in the future just be used for self declared information. + Signatory now contains the PublicKey etc and is NOT a signed object. + Revision 1.3 2004/01/11 00:39:06 pelle Cleaned up the schemas even more they now all verifiy. *************** *** 140,169 **** public static String getElementValue(final Element element, final String name) throws InvalidNamedObjectException { ! return TransferGlobals.getElementValue(element,createQName(name)); } public static String parseExchangeOrderId(final Element element) throws InvalidNamedObjectException { ! return getElementValue(element,EXCHANGE_REF_TAG); } public static final ExchangeAgent parseAgentTag(Element elem) throws InvalidNamedObjectException { ! final String name = getElementValue(elem,AGENT_TAG); try { ! return (ExchangeAgent) NSResolver.resolveIdentity(name); } catch (ClassCastException e) { ! throw new InvalidNamedObjectException(name,e); } catch (NameResolutionException e) { ! throw new InvalidNamedObjectException(name,e); } } ! public static final Asset parseAssetTag(final Element elem,final String tag) throws InvalidNamedObjectException { ! final String name = getElementValue(elem,tag); try { ! return (Asset) NSResolver.resolveIdentity(name); } catch (ClassCastException e) { ! throw new InvalidNamedObjectException(name,e); } catch (NameResolutionException e) { ! throw new InvalidNamedObjectException(name,e); } --- 145,175 ---- public static String getElementValue(final Element element, final String name) throws InvalidNamedObjectException { ! return TransferGlobals.getElementValue(element, createQName(name)); } + public static String parseExchangeOrderId(final Element element) throws InvalidNamedObjectException { ! return getElementValue(element, EXCHANGE_REF_TAG); } public static final ExchangeAgent parseAgentTag(Element elem) throws InvalidNamedObjectException { ! final String name = getElementValue(elem, AGENT_TAG); try { ! return (ExchangeAgent) Resolver.resolveIdentity(name); } catch (ClassCastException e) { ! throw new InvalidNamedObjectException(name, e); } catch (NameResolutionException e) { ! throw new InvalidNamedObjectException(name, e); } } ! public static final Asset parseAssetTag(final Element elem, final String tag) throws InvalidNamedObjectException { ! final String name = getElementValue(elem, tag); try { ! return (Asset) Resolver.resolveIdentity(name); } catch (ClassCastException e) { ! throw new InvalidNamedObjectException(name, e); } catch (NameResolutionException e) { ! throw new InvalidNamedObjectException(name, e); } *************** *** 171,175 **** - public static void registerReaders() { // VerifyingReader.getInstance().registerReader(ExchangeGlobals.CANCEL_TAGNAME, new AssetTransactionContract.Reader()); --- 177,180 ---- |