You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(119) |
Oct
(111) |
Nov
(238) |
Dec
(395) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(239) |
Feb
(59) |
Mar
(354) |
Apr
(489) |
May
(23) |
Jun
(2) |
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
| 2006 |
Jan
|
Feb
|
Mar
|
Apr
(4) |
May
(5) |
Jun
(2) |
Jul
|
Aug
|
Sep
(3) |
Oct
(14) |
Nov
(17) |
Dec
(9) |
| 2007 |
Jan
(4) |
Feb
(3) |
Mar
|
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
|
Aug
|
Sep
(1) |
Oct
(2) |
Nov
(1) |
Dec
|
| 2008 |
Jan
|
Feb
|
Mar
(1) |
Apr
(7) |
May
(3) |
Jun
(6) |
Jul
(4) |
Aug
(3) |
Sep
(15) |
Oct
(13) |
Nov
(35) |
Dec
(40) |
| 2009 |
Jan
(19) |
Feb
(21) |
Mar
(16) |
Apr
(18) |
May
(36) |
Jun
(20) |
Jul
(32) |
Aug
(11) |
Sep
(3) |
Oct
(2) |
Nov
(2) |
Dec
(13) |
| 2010 |
Jan
(5) |
Feb
(5) |
Mar
(7) |
Apr
(1) |
May
(1) |
Jun
(3) |
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(1) |
Aug
(1) |
Sep
(1) |
Oct
(4) |
Nov
|
Dec
(3) |
| 2012 |
Jan
(3) |
Feb
(3) |
Mar
(1) |
Apr
(4) |
May
(8) |
Jun
(4) |
Jul
(9) |
Aug
(2) |
Sep
(8) |
Oct
(3) |
Nov
(8) |
Dec
(4) |
| 2013 |
Jan
(2) |
Feb
(1) |
Mar
(5) |
Apr
(6) |
May
(10) |
Jun
(5) |
Jul
(6) |
Aug
(7) |
Sep
(5) |
Oct
(2) |
Nov
(4) |
Dec
(4) |
| 2014 |
Jan
(13) |
Feb
(4) |
Mar
(7) |
Apr
(9) |
May
(20) |
Jun
(13) |
Jul
(10) |
Aug
(3) |
Sep
(5) |
Oct
(2) |
Nov
(2) |
Dec
(2) |
| 2015 |
Jan
(3) |
Feb
(3) |
Mar
(5) |
Apr
(4) |
May
(3) |
Jun
(2) |
Jul
(4) |
Aug
(3) |
Sep
(1) |
Oct
|
Nov
(1) |
Dec
(3) |
| 2016 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(1) |
Aug
(4) |
Sep
(3) |
Oct
(3) |
Nov
(4) |
Dec
(2) |
| 2017 |
Jan
|
Feb
(2) |
Mar
|
Apr
(2) |
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <pe...@us...> - 2004-01-12 22:39:05
|
Update of /cvsroot/neuclear/neuclear-id-sample/src/java/org/neuclear/id/sample
In directory sc8-pr-cvs1:/tmp/cvs-serv12859/src/java/org/neuclear/id/sample
Modified Files:
MessageSenderSignatureRequestServlet.java
SendMessageServlet.java
Log Message:
Completed all the builders and contracts.
Added a new abstract Value class to contain either an amount or a list of serial numbers.
Now ready to finish off the AssetControllers.
Index: MessageSenderSignatureRequestServlet.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id-sample/src/java/org/neuclear/id/sample/MessageSenderSignatureRequestServlet.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** MessageSenderSignatureRequestServlet.java 17 Dec 2003 23:52:01 -0000 1.1
--- MessageSenderSignatureRequestServlet.java 12 Jan 2004 22:39:01 -0000 1.2
***************
*** 2,7 ****
import org.neuclear.signers.servlet.SignatureRequestServlet;
- import org.neuclear.id.builders.NamedObjectBuilder;
import org.neuclear.id.builders.SignedMessageBuilder;
import org.neuclear.id.Identity;
import org.neuclear.commons.NeuClearException;
--- 2,7 ----
import org.neuclear.signers.servlet.SignatureRequestServlet;
import org.neuclear.id.builders.SignedMessageBuilder;
+ import org.neuclear.id.builders.Builder;
import org.neuclear.id.Identity;
import org.neuclear.commons.NeuClearException;
***************
*** 30,33 ****
--- 30,38 ----
$Id$
$Log$
+ Revision 1.2 2004/01/12 22:39:01 pelle
+ Completed all the builders and contracts.
+ Added a new abstract Value class to contain either an amount or a list of serial numbers.
+ Now ready to finish off the AssetControllers.
+
Revision 1.1 2003/12/17 23:52:01 pelle
Added SignatureRequestServlet which is abstract and can be used for building SignatureRequests for various applications.
***************
*** 41,45 ****
*/
public class MessageSenderSignatureRequestServlet extends SignatureRequestServlet{
! protected NamedObjectBuilder createBuilder(HttpServletRequest request) throws NeuClearException {
String recipient=Utility.denullString(request.getParameter("recipient"));
String subject=Utility.denullString(request.getParameter("subject"));
--- 46,50 ----
*/
public class MessageSenderSignatureRequestServlet extends SignatureRequestServlet{
! protected Builder createBuilder(HttpServletRequest request) throws NeuClearException {
String recipient=Utility.denullString(request.getParameter("recipient"));
String subject=Utility.denullString(request.getParameter("subject"));
Index: SendMessageServlet.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id-sample/src/java/org/neuclear/id/sample/SendMessageServlet.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** SendMessageServlet.java 19 Dec 2003 18:02:28 -0000 1.4
--- SendMessageServlet.java 12 Jan 2004 22:39:01 -0000 1.5
***************
*** 8,14 ****
import org.neuclear.id.Identity;
import org.neuclear.id.SignedNamedObject;
- import org.neuclear.id.builders.NamedObjectBuilder;
import org.neuclear.id.builders.SignedMessageBuilder;
import org.neuclear.id.builders.SignatureRequestBuilder;
import org.neuclear.xml.XMLException;
--- 8,14 ----
import org.neuclear.id.Identity;
import org.neuclear.id.SignedNamedObject;
import org.neuclear.id.builders.SignedMessageBuilder;
import org.neuclear.id.builders.SignatureRequestBuilder;
+ import org.neuclear.id.builders.Builder;
import org.neuclear.xml.XMLException;
***************
*** 37,41 ****
String subject=Utility.denullString(request.getParameter("subject"));
String message=Utility.denullString(request.getParameter("message"));
! NamedObjectBuilder builder=new SignedMessageBuilder(userns,recipient,subject,message);
SignatureRequestBuilder sigreq=new SignatureRequestBuilder(getServiceid(),userns.getName(),builder,subject);
SignedNamedObject sig=sigreq.sign(getSigner());
--- 37,41 ----
String subject=Utility.denullString(request.getParameter("subject"));
String message=Utility.denullString(request.getParameter("message"));
! Builder builder=new SignedMessageBuilder(userns,recipient,subject,message);
SignatureRequestBuilder sigreq=new SignatureRequestBuilder(getServiceid(),userns.getName(),builder,subject);
SignedNamedObject sig=sigreq.sign(getSigner());
|
|
From: <pe...@us...> - 2004-01-11 00:39:23
|
Update of /cvsroot/neuclear/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec
In directory sc8-pr-cvs1:/tmp/cvs-serv22548/src/java/org/neuclear/xml/xmlsec
Modified Files:
SignedElement.java
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Index: SignedElement.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/SignedElement.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** SignedElement.java 8 Jan 2004 23:38:06 -0000 1.7
--- SignedElement.java 11 Jan 2004 00:39:19 -0000 1.8
***************
*** 1,4 ****
--- 1,14 ----
/* $Id$
* $Log$
+ * Revision 1.8 2004/01/11 00:39:19 pelle
+ * Cleaned up the schemas even more they now all verifiy.
+ * The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ * Schema.
+ * The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ * The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ * this to create the embedded transaction.
+ * ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ * Still doesnt build yet, but very close now ;-)
+ *
* Revision 1.7 2004/01/08 23:38:06 pelle
* XMLSignature can now give you the Signing key and the id of the signer.
***************
*** 249,253 ****
* Returns the URI of the Element. This is used in the signing process.
*/
! public abstract String getURI() throws XMLSecurityException;
}
--- 259,265 ----
* Returns the URI of the Element. This is used in the signing process.
*/
! public String getURI() throws XMLSecurityException {
! return "#" ;
! }
}
|
|
From: <pe...@us...> - 2004-01-11 00:39:17
|
Update of /cvsroot/neuclear/neuclear-id/src/schemas
In directory sc8-pr-cvs1:/tmp/cvs-serv22513/src/schemas
Modified Files:
neuid.xsd nsauth.xsd sigreq.xsd
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Index: neuid.xsd
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/schemas/neuid.xsd,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** neuid.xsd 8 Jan 2004 17:15:33 -0000 1.4
--- neuid.xsd 11 Jan 2004 00:39:14 -0000 1.5
***************
*** 3,6 ****
--- 3,16 ----
<!--$Id$
$Log$
+ Revision 1.5 2004/01/11 00:39:14 pelle
+ Cleaned up the schemas even more they now all verifiy.
+ The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ Schema.
+ The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ this to create the embedded transaction.
+ ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ Still doesnt build yet, but very close now ;-)
+
Revision 1.4 2004/01/08 17:15:33 pelle
Further improving the model. Removing the need for transactions to be members of NamedObject
***************
*** 35,39 ****
<xs:simpleType name="sha1">
<xs:restriction base="xs:string">
! <xs:pattern value='^(sha1:)?.{20}$'/>
<xs:whiteSpace value="collapse"/>
</xs:restriction>
--- 45,49 ----
<xs:simpleType name="sha1">
<xs:restriction base="xs:string">
! <xs:pattern value='^(sha1:)?[a-zA-Z2-7]{20}$'/>
<xs:whiteSpace value="collapse"/>
</xs:restriction>
***************
*** 90,95 ****
<xs:sequence>
<xs:element ref="Repository" minOccurs="0" maxOccurs="1"/>
<xs:element ref="Allow" minOccurs="1" maxOccurs="1"/>
! <xs:group ref="SignedObjectGroup"/>
</xs:sequence>
</xs:complexType>
--- 100,106 ----
<xs:sequence>
<xs:element ref="Repository" minOccurs="0" maxOccurs="1"/>
+ <xs:element ref="TargetList" minOccurs="0" maxOccurs="1"/>
<xs:element ref="Allow" minOccurs="1" maxOccurs="1"/>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
Index: nsauth.xsd
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/schemas/nsauth.xsd,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** nsauth.xsd 7 Jan 2004 16:16:02 -0000 1.3
--- nsauth.xsd 11 Jan 2004 00:39:14 -0000 1.4
***************
*** 12,16 ****
<xs:schema targetNamespace="http://neuclear.org/neu/nsauth"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
! xmlns:neuid="http://neuclear.org/neu/neuid.xsd"
xmlns:nsauth="http://neuclear.org/neu/nsauth.xsd"
xmlns="http://neuclear.org/neu/nsauth.xsd"
--- 12,16 ----
<xs:schema targetNamespace="http://neuclear.org/neu/nsauth"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
! xmlns:id="http://neuclear.org/neu/neuid.xsd"
xmlns:nsauth="http://neuclear.org/neu/nsauth.xsd"
xmlns="http://neuclear.org/neu/nsauth.xsd"
***************
*** 20,29 ****
<xs:element name="AuthenticationTicket" nillable="true">
<xs:complexType>
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:attribute name="validTo" type="xs:dateTime" use="optional"/>
! <xs:attribute name="href" type="xs:anyURI" use="optional"/>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
--- 20,28 ----
<xs:element name="AuthenticationTicket" nillable="true">
<xs:complexType>
! <xs:sequence>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
! <xs:attribute name="expiry" type="xs:dateTime" use="optional"/>
! <xs:attribute name="href" type="xs:anyURI" use="optional"/>
</xs:complexType>
</xs:element>
Index: sigreq.xsd
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/schemas/sigreq.xsd,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** sigreq.xsd 7 Jan 2004 16:16:02 -0000 1.1
--- sigreq.xsd 11 Jan 2004 00:39:14 -0000 1.2
***************
*** 10,14 ****
<xs:schema targetNamespace="http://neuclear.org/neu/nssign"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
! xmlns:neuid="http://neuclear.org/neu/neuid.xsd"
xmlns:sigreq="http://neuclear.org/neu/sigreq.xsd"
xmlns="http://neuclear.org/neu/sigreq.xsd"
--- 10,14 ----
<xs:schema targetNamespace="http://neuclear.org/neu/nssign"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
! xmlns:id="http://neuclear.org/neu/neuid.xsd"
xmlns:sigreq="http://neuclear.org/neu/sigreq.xsd"
xmlns="http://neuclear.org/neu/sigreq.xsd"
***************
*** 19,33 ****
<xs:element name="SignatureRequest" nillable="false">
<xs:complexType>
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:sequence>
! <!-- Include one element to sign -->
! <xs:any maxOccurs="1" minOccurs="1"/>
! <!-- Optional verbal Description -->
! <xs:element name="description" type="xs:string" maxOccurs="1"/>
! </xs:sequence>
! <xs:attribute name="href" type="xs:string"/>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
--- 19,31 ----
<xs:element name="SignatureRequest" nillable="false">
<xs:complexType>
! <xs:sequence>
! <!-- Include one element to sign -->
! <xs:any maxOccurs="1" minOccurs="1"/>
! <!-- Optional verbal Description -->
! <xs:element name="description" type="xs:string" maxOccurs="1"/>
! <xs:element ref="id:TargetList"/>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
! <xs:attribute name="href" type="xs:string"/>
</xs:complexType>
</xs:element>
|
|
From: <pe...@us...> - 2004-01-11 00:39:17
|
Update of /cvsroot/neuclear/neuclear-id
In directory sc8-pr-cvs1:/tmp/cvs-serv22513
Added Files:
neuclear.iws
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
--- NEW FILE: neuclear.iws ---
<?xml version="1.0" encoding="UTF-8"?>
<project version="4" relativePaths="false">
<component name="AppServerRunManager" />
<component name="AspectsView" />
<component name="BookmarkManager" />
<component name="CheckinPanelState" />
<component name="Commander">
<leftPanel />
<rightPanel />
<splitter proportion="0.5" />
</component>
<component name="CompilerWorkspaceConfiguration">
<option name="COMPILE_IN_BACKGROUND" value="false" />
<option name="AUTO_SHOW_ERRORS_IN_EDITOR" value="true" />
</component>
<component name="Cvs2Configuration">
<option name="ON_FILE_ADDING" value="1" />
<option name="ON_FILE_REMOVING" value="1" />
<option name="PRUNE_EMPTY_DIRECTORIES" value="true" />
<option name="SHOW_UPDATE_OPTIONS" value="true" />
<option name="SHOW_ADD_OPTIONS" value="true" />
<option name="SHOW_REMOVE_OPTIONS" value="true" />
<option name="MERGING_MODE" value="0" />
<option name="MERGE_WITH_BRANCH1_NAME" value="HEAD" />
<option name="MERGE_WITH_BRANCH2_NAME" value="HEAD" />
<option name="RESET_STICKY" value="false" />
<option name="CREATE_NEW_DIRECTORIES" value="true" />
<option name="DEFAULT_TEXT_FILE_SUBSTITUTION" value="kv" />
<option name="PROCESS_UNKNOWN_FILES" value="false" />
<option name="PROCESS_DELETED_FILES" value="false" />
<option name="SHOW_EDIT_DIALOG" value="true" />
<option name="RESERVED_EDIT" value="false" />
<option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
<option name="SHOW_CHECKOUT_OPTIONS" value="true" />
<option name="CHECKOUT_DATE_OR_REVISION_SETTINGS">
<value>
<option name="BRANCH" value="" />
<option name="DATE" value="" />
<option name="USE_BRANCH" value="false" />
<option name="USE_DATE" value="false" />
</value>
</option>
<option name="UPDATE_DATE_OR_REVISION_SETTINGS">
<value>
<option name="BRANCH" value="" />
<option name="DATE" value="" />
<option name="USE_BRANCH" value="true" />
<option name="USE_DATE" value="false" />
</value>
</option>
<option name="SHOW_CHANGES_REVISION_SETTINGS">
<value>
<option name="BRANCH" value="" />
<option name="DATE" value="" />
<option name="USE_BRANCH" value="false" />
<option name="USE_DATE" value="false" />
</value>
</option>
<option name="SHOW_OUTPUT" value="false" />
<option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
<option name="UPDATE_GROUP_BY_PACKAGES" value="false" />
<option name="ADD_WATCH_INDEX" value="0" />
<option name="REMOVE_WATCH_INDEX" value="0" />
<option name="UPDATE_KEYWORD_SUBSTITUTION" value="NONE" />
<option name="MAKE_NEW_FILES_READONLY" value="false" />
<option name="PUT_FOCUS_INTO_COMMENT" value="false" />
<option name="SHOW_CHECKIN_OPTIONS" value="true" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
<option name="LAST_COMMIT_MESSAGE" value="changed use of base36 encoding to base32 to ensure compatibility with other schemes." />
<option name="SAVE_LAST_COMMIT_MESSAGE" value="true" />
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" />
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
<option name="OPTIMIZE_IMPORTS_BEFORE_FILE_COMMIT" value="false" />
<option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
<option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
<option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
<option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
</component>
<component name="DaemonCodeAnalyzer">
<disable_hints />
</component>
<component name="DebuggerManager">
<line_breakpoints />
<exception_breakpoints>
<breakpoint_any>
<option name="NOTIFY_CAUGHT" value="true" />
<option name="NOTIFY_UNCAUGHT" value="true" />
<option name="ENABLED" value="false" />
<option name="SUSPEND_VM" value="true" />
<option name="LOG_ENABLED" value="false" />
<option name="LOG_EXPRESSION_ENABLED" value="false" />
<option name="LOG_MESSAGE" value="" />
<option name="COUNT_FILTER_ENABLED" value="false" />
<option name="COUNT_FILTER" value="0" />
<option name="CONDITION_ENABLED" value="false" />
<option name="CONDITION" value="" />
<option name="CLASS_FILTERS_ENABLED" value="false" />
<option name="INSTANCE_FILTERS_ENABLED" value="false" />
</breakpoint_any>
</exception_breakpoints>
<field_breakpoints />
<method_breakpoints />
</component>
<component name="ErrorTreeViewConfiguration">
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
<option name="HIDE_WARNINGS" value="false" />
</component>
<component name="FileEditorManager" split-orientation="vertical" split-proportion="0.5">
<first-group selected-file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/AssetController.java">
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/orders/TransferOrder.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="52" column="51" selection-start="1808" selection-end="1808" vertical-scroll-proportion="1.1538461">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/orders/builders/TransferOrderBuilder.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="113" column="19" selection-start="5400" selection-end="5400" vertical-scroll-proportion="0.06860707">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/ExchangeOrderBuilder.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="123" column="53" selection-start="6078" selection-end="6078" vertical-scroll-proportion="0.5821206">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/schemas/exch.xsd" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="49" column="41" selection-start="2336" selection-end="2336" vertical-scroll-proportion="0.39314517">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeGlobals.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="186" column="10" selection-start="8729" selection-end="8729" vertical-scroll-proportion="0.42411643">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/ExchangeReceiptBuilder.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="88" column="0" selection-start="4327" selection-end="4327" vertical-scroll-proportion="0.62993765">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/AssetController.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="126" column="48" selection-start="6191" selection-end="6191" vertical-scroll-proportion="0.5821206">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/SignedElement.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="251" column="15" selection-start="11310" selection-end="11310" vertical-scroll-proportion="0.5800416">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/XMLSecTools.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="203" column="47" selection-start="10140" selection-end="10140" vertical-scroll-proportion="0.36382535">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/QuickEmbeddedSignature.java" pinned="false">
<provider selected="true" editor-type-id="text-editor">
<state line="144" column="92" selection-start="7579" selection-end="7579" vertical-scroll-proportion="0.33264032">
<folding />
</state>
</provider>
</entry>
</first-group>
<second-group />
</component>
<component name="HierarchyBrowserManager">
<option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
<option name="SORT_ALPHABETICALLY" value="false" />
<option name="HIDE_CLASSES_WHERE_METHOD_NOT_IMPLEMENTED" value="false" />
</component>
<component name="InspectionManager">
<option name="AUTOSCROLL_TO_SOURCE" value="false" />
<option name="SPLITTER_PROPORTION" value="0.5" />
<profile name="Default" />
</component>
<component name="J2EEProjectPane" />
<component name="PackagesPane" />
<component name="ProjectPane">
<expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/orders" module="neuclear-pay" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/orders/builders" module="neuclear-pay" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-commons" module="neuclear-commons" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-pay/src" module="neuclear-pay" type="directory" />
<expanded_node url="file://$PROJECT_DIR$/src" module="neuclear" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/exchange/orders" module="neuclear-pay" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-commons/src/java" module="neuclear-commons" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/contracts/builders" module="neuclear-pay" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-commons/src" module="neuclear-commons" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/exchange/orders/builders" module="neuclear-pay" type="directory" />
<expanded_node url="file://$PROJECT_DIR$/src/schemas" module="neuclear" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-pay" module="neuclear-pay" type="directory" />
<expanded_node url="file://$PROJECT_DIR$/src/java/org/neuclear/id/builders" module="neuclear" type="directory" />
<expanded_node url="file://$PROJECT_DIR$-sample/src/webapp/WEB-INF" module="neuclear-id-sample" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-pay/src/schemas" module="neuclear-pay" type="directory" />
<expanded_node url="file://$PROJECT_DIR$" module="neuclear" type="directory" />
<expanded_node url="file://$PROJECT_DIR$-sample/src" module="neuclear-id-sample" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-commons/src/java/org/neuclear/commons/crypto" module="neuclear-commons" type="directory" />
<expanded_node url="file:///home/pelleb/code/neuclear-pay/src/java" module="neuclear-pay" type="directory" />
<expanded_node url="file://$PROJECT_DIR$/src/java" module="neuclear" type="directory" />
<expanded_node url="file://$PROJECT_DIR$-sample" module="neuclear-id-sample" type="directory" />
<expanded_node url="file://$PROJECT_DIR$/src/java/org/neuclear/id" module="neuclear" type="directory" />
<expanded_node url="file://$PROJECT_DIR$-sample/src/webapp" module="neuclear-id-sample" type="directory" />
</component>
<component name="ProjectView">
<navigator currentView="ProjectPane" flattenPackages="true" showMembers="false" showModules="true" showLibraryContents="false" hideEmptyPackages="false" showStructure="false" autoscrollToSource="false" splitterProportion="0.5" />
</component>
<component name="PropertiesComponent">
<property name="MemberChooser.copyJavadoc" value="false" />
<property name="GoToClass.includeLibraries" value="false" />
<property name="MemberChooser.showClasses" value="true" />
<property name="MemberChooser.sorted" value="false" />
<property name="GoToFile.includeJavaFiles" value="false" />
<property name="GoToClass.toSaveIncludeLibraries" value="false" />
</component>
<component name="RunManager">
<option name="SHOW_SETTINGS_BEFORE_RUNNING" value="true" />
<option name="COMPILE_BEFORE_RUNNING" value="true" />
<option name="USE_LAUNCHER_FOR_RUNNING" value="false" />
<activeType name="Application" />
<configuration name="<template>" type="Application" default="true" selected="false">
<option name="MAIN_CLASS_NAME" />
<option name="VM_PARAMETERS" />
<option name="PROGRAM_PARAMETERS" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<module name="" />
</configuration>
<configuration name="<template>" type="Applet" default="true" selected="false">
<module name="" />
<option name="MAIN_CLASS_NAME" />
<option name="HTML_FILE_NAME" />
<option name="HTML_USED" value="false" />
<option name="WIDTH" value="400" />
<option name="HEIGHT" value="300" />
<option name="POLICY_FILE" value="/opt/idea/IntelliJ-IDEA-977/bin/appletviewer.policy" />
<option name="VM_PARAMETERS" />
</configuration>
<configuration name="<template>" type="JUnit" default="true" selected="false">
<module name="" />
<option name="PACKAGE_NAME" />
<option name="MAIN_CLASS_NAME" />
<option name="METHOD_NAME" />
<option name="TEST_OBJECT" value="class" />
<option name="VM_PARAMETERS" />
<option name="PARAMETERS" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="ADDITIONAL_CLASS_PATH" />
<option name="INCLUDE_DEPENDENCIES" value="false" />
</configuration>
<configuration name="<template>" type="Remote" default="true" selected="false">
<option name="USE_SOCKET_TRANSPORT" value="true" />
<option name="SERVER_MODE" value="false" />
<option name="SHMEM_ADDRESS" value="javadebug" />
<option name="HOST" value="localhost" />
<option name="PORT" value="5005" />
</configuration>
<configuration name="<template>" type="WebApp" default="true" selected="false">
<module name="" />
<WebServerIntegration name="" />
<Host>localhost</Host>
<Port>5050</Port>
<LaunchServer>false</LaunchServer>
</configuration>
<configuration name="<template>" type="WebLogic Instance" default="true" selected="false">
<option name="WEBLOGIC_INSTANCE_CONFIGURATION_NAME" />
</configuration>
</component>
<component name="SelectInManager" />
<component name="StarteamConfiguration">
<option name="SERVER" value="" />
<option name="PORT" value="49201" />
<option name="USER" value="" />
<option name="PASSWORD" value="" />
<option name="PROJECT" value="" />
<option name="VIEW" value="" />
<option name="ALTERNATIVE_WORKING_PATH" value="" />
<option name="PUT_FOCUS_INTO_COMMENT" value="false" />
<option name="SHOW_CHECKIN_OPTIONS" value="true" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
<option name="LAST_COMMIT_MESSAGE" value="" />
<option name="SAVE_LAST_COMMIT_MESSAGE" value="true" />
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" />
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
<option name="OPTIMIZE_IMPORTS_BEFORE_FILE_COMMIT" value="false" />
<option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
<option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
<option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
<option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
</component>
<component name="StructureViewFactory">
<option name="SORT_MODE" value="0" />
<option name="GROUP_INHERITED" value="true" />
<option name="AUTOSCROLL_MODE" value="true" />
<option name="SHOW_FIELDS" value="true" />
<option name="AUTOSCROLL_FROM_SOURCE" value="false" />
<option name="GROUP_GETTERS_AND_SETTERS" value="true" />
<option name="SHOW_INHERITED" value="false" />
<option name="HIDE_NOT_PUBLIC" value="false" />
</component>
<component name="TodoView" selected-index="0">
<todo-panel id="selected-file">
<are-packages-shown value="false" />
<flatten-packages value="false" />
<is-autoscroll-to-source value="true" />
</todo-panel>
<todo-panel id="all">
<are-packages-shown value="true" />
<flatten-packages value="false" />
<is-autoscroll-to-source value="true" />
</todo-panel>
</component>
<component name="ToolWindowManager">
<frame x="4" y="25" width="1392" height="965" extended-state="6" />
<editor active="true" />
<layout>
<window_info id="CVS" active="false" anchor="bottom" auto_hide="true" internal_type="docked" type="docked" visible="false" weight="0.33026466" order="8" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="7" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.27901787" order="0" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33026466" order="1" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="true" weight="0.33026466" order="8" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="6" />
<window_info id="Aspects" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="1" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="2" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2" />
<window_info id="CVS File View" active="false" anchor="right" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="3" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.4" order="4" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="sliding" type="sliding" visible="false" weight="0.4" order="0" />
<window_info id="Web" active="false" anchor="left" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="2" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.33" order="0" />
<window_info id="EJB" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="3" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="docked" type="docked" visible="false" weight="0.25" order="5" />
</layout>
</component>
<component name="VCS.FileViewConfiguration">
<option name="SELECTED_STATUSES" value="DEFAULT" />
<option name="SELECTED_COLUMNS" value="DEFAULT" />
<option name="SHOW_FILTERS" value="true" />
<option name="CUSTOMIZE_VIEW" value="true" />
<option name="SHOW_FILE_HISTORY_AS_TREE" value="true" />
</component>
<component name="VcsManagerConfiguration">
<option name="ACTIVE_VCS_NAME" value="CVS" />
</component>
<component name="VssConfiguration">
<CheckoutOptions>
<option name="COMMENT" value="" />
<option name="DO_NOT_GET_LATEST_VERSION" value="false" />
<option name="REPLACE_WRITABLE" value="false" />
<option name="RECURSIVE" value="false" />
</CheckoutOptions>
<CheckinOptions>
<option name="COMMENT" value="" />
<option name="KEEP_CHECKED_OUT" value="false" />
<option name="RECURSIVE" value="false" />
</CheckinOptions>
<AddOptions>
<option name="COMMENT" value="" />
<option name="STORE_ONLY_LATEST_VERSION" value="false" />
<option name="CHECK_OUT_IMMEDIATELY" value="false" />
<option name="FILE_TYPE" value="0" />
</AddOptions>
<UndocheckoutOptions>
<option name="MAKE_WRITABLE" value="false" />
<option name="REPLACE_LOCAL_COPY" value="0" />
<option name="RECURSIVE" value="false" />
</UndocheckoutOptions>
<GetOptions>
<option name="REPLACE_WRITABLE" value="0" />
<option name="MAKE_WRITABLE" value="false" />
<option name="RECURSIVE" value="false" />
</GetOptions>
<option name="CLIENT_PATH" value="" />
<option name="SRCSAFEINI_PATH" value="" />
<option name="USER_NAME" value="" />
<option name="PWD" value="" />
<option name="SHOW_CHECKOUT_OPTIONS" value="true" />
<option name="SHOW_ADD_OPTIONS" value="true" />
<option name="VSS_IS_INITIALIZED" value="false" />
<option name="SHOW_UNDOCHECKOUT_OPTIONS" value="true" />
<option name="SHOW_DIFF_OPTIONS" value="true" />
<option name="SHOW_GET_OPTIONS" value="true" />
<option name="REUSE_LAST_COMMENT" value="false" />
<option name="PUT_FOCUS_INTO_COMMENT" value="false" />
<option name="SHOW_CHECKIN_OPTIONS" value="true" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
<option name="LAST_COMMIT_MESSAGE" value="" />
<option name="SAVE_LAST_COMMIT_MESSAGE" value="true" />
<option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" />
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
<option name="OPTIMIZE_IMPORTS_BEFORE_FILE_COMMIT" value="false" />
<option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
<option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
<option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
<option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
</component>
<component name="WebViewSettings">
<webview flattenPackages="false" showMembers="false" autoscrollToSource="false" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/builders/NamedObjectBuilder.java">
<provider selected="true" editor-type-id="text-editor">
<state line="338" column="32" selection-start="15024" selection-end="15024" vertical-scroll-proportion="-2.931393">
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/java/org/neuclear/id/builders/EmbeddedSignedObjectBuilder.java">
<provider selected="true" editor-type-id="text-editor">
<state line="18" column="0" selection-start="582" selection-end="582" vertical-scroll-proportion="0.36290324">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/orders/builders/ReceiptBuilder.java">
<provider selected="true" editor-type-id="text-editor">
<state line="9" column="16" selection-start="319" selection-end="319" vertical-scroll-proportion="0.27217743">
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/orders/builders/TransferReceiptBuilder.java">
<provider selected="true" editor-type-id="text-editor">
<state line="91" column="13" selection-start="4252" selection-end="4252" vertical-scroll-proportion="0.53638256">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/schemas/xfer.xsd">
<provider selected="true" editor-type-id="text-editor">
<state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-0.4556962">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/orders/TransferOrder.java">
<provider selected="true" editor-type-id="text-editor">
<state line="52" column="51" selection-start="1808" selection-end="1808" vertical-scroll-proportion="1.1538461">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/SignedElement.java">
<provider selected="true" editor-type-id="text-editor">
<state line="251" column="15" selection-start="11310" selection-end="11310" vertical-scroll-proportion="0.5800416">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/XMLSecTools.java">
<provider selected="true" editor-type-id="text-editor">
<state line="203" column="47" selection-start="10140" selection-end="10140" vertical-scroll-proportion="0.36382535">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/QuickEmbeddedSignature.java">
<provider selected="true" editor-type-id="text-editor">
<state line="144" column="92" selection-start="7579" selection-end="7579" vertical-scroll-proportion="0.33264032">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/orders/builders/TransferOrderBuilder.java">
<provider selected="true" editor-type-id="text-editor">
<state line="113" column="19" selection-start="5400" selection-end="5400" vertical-scroll-proportion="0.06860707">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeGlobals.java">
<provider selected="true" editor-type-id="text-editor">
<state line="186" column="10" selection-start="8729" selection-end="8729" vertical-scroll-proportion="0.42411643">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/ExchangeOrderBuilder.java">
<provider selected="true" editor-type-id="text-editor">
<state line="123" column="53" selection-start="6078" selection-end="6078" vertical-scroll-proportion="0.5821206">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/schemas/exch.xsd">
<provider selected="true" editor-type-id="text-editor">
<state line="49" column="41" selection-start="2336" selection-end="2336" vertical-scroll-proportion="0.39314517">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/asset/AssetController.java">
<provider selected="true" editor-type-id="text-editor">
<state line="126" column="48" selection-start="6191" selection-end="6191" vertical-scroll-proportion="0.5821206">
<folding />
</state>
</provider>
</entry>
<entry file="file:///home/pelleb/code/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/ExchangeReceiptBuilder.java">
<provider selected="true" editor-type-id="text-editor">
<state line="88" column="0" selection-start="4327" selection-end="4327" vertical-scroll-proportion="0.62993765">
<folding />
</state>
</provider>
</entry>
</component>
</project>
|
|
From: <pe...@us...> - 2004-01-11 00:39:17
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/builders
In directory sc8-pr-cvs1:/tmp/cvs-serv22513/src/java/org/neuclear/id/builders
Added Files:
EmbeddedSignedObjectBuilder.java
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
--- NEW FILE: EmbeddedSignedObjectBuilder.java ---
package org.neuclear.id.builders;
import org.neuclear.xml.xmlsec.SignedElement;
import org.neuclear.xml.xmlsec.XMLSecurityException;
import org.neuclear.id.SignedNamedObject;
import org.dom4j.QName;
import org.dom4j.DocumentHelper;
import org.dom4j.DocumentException;
/**
* Created by IntelliJ IDEA.
* User: pelleb
* Date: Jan 10, 2004
* Time: 6:20:26 PM
* To change this template use Options | File Templates.
*/
public class EmbeddedSignedObjectBuilder extends SignedElement {
public EmbeddedSignedObjectBuilder(final QName qname, final SignedNamedObject embedded) {
super(qname);
try {
getElement().add(DocumentHelper.parseText(embedded.getEncoded()));
} catch (DocumentException e) {
throw new RuntimeException((e));
}
}
public String getURI() throws XMLSecurityException {
return "#"; //To change body of implemented methods use Options | File Templates.
}
}
|
|
From: <pe...@us...> - 2004-01-11 00:39:10
|
Update of /cvsroot/neuclear/neuclear-pay/src/test/org/neuclear/asset/receiver In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/test/org/neuclear/asset/receiver Modified Files: PaymentReceiverTest.java Log Message: Cleaned up the schemas even more they now all verifiy. The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest Schema. The TransferBuilders are done and the ExchangeBuilders are nearly there. The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses this to create the embedded transaction. ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange. Still doesnt build yet, but very close now ;-) Index: PaymentReceiverTest.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/test/org/neuclear/asset/receiver/PaymentReceiverTest.java,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** PaymentReceiverTest.java 10 Jan 2004 00:00:46 -0000 1.13 --- PaymentReceiverTest.java 11 Jan 2004 00:39:06 -0000 1.14 *************** *** 7,11 **** import org.neuclear.asset.orders.TransferGlobals; import org.neuclear.asset.orders.TransferOrder; - import org.neuclear.asset.orders.builders.TransferRequestBuilder; import org.neuclear.commons.NeuClearException; import org.neuclear.commons.sql.DefaultConnectionSource; --- 7,10 ---- *************** *** 48,51 **** --- 47,60 ---- $Id$ $Log$ + Revision 1.14 2004/01/11 00:39:06 pelle + Cleaned up the schemas even more they now all verifiy. + The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest + Schema. + The TransferBuilders are done and the ExchangeBuilders are nearly there. + The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses + this to create the embedded transaction. + ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange. + Still doesnt build yet, but very close now ;-) + Revision 1.13 2004/01/10 00:00:46 pelle Implemented new Schema for Transfer* |
|
From: <pe...@us...> - 2004-01-11 00:39:10
|
Update of /cvsroot/neuclear/neuclear-pay/src/schemas
In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/schemas
Modified Files:
exch.xsd xfer.xsd
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Index: exch.xsd
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/schemas/exch.xsd,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** exch.xsd 7 Jan 2004 17:15:57 -0000 1.3
--- exch.xsd 11 Jan 2004 00:39:06 -0000 1.4
***************
*** 3,6 ****
--- 3,16 ----
$Id$
$Log$
+ Revision 1.4 2004/01/11 00:39:06 pelle
+ Cleaned up the schemas even more they now all verifiy.
+ The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ Schema.
+ The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ this to create the embedded transaction.
+ ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ Still doesnt build yet, but very close now ;-)
+
Revision 1.3 2004/01/07 17:15:57 pelle
Added support for non fungible transfers. Ie. Transfers of specific serial numbered items.
***************
*** 18,31 ****
xmlns="http://neuclear.org/neu/exch.xsd"
xmlns:xfer="http://neuclear.org/neu/xfer.xsd"
! xmlns:neuid="http://neuclear.org/neu/neuid.xsd"
elementFormDefault="qualified" version="0.3" id="xfer">
<xs:import namespace="http://neuclear.org/neu/neuid.xsd" schemaLocation="../../../neuclear-id/src/schemas/neuid.xsd" />
<xs:import namespace="http://neuclear.org/neu/xfer.xsd" schemaLocation="xfer.xsd"/>
! <xs:element name="Agent" type="neuid:NamedObjectReference" nillable="false"/>
! <xs:element name="SettlementAsset" type="neuid:NamedObjectReference" nillable="false"/>
! <xs:element name="BidAsset" type="neuid:NamedObjectReference" nillable="false"/>
! <xs:element name="ExchangeOrderRef" type="neuid:NamedObjectReference" nillable="false"/>
<xs:element name="ExchangeOrder" nillable="false">
--- 28,53 ----
xmlns="http://neuclear.org/neu/exch.xsd"
xmlns:xfer="http://neuclear.org/neu/xfer.xsd"
! xmlns:id="http://neuclear.org/neu/neuid.xsd"
elementFormDefault="qualified" version="0.3" id="xfer">
<xs:import namespace="http://neuclear.org/neu/neuid.xsd" schemaLocation="../../../neuclear-id/src/schemas/neuid.xsd" />
<xs:import namespace="http://neuclear.org/neu/xfer.xsd" schemaLocation="xfer.xsd"/>
! <xs:element name="Agent" type="id:NamedObjectReference" nillable="false"/>
! <xs:element name="ExpiryTime" type="xs:dateTime" nillable="false"/>
! <xs:element name="ExchangeTime" type="xs:dateTime" nillable="false"/>
! <xs:element name="BidItem" nillable="false">
! <xs:annotation>
! <xs:documentation xml:lang="en">
! Represents the item bid for.
! </xs:documentation>
! </xs:annotation>
! <xs:complexType>
! <xs:sequence>
! <xs:element ref="xfer:Asset" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="xfer:Value" minOccurs="1" maxOccurs="1"/>
! </xs:sequence>
! </xs:complexType>
! </xs:element>
<xs:element name="ExchangeOrder" nillable="false">
***************
*** 38,80 ****
</xs:annotation>
<xs:complexType>
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:sequence>
! <xs:element ref="Agent" minOccurs="1" maxOccurs="1" />
! <xs:element ref="SettlementAsset" minOccurs="1" maxOccurs="1" />
! <xs:element ref="BidAsset" minOccurs="1" maxOccurs="1" />
! <xs:element ref="xfer:Value" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="xfer:Comment" minOccurs="0" maxOccurs="1" />
! <xs:element name="expires" type="xs:dateTime" minOccurs="1" maxOccurs="1" nillable="false"/>
! </xs:sequence>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
! <xs:complexType name="ExchangeOrderActionType">
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:sequence>
! <xs:element ref="ExchangeOrderRef" minOccurs="1" maxOccurs="1"/>
! </xs:sequence>
! </xs:extension>
! </xs:complexContent>
! </xs:complexType>
!
! <xs:element name="CancelExchangeOrder" type="ExchangeOrderActionType" nillable="false"/>
<xs:element name="ExchangeCompletionOrder" nillable="false">
<xs:complexType>
! <xs:complexContent>
! <xs:extension base="ExchangeOrderActionType">
! <xs:sequence>
! <xs:element ref="xfer:Value" minOccurs="1" maxOccurs="1"/>
! <xs:element name="ExchangeTime" type="xs:dateTime" minOccurs="1" maxOccurs="1" nillable="false"/>
! <xs:element ref="ExchangeOrderReceipt" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="xfer:Comment" minOccurs="0" maxOccurs="1" />
! </xs:sequence>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
--- 60,98 ----
</xs:annotation>
<xs:complexType>
! <xs:sequence>
! <xs:element ref="Agent" minOccurs="1" maxOccurs="1" />
! <xs:element ref="xfer:Asset" minOccurs="1" maxOccurs="1" />
! <xs:element ref="ExpiryTime" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="xfer:Value" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="BidItem" minOccurs="1" maxOccurs="unbounded"/>
! <xs:element ref="xfer:Comment" minOccurs="0" maxOccurs="1" />
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
</xs:complexType>
</xs:element>
! <xs:element name="CancelExchangeOrder" nillable="false">
! <xs:annotation>
! <xs:documentation xml:lang="en">
! A signed order by either the bidder or the agent to cancel the given request.
! </xs:documentation>
! </xs:annotation>
! <xs:complexType>
! <xs:sequence>
! <xs:element ref="ExchangeOrderReceipt" minOccurs="1" maxOccurs="1"/>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
! </xs:complexType>
! </xs:element>
<xs:element name="ExchangeCompletionOrder" nillable="false">
<xs:complexType>
! <xs:sequence>
! <xs:element ref="xfer:Value" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="ExchangeTime" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="ExchangeOrderReceipt" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="xfer:Comment" minOccurs="0" maxOccurs="1" />
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
</xs:complexType>
</xs:element>
***************
*** 82,94 ****
<xs:element name="ExchangeOrderReceipt" nillable="false">
<xs:complexType>
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:sequence>
! <xs:element ref="xfer:Value" minOccurs="0" maxOccurs="1"/>
! <xs:element ref="xfer:ValueTime" minOccurs="1" maxOccurs="1" />
! <xs:element ref="ExchangeOrder" minOccurs="1" maxOccurs="1"/>
! </xs:sequence>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
--- 100,109 ----
<xs:element name="ExchangeOrderReceipt" nillable="false">
<xs:complexType>
! <xs:sequence>
! <xs:element ref="xfer:Value" minOccurs="0" maxOccurs="1"/>
! <xs:element ref="xfer:ValueTime" minOccurs="1" maxOccurs="1" />
! <xs:element ref="ExchangeOrder" minOccurs="1" maxOccurs="1"/>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
</xs:complexType>
</xs:element>
***************
*** 96,107 ****
<xs:element name="CancelExchangeOrderReceipt" nillable="false" >
<xs:complexType>
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:sequence>
! <xs:element ref="xfer:ValueTime" minOccurs="1" maxOccurs="1" />
! <xs:element ref="CancelExchangeOrder" minOccurs="1" maxOccurs="1"/>
! </xs:sequence>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
--- 111,119 ----
<xs:element name="CancelExchangeOrderReceipt" nillable="false" >
<xs:complexType>
! <xs:sequence>
! <xs:element ref="xfer:ValueTime" minOccurs="1" maxOccurs="1" />
! <xs:element ref="CancelExchangeOrder" minOccurs="1" maxOccurs="1"/>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
</xs:complexType>
</xs:element>
***************
*** 109,120 ****
<xs:element name="ExchangeCompletedReceipt" nillable="false">
<xs:complexType>
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:sequence>
! <xs:element ref="xfer:ValueTime" minOccurs="1" maxOccurs="1" />
! <xs:element ref="ExchangeCompletionOrder" minOccurs="1" maxOccurs="1"/>
! </xs:sequence>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
--- 121,129 ----
<xs:element name="ExchangeCompletedReceipt" nillable="false">
<xs:complexType>
! <xs:sequence>
! <xs:element ref="xfer:ValueTime" minOccurs="1" maxOccurs="1" />
! <xs:element ref="ExchangeCompletionOrder" minOccurs="1" maxOccurs="1"/>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
</xs:complexType>
</xs:element>
Index: xfer.xsd
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/schemas/xfer.xsd,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** xfer.xsd 8 Jan 2004 17:15:28 -0000 1.5
--- xfer.xsd 11 Jan 2004 00:39:06 -0000 1.6
***************
*** 3,6 ****
--- 3,16 ----
$Id$
$Log$
+ Revision 1.6 2004/01/11 00:39:06 pelle
+ Cleaned up the schemas even more they now all verifiy.
+ The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ Schema.
+ The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ this to create the embedded transaction.
+ ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ Still doesnt build yet, but very close now ;-)
+
Revision 1.5 2004/01/08 17:15:28 pelle
Further improving the model. Removing the need for transactions to be members of NamedObject
***************
*** 31,40 ****
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://neuclear.org/neu/xfer.xsd"
! xmlns:neuid="http://neuclear.org/neu/neuid.xsd"
elementFormDefault="qualified" version="0.3" id="xfer">
<xs:import namespace="http://neuclear.org/neu/neuid.xsd" schemaLocation="../../../neuclear-id/src/schemas/neuid.xsd" />
! <xs:element name="Asset" type="neuid:NamedObjectReference" nillable="false"/>
! <xs:element name="Recipient" type="neuid:NamedObjectReference" nillable="false"/>
<xs:element name="ValueTime" type="xs:dateTime" nillable="true"/>
<xs:element name="Comment" type="xs:string" nillable="true"/>
--- 41,50 ----
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://neuclear.org/neu/xfer.xsd"
! xmlns:id="http://neuclear.org/neu/neuid.xsd"
elementFormDefault="qualified" version="0.3" id="xfer">
<xs:import namespace="http://neuclear.org/neu/neuid.xsd" schemaLocation="../../../neuclear-id/src/schemas/neuid.xsd" />
! <xs:element name="Asset" type="id:NamedObjectReference" nillable="false"/>
! <xs:element name="Recipient" type="id:NamedObjectReference" nillable="false"/>
<xs:element name="ValueTime" type="xs:dateTime" nillable="true"/>
<xs:element name="Comment" type="xs:string" nillable="true"/>
***************
*** 48,52 ****
<xs:element name="SerialNumbers" substitutionGroup="Value">
<xs:simpleType>
! <xs:list itemType="neuid:NamedObjectReference"/>
</xs:simpleType>
</xs:element>
--- 58,62 ----
<xs:element name="SerialNumbers" substitutionGroup="Value">
<xs:simpleType>
! <xs:list itemType="id:NamedObjectReference"/>
</xs:simpleType>
</xs:element>
***************
*** 54,67 ****
<xs:element name="TransferOrder" nillable="false">
<xs:complexType>
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:sequence>
! <xs:element ref="Recipient" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="Asset" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="Value" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="Comment" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
--- 64,74 ----
<xs:element name="TransferOrder" nillable="false">
<xs:complexType>
! <xs:sequence>
! <xs:element ref="Recipient" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="Asset" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="Value" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="Comment" minOccurs="0" maxOccurs="1"/>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
</xs:complexType>
</xs:element>
***************
*** 69,81 ****
<xs:element name="TransferReceipt" nillable="false">
<xs:complexType >
! <xs:complexContent>
! <xs:extension base="neuid:NamedObjectType">
! <xs:sequence>
! <xs:element ref="ValueTime" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="Value" minOccurs="0" maxOccurs="1"/>
! <xs:element ref="TransferOrder" minOccurs="1" maxOccurs="1"/>
! </xs:sequence>
! </xs:extension>
! </xs:complexContent>
</xs:complexType>
</xs:element>
--- 76,85 ----
<xs:element name="TransferReceipt" nillable="false">
<xs:complexType >
! <xs:sequence>
! <xs:element ref="ValueTime" minOccurs="1" maxOccurs="1"/>
! <xs:element ref="Value" minOccurs="0" maxOccurs="1"/>
! <xs:element ref="TransferOrder" minOccurs="1" maxOccurs="1"/>
! <xs:group ref="id:SignedObjectGroup" minOccurs="0" maxOccurs="1"/>
! </xs:sequence>
</xs:complexType>
</xs:element>
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders
In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/java/org/neuclear/exchange/orders
Modified Files:
CancelExchangeOrder.java ExchangeCompletionOrder.java
ExchangeGlobals.java ExchangeOrder.java
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Index: CancelExchangeOrder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/CancelExchangeOrder.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** CancelExchangeOrder.java 10 Jan 2004 00:00:46 -0000 1.3
--- CancelExchangeOrder.java 11 Jan 2004 00:39:06 -0000 1.4
***************
*** 18,35 ****
public final class CancelExchangeOrder extends ExchangeTransactionContract{
! private CancelExchangeOrder(final SignedNamedCore core, final Asset asset,final ExchangeAgent agent, final String exchangeid) {
! super(core, asset,agent);
! this.exchangeid = exchangeid;
}
public ExchangeOrderReceipt getExchangeReceipt(){
! //TODO Implement
! return null;
}
- public String getExchangeid() {
- return exchangeid;
- }
! private final String exchangeid;
public static final class Reader implements NamedObjectReader {
--- 18,31 ----
public final class CancelExchangeOrder extends ExchangeTransactionContract{
! private CancelExchangeOrder(final SignedNamedCore core, final ExchangeOrderReceipt receipt) {
! super(core, receipt.getAsset(), receipt.getAgent());
! this.receipt=receipt;
}
public ExchangeOrderReceipt getExchangeReceipt(){
! return receipt;
}
! private final ExchangeOrderReceipt receipt;
public static final class Reader implements NamedObjectReader {
***************
*** 46,52 ****
if (elem.getName().equals(ExchangeGlobals.CANCEL_TAGNAME))
return new CancelExchangeOrder(core,
! TransferGlobals.parseAssetTag(elem),
! ExchangeGlobals.parseAgentTag(elem),
! ExchangeGlobals.parseExchangeOrderId(elem));
throw new InvalidNamedObjectException(core.getName(),"Not Matched");
--- 42,47 ----
if (elem.getName().equals(ExchangeGlobals.CANCEL_TAGNAME))
return new CancelExchangeOrder(core,
! (ExchangeOrderReceipt) TransferGlobals.parseEmbedded(elem,ExchangeGlobals.createQName(ExchangeGlobals.EXCHANGE_RCPT_TAGNAME))
! );
throw new InvalidNamedObjectException(core.getName(),"Not Matched");
Index: ExchangeCompletionOrder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeCompletionOrder.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** ExchangeCompletionOrder.java 10 Jan 2004 00:00:46 -0000 1.3
--- ExchangeCompletionOrder.java 11 Jan 2004 00:39:06 -0000 1.4
***************
*** 2,7 ****
import org.neuclear.asset.contracts.Asset;
import org.neuclear.exchange.contracts.ExchangeAgent;
! import org.neuclear.id.SignedNamedCore;
import java.sql.Timestamp;
--- 2,10 ----
import org.neuclear.asset.contracts.Asset;
+ import org.neuclear.asset.contracts.AssetGlobals;
+ import org.neuclear.asset.orders.TransferGlobals;
import org.neuclear.exchange.contracts.ExchangeAgent;
! import org.neuclear.id.*;
! import org.dom4j.Element;
import java.sql.Timestamp;
***************
*** 14,45 ****
*/
public final class ExchangeCompletionOrder extends ExchangeTransactionContract {
! private ExchangeCompletionOrder(final SignedNamedCore core, final Asset asset, final ExchangeAgent agent, final Date valuetime, final double amount, final String holdid, final String counterpartyid) {
! super(core, asset,agent);
! this.valuetime = valuetime.getTime();
this.amount = amount;
! this.holdid = holdid;
! this.counterpartyid = counterpartyid;
}
! public Timestamp getValuetime() {
! return new Timestamp(valuetime);
}
! public double getAmount() {
return amount;
}
! public String getHoldid() {
! return holdid;
! }
!
! public String getCounterpartyid() {
! return counterpartyid;
}
! private final long valuetime;
private final double amount;
! private final String holdid;
! private final String counterpartyid;
}
--- 17,65 ----
*/
public final class ExchangeCompletionOrder extends ExchangeTransactionContract {
! private ExchangeCompletionOrder(final SignedNamedCore core, final ExchangeOrderReceipt receipt, final Identity counterparty, final double amount, final Date exchangetime) {
! super(core,receipt.getAsset(), receipt.getAgent());
! this.exchangetime = exchangetime.getTime();
this.amount = amount;
! this.counterparty=counterparty;
}
! public final Timestamp getExchangeTime() {
! return new Timestamp(exchangetime);
}
! public final double getAmount() {
return amount;
}
! public final Identity getCounterparty() {
! return counterparty;
}
! private final long exchangetime;
private final double amount;
! private final Identity counterparty;
!
! public static final class Reader implements NamedObjectReader {
! /**
! * Read object from Element and fill in its details
! *
! * @param elem
! * @return
! */
! 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.COMPLETE_TAGNAME)){
! return new ExchangeCompletionOrder(core,
! (ExchangeOrderReceipt)TransferGlobals.parseEmbedded(elem,ExchangeGlobals.createQName(ExchangeGlobals.EXCHANGE_RCPT_TAGNAME)),
! TransferGlobals.parseRecipientTag(elem),
! TransferGlobals.parseAmountTag(elem),
! TransferGlobals.parseTimeStampElement(elem,ExchangeGlobals.createQName(ExchangeGlobals.EXCHANGE_TIME_TAGNAME))
! );
! }
! throw new InvalidNamedObjectException(core.getName(),"Not Matched");
! }
! }
}
Index: ExchangeGlobals.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeGlobals.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** ExchangeGlobals.java 10 Jan 2004 00:00:46 -0000 1.2
--- ExchangeGlobals.java 11 Jan 2004 00:39:06 -0000 1.3
***************
*** 29,32 ****
--- 29,42 ----
$Id$
$Log$
+ Revision 1.3 2004/01/11 00:39:06 pelle
+ Cleaned up the schemas even more they now all verifiy.
+ The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ Schema.
+ The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ this to create the embedded transaction.
+ ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ Still doesnt build yet, but very close now ;-)
+
Revision 1.2 2004/01/10 00:00:46 pelle
Implemented new Schema for Transfer*
***************
*** 148,157 ****
}
- public static final Asset parseBidAssetTag(final Element elem) throws InvalidNamedObjectException {
- return parseAssetTag(elem,BID_ASSET_TAG);
- }
- public static final Asset parseSettlementAssetTag(final Element elem) throws InvalidNamedObjectException {
- return parseAssetTag(elem,SETTLEMENT_ASSET_TAG);
- }
public static final Asset parseAssetTag(final Element elem,final String tag) throws InvalidNamedObjectException {
final String name = getElementValue(elem,tag);
--- 158,161 ----
***************
*** 188,197 ****
public static final String CANCEL_TAGNAME = "CancelExchangeOrder";
public static final String CANCEL_RCPT_TAGNAME = "CancelExchangeReceipt";
public static final String EX_NSPREFIX = "ex";
public static final String EX_NSURI = "http://neuclear.org/neu/exch";
! public static final String EXCHANGE_REF_TAG = "ExchangeOrderRef";
! private static final String AGENT_TAG = "ExchangeAgent";
! public static final String SETTLEMENT_ASSET_TAG = "SettlementAsset";
! public static final String BID_ASSET_TAG = "BidAsset";
}
--- 192,203 ----
public static final String CANCEL_TAGNAME = "CancelExchangeOrder";
public static final String CANCEL_RCPT_TAGNAME = "CancelExchangeReceipt";
+ public static final String EXPIRY_TAG = "ExpiryDate";
+ public static final String EXCHANGE_REF_TAG = "ExchangeOrderRef";
+ public static final String EXCHANGE_TIME_TAGNAME = "ExchangeTime";
+ public static final String AGENT_TAG = "ExchangeAgent";
+ public static final String BID_ITEM_TAG = "BidItem";
public static final String EX_NSPREFIX = "ex";
public static final String EX_NSURI = "http://neuclear.org/neu/exch";
!
}
Index: ExchangeOrder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeOrder.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** ExchangeOrder.java 10 Jan 2004 00:00:46 -0000 1.3
--- ExchangeOrder.java 11 Jan 2004 00:39:06 -0000 1.4
***************
*** 10,13 ****
--- 10,16 ----
import java.sql.Timestamp;
import java.util.Date;
+ import java.util.Iterator;
+ import java.util.ArrayList;
+ import java.util.List;
/**
***************
*** 19,30 ****
private ExchangeOrder(final SignedNamedCore core,
final Asset bidAsset, final ExchangeAgent agent, final double bid,
! final Asset neededAsset, final double neededAmount, final String comment, final Date expires) {
super(core, bidAsset,agent);
! this.neededAsset = neededAsset;
! this.neededAmount = neededAmount;
this.bidAmount = bid;
this.comment = (comment != null) ? comment : "";
this.expires = expires.getTime();
}
public final Date getExpiry() {
--- 22,38 ----
private ExchangeOrder(final SignedNamedCore core,
final Asset bidAsset, final ExchangeAgent agent, final double bid,
! BidItem items[], final String comment, final Date expires) {
super(core, bidAsset,agent);
! this.items =makeSafeCopy(items);
this.bidAmount = bid;
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;
+ }
public final Date getExpiry() {
***************
*** 36,60 ****
}
- public Asset getNeededAsset() {
- return neededAsset;
- }
-
- public double getNeededAmount() {
- return neededAmount;
- }
! public double getBidAmount() {
return bidAmount;
}
! public String getComment() {
return comment;
}
! private final Asset neededAsset;
! private final double neededAmount;
private final double bidAmount;
private final String comment;
private final long expires;
public static final class Reader implements NamedObjectReader {
/**
--- 44,93 ----
}
! public final double getBidAmount() {
return bidAmount;
}
! public final String getComment() {
return comment;
}
! public final Iterator iterateBidItems(){
! return new Iterator(){
! private int i=0;
! public void remove() {
! }
!
! public boolean hasNext() {
! return i<items.length;
! }
!
! public Object next() {
! return items[i++];
! }
! };
! }
private final double bidAmount;
private final String comment;
private final long expires;
+ private final BidItem items[];
+
+ public static class BidItem {
+ private BidItem(Asset asset, double amount) {
+ this.asset = asset;
+ this.amount = amount;
+ }
+
+ public final Asset getAsset() {
+ return asset;
+ }
+
+ public final double getAmount() {
+ return amount;
+ }
+
+ private final Asset asset;
+ private final double amount;
+ }
public static final class Reader implements NamedObjectReader {
/**
***************
*** 70,82 ****
if (elem.getName().equals(ExchangeGlobals.EXCHANGE_TAGNAME))
return new ExchangeOrder(core,
! ExchangeGlobals.parseBidAssetTag(elem),
ExchangeGlobals.parseAgentTag(elem),
TransferGlobals.parseAmountTag(elem),
! ExchangeGlobals.parseSettlementAssetTag(elem),
! TransferGlobals.parseAmountTag(elem),
TransferGlobals.getCommentElement(elem),
! null//TODO getExpiryTime
);
throw new InvalidNamedObjectException(core.getName(),"Not Matched");
}
--- 103,129 ----
if (elem.getName().equals(ExchangeGlobals.EXCHANGE_TAGNAME))
return new ExchangeOrder(core,
! TransferGlobals.parseAssetTag(elem),
ExchangeGlobals.parseAgentTag(elem),
TransferGlobals.parseAmountTag(elem),
! parseBidItems(elem),
TransferGlobals.getCommentElement(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.parseAmountTag(element));
+
}
|
|
From: <pe...@us...> - 2004-01-11 00:39:09
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders
In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/java/org/neuclear/exchange/orders/builders
Modified Files:
ExchangeReceiptBuilder.java
Added Files:
ExchangeOrderBuilder.java
Removed Files:
CancelExchangeBuilder.java CancelExchangeRequestBuilder.java
CompleteExchangeRequestBuilder.java
ExchangeRequestBuilder.java
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
--- NEW FILE: ExchangeOrderBuilder.java ---
package org.neuclear.exchange.orders.builders;
import org.dom4j.Element;
import org.dom4j.QName;
import org.neuclear.asset.InvalidTransferException;
import org.neuclear.asset.NegativeTransferException;
import org.neuclear.asset.contracts.Asset;
import org.neuclear.asset.orders.transfers.TransferGlobals;
import org.neuclear.asset.orders.TransferGlobals;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
import org.neuclear.id.Identity;
import org.neuclear.id.NSTools;
import org.neuclear.id.builders.NamedObjectBuilder;
import org.neuclear.xml.xmlsec.SignedElement;
import org.neuclear.exchange.orders.ExchangeGlobals;
import org.neuclear.exchange.contracts.ExchangeAgent;
/*
NeuClear Distributed Transaction Clearing Platform
(C) 2003 Pelle Braendgaard
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
$Id: ExchangeOrderBuilder.java,v 1.1 2004/01/11 00:39:06 pelle Exp $
$Log: ExchangeOrderBuilder.java,v $
Revision 1.1 2004/01/11 00:39:06 pelle
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Revision 1.2 2004/01/10 00:00:44 pelle
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Revision 1.1 2004/01/05 23:47:09 pelle
Create new Document classification "order", which is really just inherint in the new
package layout.
Got rid of much of the inheritance that was lying around and thought a bit further about the format of the exchange orders.
Revision 1.9 2004/01/03 20:36:25 pelle
Renamed HeldTransfer to Exchange
Dropped valuetime from the request objects.
Doesnt yet compile. New commit to follow soon.
Revision 1.8 2003/12/06 00:16:10 pelle
Updated various areas in NSTools.
Updated URI Validation in particular to support new expanded format
Updated createUniqueID and friends to be a lot more unique and more efficient.
In CryptoTools updated getRandom() to finally use a SecureRandom.
Changed CryptoTools.getFormatURLSafe to getBase36 because that is what it really is.
Revision 1.7 2003/11/28 00:11:50 pelle
Getting the NeuClear web transactions working.
Revision 1.6 2003/11/21 04:43:03 pelle
EncryptedFileStore now works. It uses the PBECipher with DES3 afair.
Otherwise You will Finaliate.
Anything that can be final has been made final throughout everyting. We've used IDEA's Inspector tool to find all instance of variables that could be final.
This should hopefully make everything more stable (and secure).
Revision 1.5 2003/11/12 23:47:04 pelle
Much work done in creating good test environment.
PaymentReceiverTest works, but needs a abit more work in its environment to succeed testing.
Revision 1.4 2003/11/11 21:17:19 pelle
Further vital reshuffling.
org.neudist.crypto.* and org.neudist.utils.* have been moved to respective areas under org.neuclear.commons
org.neuclear.signers.* as well as org.neuclear.passphraseagents have been moved under org.neuclear.commons.crypto as well.
Did a bit of work on the Canonicalizer and changed a few other minor bits.
Revision 1.3 2003/11/10 17:42:07 pelle
The AssetController interface has been more or less finalized.
CurrencyController fully implemented
AssetControlClient implementes a remote client for communicating with AssetControllers
Revision 1.2 2003/11/09 03:26:47 pelle
More house keeping and shuffling about mainly pay
Revision 1.1 2003/11/09 03:10:13 pelle
Major changes that apparently didnt get properly checked in earlier.
Revision 1.2 2003/11/06 23:47:43 pelle
Major Refactoring of CurrencyController.
Factored out AssetController to be new abstract parent class together with most of its support classes.
Created (Half way) AssetControlClient, which can perform transactions on external AssetControllers via NeuClear.
Created the first attempt at the ExchangeAgent. This will need use of the AssetControlClient.
SOAPTools was changed to return a stream. This is required by the VerifyingReader in NeuClear.
Revision 1.1 2003/10/03 23:48:29 pelle
Did various security related updates in the pay package with regards to immutability of fields etc.
AssetControllerReceiver should now be operational. Real testing needs to be done including in particular setting the
private key of the Receiver.
A new class TransferGlobals contains usefull settings for making life easier in the other contract based classes.
TransferContract the signed contract is functional and has a matching TransferRequestBuilder class for programmatically creating
TransferRequests for signing.
TransferReceiptBuilder has been created for use by Transfer processors. It is used in the AssetControllerReceiver.
*/
/**
* User: pelleb
* Date: Oct 3, 2003
* Time: 3:13:27 PM
*/
public class ExchangeOrderBuilder extends SignedElement {
protected ExchangeOrderBuilder(final Asset asset, final ExchangeAgent agent, final double amount, final String comment) throws InvalidTransferException, NegativeTransferException, NeuClearException {
super(ExchangeGlobals.createQName(ExchangeGlobals.EXCHANGE_TAGNAME));
if (amount < 0)
throw new NegativeTransferException(amount);
if (asset==null)
throw new InvalidTransferException("assetName");
if (agent == null)
throw new InvalidTransferException("agent");
final Element element = getElement();
element.add(ExchangeGlobals.createElement(ExchangeGlobals.AGENT_TAG, agent.getName()));
element.add(TransferGlobals.createElement(TransferGlobals.ASSET_TAG, asset.getName()));
element.add(TransferGlobals.createElement(TransferGlobals.AMOUNT_TAG,Double.toString(amount)));
if (!Utility.isEmpty(comment))
element.add(TransferGlobals.createElement(TransferGlobals.COMMENT_TAG, comment));
}
}
Index: ExchangeReceiptBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/ExchangeReceiptBuilder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** ExchangeReceiptBuilder.java 10 Jan 2004 00:00:46 -0000 1.2
--- ExchangeReceiptBuilder.java 11 Jan 2004 00:39:06 -0000 1.3
***************
*** 4,14 ****
import org.neuclear.asset.InvalidTransferException;
import org.neuclear.asset.NegativeTransferException;
! import org.neuclear.asset.orders.builders.TransferBuilder;
import org.neuclear.asset.orders.exchanges.ExchangeOrder;
import org.neuclear.asset.orders.transfers.TransferGlobals;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.time.TimeTools;
import java.sql.Timestamp;
/*
--- 4,18 ----
import org.neuclear.asset.InvalidTransferException;
import org.neuclear.asset.NegativeTransferException;
! import org.neuclear.asset.orders.builders.TransferOrderBuilder;
! import org.neuclear.asset.orders.builders.ReceiptBuilder;
import org.neuclear.asset.orders.exchanges.ExchangeOrder;
import org.neuclear.asset.orders.transfers.TransferGlobals;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.time.TimeTools;
+ import org.neuclear.exchange.orders.ExchangeOrder;
+ import org.neuclear.exchange.orders.ExchangeGlobals;
import java.sql.Timestamp;
+ import java.util.Date;
/*
***************
*** 32,35 ****
--- 36,49 ----
$Id$
$Log$
+ Revision 1.3 2004/01/11 00:39:06 pelle
+ Cleaned up the schemas even more they now all verifiy.
+ The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ Schema.
+ The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ this to create the embedded transaction.
+ ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ Still doesnt build yet, but very close now ;-)
+
Revision 1.2 2004/01/10 00:00:46 pelle
Implemented new Schema for Transfer*
***************
*** 80,89 ****
* Time: 8:05:15 PM
*/
! public final class ExchangeReceiptBuilder extends TransferBuilder {
! public ExchangeReceiptBuilder(final ExchangeOrder req, final String id,Timestamp valuetime) throws InvalidTransferException, NegativeTransferException, NeuClearException {
! super(TransferGlobals.HELD_XFER_RCPT_TAGNAME, req.getAsset(),req.getAsset(),req.getAmount());
! final Element element = getElement();
! element.add(TransferGlobals.createAttribute(element, "helduntil", TimeTools.formatTimeStamp(req.getValidTo())));
!
}
}
--- 94,100 ----
* Time: 8:05:15 PM
*/
! public final class ExchangeReceiptBuilder extends ReceiptBuilder {
! public ExchangeReceiptBuilder(final ExchangeOrder order,Date valuetime) throws InvalidTransferException, NegativeTransferException, NeuClearException {
! super(ExchangeGlobals.createQName(ExchangeGlobals.EXCHANGE_RCPT_TAGNAME), order,valuetime);
}
}
--- CancelExchangeBuilder.java DELETED ---
--- CancelExchangeRequestBuilder.java DELETED ---
--- CompleteExchangeRequestBuilder.java DELETED ---
--- ExchangeRequestBuilder.java DELETED ---
|
|
From: <pe...@us...> - 2004-01-11 00:39:09
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/remote
In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/java/org/neuclear/asset/remote
Modified Files:
AssetControlClient.java
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Index: AssetControlClient.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/remote/AssetControlClient.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** AssetControlClient.java 10 Jan 2004 00:00:45 -0000 1.11
--- AssetControlClient.java 11 Jan 2004 00:39:06 -0000 1.12
***************
*** 2,14 ****
import org.neuclear.asset.orders.TransferReceipt;
! import org.neuclear.asset.orders.builders.TransferBuilder;
! import org.neuclear.asset.orders.builders.TransferRequestBuilder;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.crypto.signers.Signer;
import org.neuclear.exchange.orders.CancelExchangeReceipt;
import org.neuclear.exchange.orders.ExchangeOrderReceipt;
- import org.neuclear.exchange.orders.builders.CancelExchangeRequestBuilder;
- import org.neuclear.exchange.orders.builders.CompleteExchangeRequestBuilder;
- import org.neuclear.exchange.orders.builders.ExchangeRequestBuilder;
import org.neuclear.id.SignedNamedObject;
import org.neuclear.xml.XMLException;
--- 2,10 ----
import org.neuclear.asset.orders.TransferReceipt;
! import org.neuclear.asset.orders.builders.TransferOrderBuilder;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.crypto.signers.Signer;
import org.neuclear.exchange.orders.CancelExchangeReceipt;
import org.neuclear.exchange.orders.ExchangeOrderReceipt;
import org.neuclear.id.SignedNamedObject;
import org.neuclear.xml.XMLException;
***************
*** 34,37 ****
--- 30,43 ----
$Id$
$Log$
+ Revision 1.12 2004/01/11 00:39:06 pelle
+ Cleaned up the schemas even more they now all verifiy.
+ The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ Schema.
+ The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ this to create the embedded transaction.
+ ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ Still doesnt build yet, but very close now ;-)
+
Revision 1.11 2004/01/10 00:00:45 pelle
Implemented new Schema for Transfer*
***************
*** 144,148 ****
}
! private SignedNamedObject send(final TransferBuilder req) throws NeuClearException, XMLException {
return req.getAsset().receive(req.sign(signer));
}
--- 150,154 ----
}
! private SignedNamedObject send(final TransferOrderBuilder req) throws NeuClearException, XMLException {
return req.getAsset().receive(req.sign(signer));
}
|
|
From: <pe...@us...> - 2004-01-11 00:39:09
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders
In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/java/org/neuclear/asset/orders
Modified Files:
TransferGlobals.java TransferOrder.java
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Index: TransferGlobals.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders/TransferGlobals.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** TransferGlobals.java 10 Jan 2004 00:00:45 -0000 1.3
--- TransferGlobals.java 11 Jan 2004 00:39:06 -0000 1.4
***************
*** 35,38 ****
--- 35,48 ----
$Id$
$Log$
+ Revision 1.4 2004/01/11 00:39:06 pelle
+ Cleaned up the schemas even more they now all verifiy.
+ The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ Schema.
+ The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ this to create the embedded transaction.
+ ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ Still doesnt build yet, but very close now ;-)
+
Revision 1.3 2004/01/10 00:00:45 pelle
Implemented new Schema for Transfer*
***************
*** 235,238 ****
public static final String ASSET_TAG="Asset";
public static final String AMOUNT_TAG="Amount";
! private static final String RECIPIENT_TAG = "Recipient";
}
--- 245,248 ----
public static final String ASSET_TAG="Asset";
public static final String AMOUNT_TAG="Amount";
! public static final String RECIPIENT_TAG = "Recipient";
}
Index: TransferOrder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders/TransferOrder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** TransferOrder.java 10 Jan 2004 00:00:45 -0000 1.2
--- TransferOrder.java 11 Jan 2004 00:39:06 -0000 1.3
***************
*** 11,15 ****
* Time: 5:35:26 PM
*/
! public class TransferOrder extends AssetTransactionContract {
private TransferOrder(final SignedNamedCore core, final Asset asset, final Identity recipient, final double amount, final String comment) {
--- 11,15 ----
* Time: 5:35:26 PM
*/
! public final class TransferOrder extends AssetTransactionContract {
private TransferOrder(final SignedNamedCore core, final Asset asset, final Identity recipient, final double amount, final String comment) {
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders/builders
In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/java/org/neuclear/asset/orders/builders
Modified Files:
TransferReceiptBuilder.java
Added Files:
ReceiptBuilder.java TransferOrderBuilder.java
Removed Files:
TransferBuilder.java TransferRequestBuilder.java
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
--- NEW FILE: ReceiptBuilder.java ---
package org.neuclear.asset.orders.builders;
import org.neuclear.id.builders.EmbeddedSignedObjectBuilder;
import org.neuclear.id.SignedNamedObject;
import org.neuclear.commons.time.TimeTools;
import org.neuclear.asset.orders.TransferGlobals;
import org.dom4j.QName;
import org.dom4j.DocumentException;
import java.util.Date;
/**
* Created by IntelliJ IDEA.
* User: pelleb
* Date: Jan 10, 2004
* Time: 6:26:50 PM
* To change this template use Options | File Templates.
*/
public class ReceiptBuilder extends EmbeddedSignedObjectBuilder {
protected ReceiptBuilder(final QName qname, final SignedNamedObject embedded, final QName timename,Date timestamp) {
super(qname, embedded);
getElement().addElement(timename).setText(TimeTools.formatTimeStamp(timestamp));
}
public ReceiptBuilder(final QName qname, final SignedNamedObject embedded, final Date timestamp) {
this(qname,embedded,TransferGlobals.createQName(TransferGlobals.VALUE_TIME_TAG),timestamp);
}
}
--- NEW FILE: TransferOrderBuilder.java ---
package org.neuclear.asset.orders.builders;
import org.dom4j.Element;
import org.dom4j.QName;
import org.neuclear.asset.InvalidTransferException;
import org.neuclear.asset.NegativeTransferException;
import org.neuclear.asset.contracts.Asset;
import org.neuclear.asset.orders.transfers.TransferGlobals;
import org.neuclear.asset.orders.TransferGlobals;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
import org.neuclear.id.Identity;
import org.neuclear.id.NSTools;
import org.neuclear.id.builders.NamedObjectBuilder;
import org.neuclear.xml.xmlsec.SignedElement;
/*
NeuClear Distributed Transaction Clearing Platform
(C) 2003 Pelle Braendgaard
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
$Id: TransferOrderBuilder.java,v 1.1 2004/01/11 00:39:06 pelle Exp $
$Log: TransferOrderBuilder.java,v $
Revision 1.1 2004/01/11 00:39:06 pelle
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Revision 1.2 2004/01/10 00:00:44 pelle
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Revision 1.1 2004/01/05 23:47:09 pelle
Create new Document classification "order", which is really just inherint in the new
package layout.
Got rid of much of the inheritance that was lying around and thought a bit further about the format of the exchange orders.
Revision 1.9 2004/01/03 20:36:25 pelle
Renamed HeldTransfer to Exchange
Dropped valuetime from the request objects.
Doesnt yet compile. New commit to follow soon.
Revision 1.8 2003/12/06 00:16:10 pelle
Updated various areas in NSTools.
Updated URI Validation in particular to support new expanded format
Updated createUniqueID and friends to be a lot more unique and more efficient.
In CryptoTools updated getRandom() to finally use a SecureRandom.
Changed CryptoTools.getFormatURLSafe to getBase36 because that is what it really is.
Revision 1.7 2003/11/28 00:11:50 pelle
Getting the NeuClear web transactions working.
Revision 1.6 2003/11/21 04:43:03 pelle
EncryptedFileStore now works. It uses the PBECipher with DES3 afair.
Otherwise You will Finaliate.
Anything that can be final has been made final throughout everyting. We've used IDEA's Inspector tool to find all instance of variables that could be final.
This should hopefully make everything more stable (and secure).
Revision 1.5 2003/11/12 23:47:04 pelle
Much work done in creating good test environment.
PaymentReceiverTest works, but needs a abit more work in its environment to succeed testing.
Revision 1.4 2003/11/11 21:17:19 pelle
Further vital reshuffling.
org.neudist.crypto.* and org.neudist.utils.* have been moved to respective areas under org.neuclear.commons
org.neuclear.signers.* as well as org.neuclear.passphraseagents have been moved under org.neuclear.commons.crypto as well.
Did a bit of work on the Canonicalizer and changed a few other minor bits.
Revision 1.3 2003/11/10 17:42:07 pelle
The AssetController interface has been more or less finalized.
CurrencyController fully implemented
AssetControlClient implementes a remote client for communicating with AssetControllers
Revision 1.2 2003/11/09 03:26:47 pelle
More house keeping and shuffling about mainly pay
Revision 1.1 2003/11/09 03:10:13 pelle
Major changes that apparently didnt get properly checked in earlier.
Revision 1.2 2003/11/06 23:47:43 pelle
Major Refactoring of CurrencyController.
Factored out AssetController to be new abstract parent class together with most of its support classes.
Created (Half way) AssetControlClient, which can perform transactions on external AssetControllers via NeuClear.
Created the first attempt at the ExchangeAgent. This will need use of the AssetControlClient.
SOAPTools was changed to return a stream. This is required by the VerifyingReader in NeuClear.
Revision 1.1 2003/10/03 23:48:29 pelle
Did various security related updates in the pay package with regards to immutability of fields etc.
AssetControllerReceiver should now be operational. Real testing needs to be done including in particular setting the
private key of the Receiver.
A new class TransferGlobals contains usefull settings for making life easier in the other contract based classes.
TransferContract the signed contract is functional and has a matching TransferRequestBuilder class for programmatically creating
TransferRequests for signing.
TransferReceiptBuilder has been created for use by Transfer processors. It is used in the AssetControllerReceiver.
*/
/**
* User: pelleb
* Date: Oct 3, 2003
* Time: 3:13:27 PM
*/
public class TransferOrderBuilder extends SignedElement {
protected TransferOrderBuilder(final Asset asset, final Identity recipient, final double amount, final String comment) throws InvalidTransferException, NegativeTransferException, NeuClearException {
super(TransferGlobals.createQName(TransferGlobals.XFER_TAGNAME));
if (amount < 0)
throw new NegativeTransferException(amount);
if (asset==null)
throw new InvalidTransferException("assetName");
if (recipient == null)
throw new InvalidTransferException("to");
final Element element = getElement();
element.add(TransferGlobals.createElement(TransferGlobals.RECIPIENT_TAG, recipient.getName()));
element.add(TransferGlobals.createElement(TransferGlobals.ASSET_TAG, asset.getName()));
element.add(TransferGlobals.createElement(TransferGlobals.AMOUNT_TAG,Double.toString(amount)));
if (!Utility.isEmpty(comment))
element.add(TransferGlobals.createElement(TransferGlobals.COMMENT_TAG, comment));
}
}
Index: TransferReceiptBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders/builders/TransferReceiptBuilder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** TransferReceiptBuilder.java 10 Jan 2004 00:00:45 -0000 1.2
--- TransferReceiptBuilder.java 11 Jan 2004 00:39:06 -0000 1.3
***************
*** 11,14 ****
--- 11,15 ----
import java.sql.Timestamp;
+ import java.util.Date;
/*
***************
*** 32,35 ****
--- 33,46 ----
$Id$
$Log$
+ Revision 1.3 2004/01/11 00:39:06 pelle
+ Cleaned up the schemas even more they now all verifiy.
+ The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
+ Schema.
+ The TransferBuilders are done and the ExchangeBuilders are nearly there.
+ The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
+ this to create the embedded transaction.
+ ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
+ Still doesnt build yet, but very close now ;-)
+
Revision 1.2 2004/01/10 00:00:45 pelle
Implemented new Schema for Transfer*
***************
*** 89,122 ****
* Time: 6:28:26 PM
*/
! public class TransferReceiptBuilder extends TransferBuilder {
! public TransferReceiptBuilder(final ExchangeCompletionOrder req,final String id,Timestamp valuetime) throws InvalidTransferException, NegativeTransferException, NeuClearException {
! super(TransferGlobals.XFER_RCPT_TAGNAME,
! req.getAsset(),
! req.getAsset(),
! req.getTo(),
! req.getAmount(),
! req.getComment());
! final Element element = getElement();
! if (valuetime == null)
! throw new InvalidTransferException("valuetime");
! element.add(TransferGlobals.createAttribute(element, "valuetime", TimeTools.formatTimeStamp(valuetime)));
!
! element.add(TransferGlobals.createAttribute(element, "sender", req.getFrom().getName()));
! element.add(TransferGlobals.createAttribute(element, "holdid", req.getHoldId()));
! }
!
! public TransferReceiptBuilder(final TransferOrder req,final String id,Timestamp valuetime) throws InvalidTransferException, NegativeTransferException, NeuClearException {
! super(TransferGlobals.XFER_RCPT_TAGNAME,
! req.getAsset(),
! req.getAsset(),
! req.getRecipient(),
! req.getAmount(),
! req.getComment());
! final Element element = getElement();
! if (valuetime == null)
! throw new InvalidTransferException("valuetime");
! element.add(TransferGlobals.createAttribute(element, "valuetime", TimeTools.formatTimeStamp(valuetime)));
! element.add(TransferGlobals.createAttribute(element, "sender", req.getFrom().getName()));
! element.add(TransferGlobals.createAttribute(element, "reqid", req.getName()));
}
}
--- 100,108 ----
* Time: 6:28:26 PM
*/
! public class TransferReceiptBuilder extends ReceiptBuilder {
! public TransferReceiptBuilder(final TransferOrder req,Date valuetime) throws InvalidTransferException, NegativeTransferException, NeuClearException {
! super(TransferGlobals.createQName(TransferGlobals.XFER_RCPT_TAGNAME),
! req,
! valuetime);
}
}
--- TransferBuilder.java DELETED ---
--- TransferRequestBuilder.java DELETED ---
|
|
From: <pe...@us...> - 2004-01-11 00:39:09
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/receiver/servlet In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/java/org/neuclear/asset/receiver/servlet Modified Files: TransferRequestServlet.java Log Message: Cleaned up the schemas even more they now all verifiy. The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest Schema. The TransferBuilders are done and the ExchangeBuilders are nearly there. The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses this to create the embedded transaction. ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange. Still doesnt build yet, but very close now ;-) Index: TransferRequestServlet.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/receiver/servlet/TransferRequestServlet.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** TransferRequestServlet.java 10 Jan 2004 00:00:45 -0000 1.3 --- TransferRequestServlet.java 11 Jan 2004 00:39:06 -0000 1.4 *************** *** 3,7 **** import org.neuclear.asset.InvalidTransferException; import org.neuclear.asset.contracts.Asset; - import org.neuclear.asset.orders.builders.TransferRequestBuilder; import org.neuclear.commons.NeuClearException; import org.neuclear.commons.Utility; --- 3,6 ---- *************** *** 35,38 **** --- 34,47 ---- $Id$ $Log$ + Revision 1.4 2004/01/11 00:39:06 pelle + Cleaned up the schemas even more they now all verifiy. + The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest + Schema. + The TransferBuilders are done and the ExchangeBuilders are nearly there. + The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses + this to create the embedded transaction. + ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange. + Still doesnt build yet, but very close now ;-) + Revision 1.3 2004/01/10 00:00:45 pelle Implemented new Schema for Transfer* |
|
From: <pe...@us...> - 2004-01-11 00:39:09
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/controllers/currency
In directory sc8-pr-cvs1:/tmp/cvs-serv22387/src/java/org/neuclear/asset/controllers/currency
Modified Files:
CurrencyController.java
Log Message:
Cleaned up the schemas even more they now all verifiy.
The Order/Receipt pairs for neuclear pay, should now work. They all have Readers using the latest
Schema.
The TransferBuilders are done and the ExchangeBuilders are nearly there.
The new EmbeddedSignedNamedObject builder is useful for creating new Receipts. The new ReceiptBuilder uses
this to create the embedded transaction.
ExchangeOrders now have the concept of BidItem's, you could create an ExchangeOrder bidding on various items at the same time, to be exchanged as one atomic multiparty exchange.
Still doesnt build yet, but very close now ;-)
Index: CurrencyController.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/controllers/currency/CurrencyController.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** CurrencyController.java 10 Jan 2004 00:00:44 -0000 1.11
--- CurrencyController.java 11 Jan 2004 00:39:05 -0000 1.12
***************
*** 51,62 ****
try {
! if (!req.getSignatory().equals(req.getFrom()))
! throw new TransferDeniedException(req);
! final Book from = getBook(req.getFrom());
final Book to = getBook(req.getRecipient());
final Timestamp valuetime =TimeTools.now();
final PostedTransaction posted = from.transfer(to, req.getAmount(), req.getComment(), valuetime);
! return new TransferReceiptBuilder(req, createTransactionId(req, posted));
} catch (UnknownBookException e) {
throw new InvalidTransferException(e.getSubMessage());
--- 51,61 ----
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(), req.getComment(), valuetime);
! final String transaction = createTransactionId(req, posted);
! return new TransferReceiptBuilder(req, transaction);
} catch (UnknownBookException e) {
throw new InvalidTransferException(e.getSubMessage());
***************
*** 73,77 ****
private String createTransactionId(final TransferOrder req, final PostedTransaction posted) {
! return req.getAsset().getName() + "/" + posted.getXid();
}
--- 72,76 ----
private String createTransactionId(final TransferOrder req, final PostedTransaction posted) {
! return req.getDigest();
}
|
|
From: <pe...@us...> - 2004-01-10 00:03:24
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/senders
In directory sc8-pr-cvs1:/tmp/cvs-serv23620/src/java/org/neuclear/senders
Modified Files:
LogSender.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Index: LogSender.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/senders/LogSender.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** LogSender.java 19 Dec 2003 18:03:35 -0000 1.14
--- LogSender.java 10 Jan 2004 00:03:21 -0000 1.15
***************
*** 23,26 ****
--- 23,33 ----
* $Id$
* $Log$
+ * Revision 1.15 2004/01/10 00:03:21 pelle
+ * Implemented new Schema for Transfer*
+ * Working on it for Exchange*, so far all Receipts are implemented.
+ * Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ * Changed SignedNamedObject.getDigest() from byte array to String.
+ * The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+ *
* Revision 1.14 2003/12/19 18:03:35 pelle
* Revamped a lot of exception handling throughout the framework, it has been simplified in most places:
***************
*** 117,121 ****
public final SignedNamedObject send(final String endpoint, final SignedNamedObject obj) throws NeuClearException {
try {
! final String digest = URLEncoder.encode(Base64.encode(obj.getDigest()), "UTF-8");
final String name = URLEncoder.encode(obj.getName(), "UTF-8");
final URL url = new URL(Utility.denullString(endpoint, LOGGER) + "?nohtml=1&name=" + name + "&digest=" + digest);
--- 124,128 ----
public final SignedNamedObject send(final String endpoint, final SignedNamedObject obj) throws NeuClearException {
try {
! final String digest = obj.getDigest();
final String name = URLEncoder.encode(obj.getName(), "UTF-8");
final URL url = new URL(Utility.denullString(endpoint, LOGGER) + "?nohtml=1&name=" + name + "&digest=" + digest);
|
|
From: <pe...@us...> - 2004-01-10 00:03:24
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id
In directory sc8-pr-cvs1:/tmp/cvs-serv23620/src/java/org/neuclear/id
Modified Files:
SignedNamedCore.java SignedNamedObject.java
Added Files:
SignedNamedDocument.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
--- NEW FILE: SignedNamedDocument.java ---
package org.neuclear.id;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
/*
NeuClear Distributed Transaction Clearing Platform
(C) 2003 Pelle Braendgaard
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
$Id: SignedNamedDocument.java,v 1.1 2004/01/10 00:03:21 pelle Exp $
$Log: SignedNamedDocument.java,v $
Revision 1.1 2004/01/10 00:03:21 pelle
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
*/
/**
* A general purpose object XML information from an arbitrary signed Document.
*/
public class SignedNamedDocument extends SignedNamedObject{
private SignedNamedDocument(SignedNamedCore core) {
super(core);
}
/**
* This parses the document from the encoded version and returns it to you.
* Note it parses it on every call, so you might want to
* @return
* @throws DocumentException
*/
public Document getDocument() throws DocumentException {
return DocumentHelper.parseText(getEncoded());
}
final public static class Reader implements NamedObjectReader {
/**
* Read object from Element and fill in its details
*
* @param elem
* @return
*/
public SignedNamedObject read(final SignedNamedCore core, final Element elem) {
return new SignedNamedDocument(core);
}
}
}
Index: SignedNamedCore.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/SignedNamedCore.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** SignedNamedCore.java 9 Jan 2004 16:34:40 -0000 1.10
--- SignedNamedCore.java 10 Jan 2004 00:03:21 -0000 1.11
***************
*** 2,5 ****
--- 2,12 ----
* $Id$
* $Log$
+ * Revision 1.11 2004/01/10 00:03:21 pelle
+ * Implemented new Schema for Transfer*
+ * Working on it for Exchange*, so far all Receipts are implemented.
+ * Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ * Changed SignedNamedObject.getDigest() from byte array to String.
+ * The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+ *
* Revision 1.10 2004/01/09 16:34:40 pelle
* changed use of base36 encoding to base32 to ensure compatibility with other schemes.
***************
*** 246,256 ****
import org.dom4j.Element;
import org.dom4j.QName;
- import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.crypto.CryptoTools;
- import org.neuclear.commons.crypto.Base64;
- import org.neuclear.commons.crypto.CryptoException;
import org.neuclear.commons.time.TimeTools;
import org.neuclear.id.resolver.NSResolver;
- import org.neuclear.xml.XMLException;
import org.neuclear.xml.xmlsec.KeyInfo;
import org.neuclear.xml.xmlsec.XMLSecTools;
--- 253,259 ----
***************
*** 282,286 ****
private SignedNamedCore(final PublicKey pub){
this.digest=CryptoTools.encodeBase32(CryptoTools.digest(pub.getEncoded()));
! this.name="neu:sha1:"+digest;
this.timestamp=System.currentTimeMillis();
this.encoded=new String(pub.getEncoded());
--- 285,289 ----
private SignedNamedCore(final PublicKey pub){
this.digest=CryptoTools.encodeBase32(CryptoTools.digest(pub.getEncoded()));
! this.name="neu:sha1://"+digest;
this.timestamp=System.currentTimeMillis();
this.encoded=new String(pub.getEncoded());
Index: SignedNamedObject.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/SignedNamedObject.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** SignedNamedObject.java 8 Jan 2004 23:39:06 -0000 1.16
--- SignedNamedObject.java 10 Jan 2004 00:03:21 -0000 1.17
***************
*** 2,5 ****
--- 2,12 ----
* $Id$
* $Log$
+ * Revision 1.17 2004/01/10 00:03:21 pelle
+ * Implemented new Schema for Transfer*
+ * Working on it for Exchange*, so far all Receipts are implemented.
+ * Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ * Changed SignedNamedObject.getDigest() from byte array to String.
+ * The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+ *
* Revision 1.16 2004/01/08 23:39:06 pelle
* XMLSignature can now give you the Signing key and the id of the signer.
***************
*** 230,238 ****
package org.neuclear.id;
- import org.dom4j.Element;
- import org.dom4j.QName;
import org.dom4j.DocumentHelper;
import org.neuclear.commons.NeuClearException;
- import org.neuclear.xml.xmlsec.XMLSecurityException;
import java.sql.Timestamp;
--- 237,243 ----
package org.neuclear.id;
import org.dom4j.DocumentHelper;
+ import org.dom4j.QName;
import org.neuclear.commons.NeuClearException;
import java.sql.Timestamp;
***************
*** 318,322 ****
}
! public final byte[] getDigest() {
return core.getDigest();
}
--- 323,327 ----
}
! public final String getDigest() {
return core.getDigest();
}
***************
*** 360,382 ****
private final SignedNamedCore core;
-
- final public static class Reader implements NamedObjectReader {
- /**
- * Read object from Element and fill in its details
- *
- * @param elem
- * @return
- */
- public SignedNamedObject read(final SignedNamedCore core, final Element elem) {
- return new SignedNamedObject(core);
- }
- /**
- * Read object from Element and fill in its details
- *
- * @param elem
- * @return
- */
-
- }
}
--- 365,368 ----
|
|
From: <pe...@us...> - 2004-01-10 00:03:23
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/verifier
In directory sc8-pr-cvs1:/tmp/cvs-serv23620/src/java/org/neuclear/id/verifier
Modified Files:
VerifyingReader.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Index: VerifyingReader.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/verifier/VerifyingReader.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -d -r1.17 -r1.18
*** VerifyingReader.java 19 Dec 2003 18:03:34 -0000 1.17
--- VerifyingReader.java 10 Jan 2004 00:03:20 -0000 1.18
***************
*** 3,11 ****
import org.dom4j.Element;
import org.neuclear.auth.AuthenticationTicket;
- import org.neuclear.commons.NeuClearException;
import org.neuclear.id.*;
import org.neuclear.xml.XMLException;
import org.neuclear.xml.XMLTools;
- import org.neuclear.xml.xmlsec.XMLSecurityException;
import java.io.InputStream;
--- 3,9 ----
***************
*** 33,36 ****
--- 31,41 ----
$Id$
$Log$
+ Revision 1.18 2004/01/10 00:03:20 pelle
+ Implemented new Schema for Transfer*
+ Working on it for Exchange*, so far all Receipts are implemented.
+ Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ Changed SignedNamedObject.getDigest() from byte array to String.
+ The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+
Revision 1.17 2003/12/19 18:03:34 pelle
Revamped a lot of exception handling throughout the framework, it has been simplified in most places:
***************
*** 153,157 ****
readers.put(SignatureRequest.SIGREQUEST_TAG, new SignatureRequest.Reader());
readers.put(SignedMessage.TAG_NAME, new SignedMessage.Reader());
! defaultReader = new SignedNamedObject.Reader();
}
--- 158,162 ----
readers.put(SignatureRequest.SIGREQUEST_TAG, new SignatureRequest.Reader());
readers.put(SignedMessage.TAG_NAME, new SignedMessage.Reader());
! defaultReader = new SignedNamedDocument.Reader();
}
|
|
From: <pe...@us...> - 2004-01-10 00:02:05
|
Update of /cvsroot/neuclear/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec
In directory sc8-pr-cvs1:/tmp/cvs-serv23382/src/java/org/neuclear/xml/xmlsec
Modified Files:
KeyInfo.java QuickEmbeddedSignature.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Index: KeyInfo.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/KeyInfo.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** KeyInfo.java 8 Jan 2004 23:38:06 -0000 1.7
--- KeyInfo.java 10 Jan 2004 00:02:02 -0000 1.8
***************
*** 4,20 ****
import org.dom4j.Element;
- import org.neuclear.commons.crypto.CryptoException;
import org.neuclear.commons.crypto.Base64;
import org.neuclear.commons.crypto.CryptoTools;
import org.neuclear.commons.crypto.keyresolvers.KeyResolverFactory;
import java.security.KeyFactory;
import java.security.NoSuchAlgorithmException;
import java.security.PublicKey;
- import java.security.cert.Certificate;
- import java.security.cert.X509Certificate;
import java.security.cert.CertificateEncodingException;
- import java.security.cert.CertificateFactory;
import java.security.cert.CertificateException;
import java.security.interfaces.DSAParams;
import java.security.interfaces.DSAPublicKey;
--- 4,19 ----
import org.dom4j.Element;
import org.neuclear.commons.crypto.Base64;
import org.neuclear.commons.crypto.CryptoTools;
import org.neuclear.commons.crypto.keyresolvers.KeyResolverFactory;
+ import java.io.ByteArrayInputStream;
import java.security.KeyFactory;
import java.security.NoSuchAlgorithmException;
import java.security.PublicKey;
import java.security.cert.CertificateEncodingException;
import java.security.cert.CertificateException;
+ import java.security.cert.CertificateFactory;
+ import java.security.cert.X509Certificate;
import java.security.interfaces.DSAParams;
import java.security.interfaces.DSAPublicKey;
***************
*** 24,28 ****
import java.security.spec.RSAPublicKeySpec;
import java.util.Iterator;
- import java.io.ByteArrayInputStream;
public final class KeyInfo extends AbstractXMLSigElement {
--- 23,26 ----
***************
*** 69,74 ****
--- 67,80 ----
}
}
+ public KeyInfo(final PublicKey pub, final String name){
+ this(pub);
+ appendKeyName(name);
+ }
public KeyInfo(final String name) {
super(TAG_NAME);
+ appendKeyName(name);
+ }
+
+ private void appendKeyName(final String name) {
final Element kv = XMLSecTools.createElementInSignatureSpace("KeyName");
kv.addText(name);
Index: QuickEmbeddedSignature.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-xmlsig/src/java/org/neuclear/xml/xmlsec/QuickEmbeddedSignature.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** QuickEmbeddedSignature.java 7 Jan 2004 23:11:51 -0000 1.5
--- QuickEmbeddedSignature.java 10 Jan 2004 00:02:02 -0000 1.6
***************
*** 8,11 ****
--- 8,18 ----
* $Id$
* $Log$
+ * Revision 1.6 2004/01/10 00:02:02 pelle
+ * Implemented new Schema for Transfer*
+ * Working on it for Exchange*, so far all Receipts are implemented.
+ * Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ * Changed SignedNamedObject.getDigest() from byte array to String.
+ * The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+ *
* Revision 1.5 2004/01/07 23:11:51 pelle
* XMLSig now has various added features:
***************
*** 110,130 ****
*/
- import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
- import org.neuclear.commons.crypto.Base64;
- import org.neuclear.commons.crypto.CryptoTools;
- import org.neuclear.commons.crypto.signers.Signer;
- import org.neuclear.commons.crypto.signers.NonExistingSignerException;
import org.neuclear.commons.crypto.CryptoException;
import org.neuclear.commons.crypto.passphraseagents.UserCancellationException;
import java.security.KeyPair;
- import java.security.NoSuchAlgorithmException;
import java.security.PrivateKey;
import java.security.interfaces.DSAPrivateKey;
import java.security.interfaces.RSAPrivateKey;
- import java.util.Date;
/**
--- 117,134 ----
*/
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.neuclear.commons.crypto.CryptoException;
+ import org.neuclear.commons.crypto.CryptoTools;
import org.neuclear.commons.crypto.passphraseagents.UserCancellationException;
+ import org.neuclear.commons.crypto.signers.NonExistingSignerException;
+ import org.neuclear.commons.crypto.signers.PublicKeySource;
+ import org.neuclear.commons.crypto.signers.Signer;
import java.security.KeyPair;
import java.security.PrivateKey;
import java.security.interfaces.DSAPrivateKey;
import java.security.interfaces.RSAPrivateKey;
/**
***************
*** 152,158 ****
super(getSignatureElement(root,signer.getKeyType(name)));
final Element sig = getElement();
- addElement(new KeyInfo(name)); // Add the signers name
getSi().getReference().setDigest();
final byte[] canonicalizedSignedInfo = XMLSecTools.canonicalize(sig.element("SignedInfo"));
--- 156,166 ----
super(getSignatureElement(root,signer.getKeyType(name)));
final Element sig = getElement();
getSi().getReference().setDigest();
+ if (signer instanceof PublicKeySource){
+ final KeyInfo key = new KeyInfo(((PublicKeySource)signer).getPublicKey(name),name);
+ sig.add(key.getElement());
+ } else
+ addElement(new KeyInfo(name)); // Add the signers name
final byte[] canonicalizedSignedInfo = XMLSecTools.canonicalize(sig.element("SignedInfo"));
***************
*** 225,229 ****
! public static void main(final String[] args) {
try {
final KeyPair kp = CryptoTools.createKeyPair();
--- 233,237 ----
! /* public static void main(final String[] args) {
try {
final KeyPair kp = CryptoTools.createKeyPair();
***************
*** 258,262 ****
e.printStackTrace(); //TODO Handle exception
}
-
}
}
--- 266,270 ----
e.printStackTrace(); //TODO Handle exception
}
}
+ */
}
|
|
From: <pe...@us...> - 2004-01-10 00:01:43
|
Update of /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto
In directory sc8-pr-cvs1:/tmp/cvs-serv23245/src/java/org/neuclear/commons/crypto
Modified Files:
Base64.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Index: Base64.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-commons/src/java/org/neuclear/commons/crypto/Base64.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** Base64.java 21 Nov 2003 04:43:41 -0000 1.2
--- Base64.java 10 Jan 2004 00:01:40 -0000 1.3
***************
*** 1,4 ****
--- 1,11 ----
/* $Id$
* $Log$
+ * Revision 1.3 2004/01/10 00:01:40 pelle
+ * Implemented new Schema for Transfer*
+ * Working on it for Exchange*, so far all Receipts are implemented.
+ * Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ * Changed SignedNamedObject.getDigest() from byte array to String.
+ * The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+ *
* Revision 1.2 2003/11/21 04:43:41 pelle
* EncryptedFileStore now works. It uses the PBECipher with DES3 afair.
***************
*** 217,220 ****
--- 224,237 ----
}
+ /**
+ * Encode a String as base64
+ *
+ * @param raw <code>byte[]<code> to be base64 encoded
+ * @return the <code>String<code> with encoded data
+ */
+ public static String encode(final String raw) {
+ return new String(org.bouncycastle.util.encoders.Base64.encode(raw.getBytes()));
+ // return encode(raw, Base64.getBase64WrapLength());
+ }
}
|
|
From: <pe...@us...> - 2004-01-10 00:01:22
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/contracts/builders In directory sc8-pr-cvs1:/tmp/cvs-serv22932/src/java/org/neuclear/asset/contracts/builders Modified Files: AssetBuilder.java Log Message: Implemented new Schema for Transfer* Working on it for Exchange*, so far all Receipts are implemented. Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. Changed SignedNamedObject.getDigest() from byte array to String. The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. Index: AssetBuilder.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/contracts/builders/AssetBuilder.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** AssetBuilder.java 19 Dec 2003 00:30:49 -0000 1.5 --- AssetBuilder.java 10 Jan 2004 00:00:44 -0000 1.6 *************** *** 8,17 **** import org.neuclear.commons.crypto.signers.TestCaseSigner; import org.neuclear.id.builders.IdentityBuilder; - import org.neuclear.id.SignedNamedObject; import org.neuclear.store.FileStore; import org.neuclear.store.Store; - import org.neuclear.xml.XMLException; - import java.security.GeneralSecurityException; import java.security.PublicKey; --- 8,14 ---- *************** *** 36,39 **** --- 33,43 ---- $Id$ $Log$ + Revision 1.6 2004/01/10 00:00:44 pelle + Implemented new Schema for Transfer* + Working on it for Exchange*, so far all Receipts are implemented. + Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. + Changed SignedNamedObject.getDigest() from byte array to String. + The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. + Revision 1.5 2003/12/19 00:30:49 pelle Lots of usability changes through out all the passphrase agents and end user tools. |
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders/builders
In directory sc8-pr-cvs1:/tmp/cvs-serv22932/src/java/org/neuclear/asset/orders/builders
Modified Files:
TransferBuilder.java TransferReceiptBuilder.java
TransferRequestBuilder.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Index: TransferBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders/builders/TransferBuilder.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** TransferBuilder.java 5 Jan 2004 23:47:09 -0000 1.1
--- TransferBuilder.java 10 Jan 2004 00:00:44 -0000 1.2
***************
*** 4,19 ****
import org.neuclear.asset.InvalidTransferException;
import org.neuclear.asset.NegativeTransferException;
- import org.neuclear.asset.orders.transfers.TransferGlobals;
import org.neuclear.asset.contracts.Asset;
import org.neuclear.asset.orders.transfers.TransferGlobals;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
- import org.neuclear.commons.time.TimeTools;
import org.neuclear.id.Identity;
import org.neuclear.id.NSTools;
import org.neuclear.id.builders.NamedObjectBuilder;
- import java.util.Date;
-
/*
NeuClear Distributed Transaction Clearing Platform
--- 4,15 ----
***************
*** 36,39 ****
--- 32,42 ----
$Id$
$Log$
+ Revision 1.2 2004/01/10 00:00:44 pelle
+ Implemented new Schema for Transfer*
+ Working on it for Exchange*, so far all Receipts are implemented.
+ Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ Changed SignedNamedObject.getDigest() from byte array to String.
+ The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+
Revision 1.1 2004/01/05 23:47:09 pelle
Create new Document classification "order", which is really just inherint in the new
Index: TransferReceiptBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders/builders/TransferReceiptBuilder.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** TransferReceiptBuilder.java 5 Jan 2004 23:47:09 -0000 1.1
--- TransferReceiptBuilder.java 10 Jan 2004 00:00:45 -0000 1.2
***************
*** 2,18 ****
import org.dom4j.Element;
- import org.neuclear.asset.contracts.*;
import org.neuclear.asset.InvalidTransferException;
import org.neuclear.asset.NegativeTransferException;
- import org.neuclear.exchange.orders.ExchangeCompletionOrder;
import org.neuclear.asset.orders.TransferGlobals;
import org.neuclear.asset.orders.TransferOrder;
- import org.neuclear.asset.orders.TransferOrder;
- import org.neuclear.asset.orders.builders.TransferBuilder;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.time.TimeTools;
import org.neuclear.exchange.orders.ExchangeCompletionOrder;
- import java.util.Date;
import java.sql.Timestamp;
--- 2,13 ----
***************
*** 37,40 ****
--- 32,42 ----
$Id$
$Log$
+ Revision 1.2 2004/01/10 00:00:45 pelle
+ Implemented new Schema for Transfer*
+ Working on it for Exchange*, so far all Receipts are implemented.
+ Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ Changed SignedNamedObject.getDigest() from byte array to String.
+ The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+
Revision 1.1 2004/01/05 23:47:09 pelle
Create new Document classification "order", which is really just inherint in the new
***************
*** 108,112 ****
req.getAsset(),
req.getAsset(),
! req.getTo(),
req.getAmount(),
req.getComment());
--- 110,114 ----
req.getAsset(),
req.getAsset(),
! req.getRecipient(),
req.getAmount(),
req.getComment());
Index: TransferRequestBuilder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/orders/builders/TransferRequestBuilder.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** TransferRequestBuilder.java 5 Jan 2004 23:47:09 -0000 1.1
--- TransferRequestBuilder.java 10 Jan 2004 00:00:45 -0000 1.2
***************
*** 1,15 ****
package org.neuclear.asset.orders.builders;
- import org.neuclear.asset.orders.transfers.TransferGlobals;
- import org.neuclear.asset.contracts.Asset;
import org.neuclear.asset.InvalidTransferException;
import org.neuclear.asset.NegativeTransferException;
import org.neuclear.asset.orders.transfers.TransferGlobals;
- import org.neuclear.asset.orders.builders.TransferBuilder;
- import org.neuclear.id.Identity;
- import org.neuclear.id.NSTools;
import org.neuclear.commons.NeuClearException;
!
! import java.util.Date;
/*
--- 1,10 ----
package org.neuclear.asset.orders.builders;
import org.neuclear.asset.InvalidTransferException;
import org.neuclear.asset.NegativeTransferException;
+ import org.neuclear.asset.contracts.Asset;
import org.neuclear.asset.orders.transfers.TransferGlobals;
import org.neuclear.commons.NeuClearException;
! import org.neuclear.id.Identity;
/*
***************
*** 33,36 ****
--- 28,38 ----
$Id$
$Log$
+ Revision 1.2 2004/01/10 00:00:45 pelle
+ Implemented new Schema for Transfer*
+ Working on it for Exchange*, so far all Receipts are implemented.
+ Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ Changed SignedNamedObject.getDigest() from byte array to String.
+ The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+
Revision 1.1 2004/01/05 23:47:09 pelle
Create new Document classification "order", which is really just inherint in the new
|
|
From: <pe...@us...> - 2004-01-10 00:01:22
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/contracts
In directory sc8-pr-cvs1:/tmp/cvs-serv22932/src/java/org/neuclear/asset/contracts
Modified Files:
Asset.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Index: Asset.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/contracts/Asset.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** Asset.java 19 Dec 2003 18:02:35 -0000 1.11
--- Asset.java 10 Jan 2004 00:00:44 -0000 1.12
***************
*** 1,9 ****
package org.neuclear.asset.contracts;
- import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
import org.neuclear.id.*;
import org.neuclear.xml.xmlsec.KeyInfo;
import org.neuclear.xml.xmlsec.XMLSecTools;
--- 1,9 ----
package org.neuclear.asset.contracts;
import org.dom4j.Element;
import org.neuclear.commons.NeuClearException;
import org.neuclear.commons.Utility;
import org.neuclear.id.*;
+ import org.neuclear.senders.Sender;
import org.neuclear.xml.xmlsec.KeyInfo;
import org.neuclear.xml.xmlsec.XMLSecTools;
***************
*** 32,35 ****
--- 32,42 ----
$Id$
$Log$
+ Revision 1.12 2004/01/10 00:00:44 pelle
+ Implemented new Schema for Transfer*
+ Working on it for Exchange*, so far all Receipts are implemented.
+ Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ Changed SignedNamedObject.getDigest() from byte array to String.
+ The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+
Revision 1.11 2003/12/19 18:02:35 pelle
Revamped a lot of exception handling throughout the framework, it has been simplified in most places:
***************
*** 110,115 ****
*/
public final class Asset extends Identity {
! protected Asset(final SignedNamedCore core, final String repository, final String signer, final String logger, final String receiver, final PublicKey pub, final int decimal, final double minimumTransaction) {
! super(core, repository, signer, logger, receiver, pub);
this.decimal = decimal;
this.multiplier = (int) Math.round(Math.pow(10, -decimal));
--- 117,123 ----
*/
public final class Asset extends Identity {
! protected Asset(final SignedNamedCore core, final String serviceurl,final PublicKey pub, final int decimal, final double minimumTransaction) {
! super(core, pub);
! this.serviceurl=serviceurl;
this.decimal = decimal;
this.multiplier = (int) Math.round(Math.pow(10, -decimal));
***************
*** 142,145 ****
--- 150,160 ----
}
+ public final String getServiceurl() {
+ return serviceurl;
+ }
+
+ public final SignedNamedObject send(SignedNamedObject object) throws NeuClearException {
+ return Sender.quickSend(serviceurl,object);
+ }
public static final class Reader implements NamedObjectReader {
***************
*** 153,160 ****
if (!elem.getNamespace().equals(AssetGlobals.NS_ASSET))
throw new InvalidNamedObjectException(core.getName(),"Not in XML NameSpace: "+AssetGlobals.NS_ASSET.getURI());
! final String repository = elem.attributeValue(createNEUIDQName("repository"));
! final String signer = elem.attributeValue(createNEUIDQName("signer"));
! final String logger = elem.attributeValue(createNEUIDQName("logger"));
! final String receiver = elem.attributeValue(createNEUIDQName("receiver"));
final Element allowElement = InvalidNamedObjectException.assertContainsElementQName(core,elem,createNEUIDQName("allow"));
--- 168,172 ----
if (!elem.getNamespace().equals(AssetGlobals.NS_ASSET))
throw new InvalidNamedObjectException(core.getName(),"Not in XML NameSpace: "+AssetGlobals.NS_ASSET.getURI());
! final String serviceurl = elem.attributeValue(createNEUIDQName("serviceurl"));
final Element allowElement = InvalidNamedObjectException.assertContainsElementQName(core,elem,createNEUIDQName("allow"));
***************
*** 166,170 ****
final String min = elem.attributeValue("minimumxact");
final double minimum = (!Utility.isEmpty(min)) ? Double.parseDouble(min) : 0;
! return new Asset(core, repository, signer, logger, receiver, pub, decimal, minimum);
} catch (XMLSecurityException e) {
throw new InvalidNamedObjectException(core.getName(),e);
--- 178,182 ----
final String min = elem.attributeValue("minimumxact");
final double minimum = (!Utility.isEmpty(min)) ? Double.parseDouble(min) : 0;
! return new Asset(core, serviceurl, pub, decimal, minimum);
} catch (XMLSecurityException e) {
throw new InvalidNamedObjectException(core.getName(),e);
***************
*** 175,178 ****
--- 187,191 ----
}
+ private final String serviceurl;
private final int decimal;
private final int multiplier;
|
|
From: <pe...@us...> - 2004-01-10 00:01:22
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/controllers/currency
In directory sc8-pr-cvs1:/tmp/cvs-serv22932/src/java/org/neuclear/asset/controllers/currency
Modified Files:
CurrencyController.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Index: CurrencyController.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/asset/controllers/currency/CurrencyController.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** CurrencyController.java 5 Jan 2004 23:47:09 -0000 1.10
--- CurrencyController.java 10 Jan 2004 00:00:44 -0000 1.11
***************
*** 2,21 ****
import org.neuclear.asset.*;
import org.neuclear.exchange.orders.CancelExchangeOrder;
import org.neuclear.exchange.orders.ExchangeCompletionOrder;
- import org.neuclear.exchange.orders.ExchangeCompletionOrder;
import org.neuclear.exchange.orders.ExchangeOrder;
- import org.neuclear.asset.orders.TransferOrder;
- import org.neuclear.asset.orders.builders.TransferReceiptBuilder;
- import org.neuclear.asset.contracts.*;
import org.neuclear.exchange.orders.builders.CancelExchangeReceiptBuilder;
import org.neuclear.exchange.orders.builders.ExchangeReceiptBuilder;
- import org.neuclear.exchange.orders.builders.ExchangeReceiptBuilder;
- import org.neuclear.asset.orders.builders.TransferReceiptBuilder;
- import org.neuclear.commons.NeuClearException;
import org.neuclear.id.Identity;
import org.neuclear.id.resolver.NSResolver;
import org.neuclear.ledger.*;
import java.util.Date;
import java.util.Iterator;
--- 2,20 ----
import org.neuclear.asset.*;
+ import org.neuclear.asset.contracts.Asset;
+ import org.neuclear.asset.orders.TransferOrder;
+ import org.neuclear.asset.orders.builders.TransferReceiptBuilder;
+ import org.neuclear.commons.NeuClearException;
+ import org.neuclear.commons.time.TimeTools;
import org.neuclear.exchange.orders.CancelExchangeOrder;
import org.neuclear.exchange.orders.ExchangeCompletionOrder;
import org.neuclear.exchange.orders.ExchangeOrder;
import org.neuclear.exchange.orders.builders.CancelExchangeReceiptBuilder;
import org.neuclear.exchange.orders.builders.ExchangeReceiptBuilder;
import org.neuclear.id.Identity;
import org.neuclear.id.resolver.NSResolver;
import org.neuclear.ledger.*;
+ import java.sql.Timestamp;
import java.util.Date;
import java.util.Iterator;
***************
*** 55,61 ****
throw new TransferDeniedException(req);
final Book from = getBook(req.getFrom());
! final Book to = getBook(req.getTo());
! final PostedTransaction posted = from.transfer(to, req.getAmount(), req.getComment(), req.getValueTime());
return new TransferReceiptBuilder(req, createTransactionId(req, posted));
} catch (UnknownBookException e) {
--- 54,61 ----
throw new TransferDeniedException(req);
final Book from = getBook(req.getFrom());
! final Book to = getBook(req.getRecipient());
! final Timestamp valuetime =TimeTools.now();
! final PostedTransaction posted = from.transfer(to, req.getAmount(), req.getComment(), valuetime);
return new TransferReceiptBuilder(req, createTransactionId(req, posted));
} catch (UnknownBookException e) {
|
|
From: <pe...@us...> - 2004-01-10 00:00:51
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders
In directory sc8-pr-cvs1:/tmp/cvs-serv22932/src/java/org/neuclear/exchange/orders
Modified Files:
CancelExchangeOrder.java CancelExchangeReceipt.java
ExchangeCompletedReceipt.java ExchangeCompletionOrder.java
ExchangeGlobals.java ExchangeOrder.java
ExchangeOrderReceipt.java ExchangeTransactionContract.java
Log Message:
Implemented new Schema for Transfer*
Working on it for Exchange*, so far all Receipts are implemented.
Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
Changed SignedNamedObject.getDigest() from byte array to String.
The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
Index: CancelExchangeOrder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/CancelExchangeOrder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** CancelExchangeOrder.java 6 Jan 2004 23:26:48 -0000 1.2
--- CancelExchangeOrder.java 10 Jan 2004 00:00:46 -0000 1.3
***************
*** 1,14 ****
package org.neuclear.exchange.orders;
! import org.neuclear.commons.NeuClearException;
! import org.neuclear.id.Identity;
! import org.neuclear.id.SignedNamedObject;
! import org.neuclear.id.SignedNamedCore;
! import org.neuclear.asset.orders.AssetTransactionContract;
import org.neuclear.asset.contracts.Asset;
import org.neuclear.exchange.contracts.ExchangeAgent;
!
! import java.sql.Timestamp;
! import java.util.Date;
/**
--- 1,13 ----
package org.neuclear.exchange.orders;
! import org.dom4j.Element;
import org.neuclear.asset.contracts.Asset;
+ import org.neuclear.asset.contracts.AssetGlobals;
+ import org.neuclear.asset.orders.TransferGlobals;
import org.neuclear.exchange.contracts.ExchangeAgent;
! import org.neuclear.id.InvalidNamedObjectException;
! import org.neuclear.id.NamedObjectReader;
! import org.neuclear.id.SignedNamedCore;
! import org.neuclear.id.SignedNamedObject;
/**
***************
*** 33,35 ****
--- 32,55 ----
private final String exchangeid;
+
+ public static final class Reader implements NamedObjectReader {
+ /**
+ * Read object from Element and fill in its details
+ *
+ * @param elem
+ * @return
+ */
+ 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.CANCEL_TAGNAME))
+ return new CancelExchangeOrder(core,
+ TransferGlobals.parseAssetTag(elem),
+ ExchangeGlobals.parseAgentTag(elem),
+ ExchangeGlobals.parseExchangeOrderId(elem));
+
+ throw new InvalidNamedObjectException(core.getName(),"Not Matched");
+ }
+ }
}
Index: CancelExchangeReceipt.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/CancelExchangeReceipt.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** CancelExchangeReceipt.java 6 Jan 2004 23:26:48 -0000 1.2
--- CancelExchangeReceipt.java 10 Jan 2004 00:00:46 -0000 1.3
***************
*** 1,14 ****
package org.neuclear.exchange.orders;
! import org.neuclear.commons.NeuClearException;
! import org.neuclear.id.Identity;
! import org.neuclear.id.SignedNamedObject;
! import org.neuclear.id.SignedNamedCore;
! import org.neuclear.asset.orders.AssetTransactionContract;
! import org.neuclear.asset.contracts.Asset;
! import org.neuclear.asset.orders.AssetTransactionContract;
! import org.neuclear.asset.orders.AssetTransactionContract;
! import org.neuclear.exchange.orders.CancelExchangeOrder;
! import org.neuclear.exchange.contracts.ExchangeAgent;
import java.sql.Timestamp;
--- 1,9 ----
package org.neuclear.exchange.orders;
! import org.dom4j.Element;
! import org.neuclear.asset.contracts.AssetGlobals;
! import org.neuclear.asset.orders.TransferGlobals;
! import org.neuclear.id.*;
! import org.neuclear.id.verifier.VerifyingReader;
import java.sql.Timestamp;
***************
*** 22,54 ****
public final class CancelExchangeReceipt extends ExchangeTransactionContract{
! private CancelExchangeReceipt(final SignedNamedCore core, final Asset asset, ExchangeAgent agent,final Date canceltime,final String exchangeid, final String cancelid) {
! super(core, asset,agent);
this.canceltime=canceltime.getTime();
! this.exchangeid=exchangeid;
! this.cancelid=cancelid;
}
! public CancelExchangeOrder getCancellationOrder(){
! //TODO implement
! return null;
! }
! public CancelExchangeOrder getExchangeReceipt(){
! //TODO implement
! return null;
}
public Timestamp getCanceltime() {
return new Timestamp(canceltime);
}
! public String getExchangeid() {
! return exchangeid;
! }
! public String getCancelid() {
! return cancelid;
}
- private final long canceltime;
- private final String exchangeid;
- private final String cancelid;
}
--- 17,60 ----
public final class CancelExchangeReceipt extends ExchangeTransactionContract{
! private CancelExchangeReceipt(SignedNamedCore core,CancelExchangeOrder order,final Date canceltime) {
! super(core, order.getAsset(), order.getAgent());
this.canceltime=canceltime.getTime();
! this.order=order;
}
! public CancelExchangeOrder getOrder(){
! return order;
}
+
public Timestamp getCanceltime() {
return new Timestamp(canceltime);
}
! private final long canceltime;
! private final CancelExchangeOrder order;
! public static final class Reader implements NamedObjectReader {
! /**
! * Read object from Element and fill in its details
! *
! * @param elem
! * @return
! */
! 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());
!
! try {
! if (elem.getName().equals(ExchangeGlobals.CANCEL_RCPT_TAGNAME)){
! final Date valuetime = TransferGlobals.parseValueTimeElement(elem);
! CancelExchangeOrder order=(CancelExchangeOrder) VerifyingReader.getInstance().read(elem.element(ExchangeGlobals.createQName(ExchangeGlobals.CANCEL_TAGNAME)));
! return new CancelExchangeReceipt(core,order,valuetime);
! }
! } catch (NameResolutionException e) {
! throw new InvalidNamedObjectException(core.getName(),e);
! }
! throw new InvalidNamedObjectException(core.getName(),"Not Matched");
! }
}
}
Index: ExchangeCompletedReceipt.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeCompletedReceipt.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** ExchangeCompletedReceipt.java 6 Jan 2004 23:26:48 -0000 1.1
--- ExchangeCompletedReceipt.java 10 Jan 2004 00:00:46 -0000 1.2
***************
*** 1,7 ****
package org.neuclear.exchange.orders;
import org.neuclear.id.SignedNamedCore;
! import org.neuclear.asset.contracts.Asset;
! import org.neuclear.exchange.contracts.ExchangeAgent;
/*
--- 1,14 ----
package org.neuclear.exchange.orders;
+ import org.dom4j.Element;
+ import org.neuclear.asset.contracts.AssetGlobals;
+ import org.neuclear.asset.orders.TransferGlobals;
+ import org.neuclear.id.InvalidNamedObjectException;
+ import org.neuclear.id.NamedObjectReader;
import org.neuclear.id.SignedNamedCore;
! import org.neuclear.id.SignedNamedObject;
!
! import java.sql.Timestamp;
! import java.util.Date;
/*
***************
*** 25,28 ****
--- 32,42 ----
$Id$
$Log$
+ Revision 1.2 2004/01/10 00:00:46 pelle
+ Implemented new Schema for Transfer*
+ Working on it for Exchange*, so far all Receipts are implemented.
+ Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ Changed SignedNamedObject.getDigest() from byte array to String.
+ The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+
Revision 1.1 2004/01/06 23:26:48 pelle
Started restructuring the original xml schemas.
***************
*** 37,47 ****
*/
public final class ExchangeCompletedReceipt extends ExchangeTransactionContract{
! public ExchangeCompletedReceipt(SignedNamedCore core, Asset asset, ExchangeAgent agent, double settledAmount, long valuetime) {
! super(core, asset, agent);
! this.settledAmount = settledAmount;
! this.valuetime = valuetime;
}
- private final double settledAmount;
private final long valuetime;
}
--- 51,90 ----
*/
public final class ExchangeCompletedReceipt extends ExchangeTransactionContract{
! private ExchangeCompletedReceipt(SignedNamedCore core, ExchangeCompletionOrder order, Date valuetime) {
! super(core, order.getAsset(), order.getAgent());
! this.valuetime = valuetime.getTime();
! this.order=order;
! }
!
! public ExchangeCompletionOrder getOrder() {
! return order;
! }
!
! public final Timestamp getValueTime(){
! return new Timestamp(valuetime);
}
private final long valuetime;
+ private final ExchangeCompletionOrder order;
+
+ public static final class Reader implements NamedObjectReader {
+ /**
+ * Read object from Element and fill in its details
+ *
+ * @param elem
+ * @return
+ */
+ 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.COMPLETE_RCPT_TAGNAME)){
+ return new ExchangeCompletedReceipt(core,
+ (ExchangeCompletionOrder) TransferGlobals.parseEmbedded(elem,ExchangeGlobals.createQName(ExchangeGlobals.COMPLETE_TAGNAME)),
+ TransferGlobals.parseValueTimeElement(elem));
+ }
+ throw new InvalidNamedObjectException(core.getName(),"Not Matched");
+ }
+ }
+
}
Index: ExchangeCompletionOrder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeCompletionOrder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** ExchangeCompletionOrder.java 6 Jan 2004 23:26:48 -0000 1.2
--- ExchangeCompletionOrder.java 10 Jan 2004 00:00:46 -0000 1.3
***************
*** 1,11 ****
package org.neuclear.exchange.orders;
- import org.neuclear.commons.NeuClearException;
- import org.neuclear.id.Identity;
- import org.neuclear.id.SignedNamedCore;
- import org.neuclear.asset.orders.TransferContract;
- import org.neuclear.asset.orders.AssetTransactionContract;
import org.neuclear.asset.contracts.Asset;
import org.neuclear.exchange.contracts.ExchangeAgent;
import java.sql.Timestamp;
--- 1,7 ----
package org.neuclear.exchange.orders;
import org.neuclear.asset.contracts.Asset;
import org.neuclear.exchange.contracts.ExchangeAgent;
+ import org.neuclear.id.SignedNamedCore;
import java.sql.Timestamp;
Index: ExchangeGlobals.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeGlobals.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** ExchangeGlobals.java 6 Jan 2004 23:26:48 -0000 1.1
--- ExchangeGlobals.java 10 Jan 2004 00:00:46 -0000 1.2
***************
*** 2,9 ****
import org.dom4j.*;
! import org.neuclear.id.verifier.VerifyingReader;
! import org.neuclear.asset.orders.AssetTransactionContract;
! import org.neuclear.asset.orders.AssetTransactionContract;
import org.neuclear.asset.orders.TransferGlobals;
/*
--- 2,11 ----
import org.dom4j.*;
! import org.neuclear.asset.contracts.Asset;
import org.neuclear.asset.orders.TransferGlobals;
+ import org.neuclear.exchange.contracts.ExchangeAgent;
+ import org.neuclear.id.InvalidNamedObjectException;
+ import org.neuclear.id.NameResolutionException;
+ import org.neuclear.id.resolver.NSResolver;
/*
***************
*** 27,30 ****
--- 29,39 ----
$Id$
$Log$
+ Revision 1.2 2004/01/10 00:00:46 pelle
+ Implemented new Schema for Transfer*
+ Working on it for Exchange*, so far all Receipts are implemented.
+ Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ Changed SignedNamedObject.getDigest() from byte array to String.
+ The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+
Revision 1.1 2004/01/06 23:26:48 pelle
Started restructuring the original xml schemas.
***************
*** 120,130 ****
}
public static void registerReaders() {
! VerifyingReader.getInstance().registerReader(ExchangeGlobals.CANCEL_TAGNAME, new AssetTransactionContract.Reader());
! VerifyingReader.getInstance().registerReader(ExchangeGlobals.CANCEL_RCPT_TAGNAME, new AssetTransactionContract.Reader());
! VerifyingReader.getInstance().registerReader(ExchangeGlobals.EXCHANGE_TAGNAME, new AssetTransactionContract.Reader());
! VerifyingReader.getInstance().registerReader(ExchangeGlobals.EXCHANGE_RCPT_TAGNAME, new AssetTransactionContract.Reader());
! VerifyingReader.getInstance().registerReader(ExchangeGlobals.COMPLETE_TAGNAME, new AssetTransactionContract.Reader());
! VerifyingReader.getInstance().registerReader(ExchangeGlobals.COMPLETE_RCPT_TAGNAME, new AssetTransactionContract.Reader());
}
--- 129,178 ----
}
+ 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 parseBidAssetTag(final Element elem) throws InvalidNamedObjectException {
+ return parseAssetTag(elem,BID_ASSET_TAG);
+ }
+ public static final Asset parseSettlementAssetTag(final Element elem) throws InvalidNamedObjectException {
+ return parseAssetTag(elem,SETTLEMENT_ASSET_TAG);
+ }
+ 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);
+ }
+
+ }
+
+
+
public static void registerReaders() {
! // VerifyingReader.getInstance().registerReader(ExchangeGlobals.CANCEL_TAGNAME, new AssetTransactionContract.Reader());
! // VerifyingReader.getInstance().registerReader(ExchangeGlobals.CANCEL_RCPT_TAGNAME, new AssetTransactionContract.Reader());
! // VerifyingReader.getInstance().registerReader(ExchangeGlobals.EXCHANGE_TAGNAME, new AssetTransactionContract.Reader());
! // VerifyingReader.getInstance().registerReader(ExchangeGlobals.EXCHANGE_RCPT_TAGNAME, new AssetTransactionContract.Reader());
! // VerifyingReader.getInstance().registerReader(ExchangeGlobals.COMPLETE_TAGNAME, new AssetTransactionContract.Reader());
! // VerifyingReader.getInstance().registerReader(ExchangeGlobals.COMPLETE_RCPT_TAGNAME, new AssetTransactionContract.Reader());
}
***************
*** 143,145 ****
--- 191,197 ----
public static final String EX_NSPREFIX = "ex";
public static final String EX_NSURI = "http://neuclear.org/neu/exch";
+ public static final String EXCHANGE_REF_TAG = "ExchangeOrderRef";
+ private static final String AGENT_TAG = "ExchangeAgent";
+ public static final String SETTLEMENT_ASSET_TAG = "SettlementAsset";
+ public static final String BID_ASSET_TAG = "BidAsset";
}
Index: ExchangeOrder.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeOrder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** ExchangeOrder.java 6 Jan 2004 23:26:48 -0000 1.2
--- ExchangeOrder.java 10 Jan 2004 00:00:46 -0000 1.3
***************
*** 1,14 ****
package org.neuclear.exchange.orders;
! import org.neuclear.commons.NeuClearException;
! import org.neuclear.id.Identity;
! import org.neuclear.id.SignedNamedCore;
! import org.neuclear.asset.orders.exchanges.Exchange;
! import org.neuclear.asset.orders.TransferContract;
! import org.neuclear.asset.orders.TransferContract;
! import org.neuclear.asset.orders.AssetTransactionContract;
import org.neuclear.asset.contracts.Asset;
import org.neuclear.exchange.contracts.ExchangeAgent;
! import org.neuclear.exchange.contracts.ExchangeAgent;
import java.sql.Timestamp;
--- 1,10 ----
package org.neuclear.exchange.orders;
! import org.dom4j.Element;
import org.neuclear.asset.contracts.Asset;
+ import org.neuclear.asset.contracts.AssetGlobals;
+ import org.neuclear.asset.orders.TransferGlobals;
import org.neuclear.exchange.contracts.ExchangeAgent;
! import org.neuclear.id.*;
import java.sql.Timestamp;
***************
*** 61,64 ****
--- 57,86 ----
private final String comment;
private final long expires;
+ public static final class Reader implements NamedObjectReader {
+ /**
+ * Read object from Element and fill in its details
+ *
+ * @param elem
+ * @return
+ */
+ 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))
+ return new ExchangeOrder(core,
+ ExchangeGlobals.parseBidAssetTag(elem),
+ ExchangeGlobals.parseAgentTag(elem),
+ TransferGlobals.parseAmountTag(elem),
+ ExchangeGlobals.parseSettlementAssetTag(elem),
+ TransferGlobals.parseAmountTag(elem),
+ TransferGlobals.getCommentElement(elem),
+ null//TODO getExpiryTime
+ );
+ throw new InvalidNamedObjectException(core.getName(),"Not Matched");
+ }
+
+
+ }
}
Index: ExchangeOrderReceipt.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeOrderReceipt.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** ExchangeOrderReceipt.java 6 Jan 2004 23:26:48 -0000 1.2
--- ExchangeOrderReceipt.java 10 Jan 2004 00:00:46 -0000 1.3
***************
*** 1,7 ****
package org.neuclear.exchange.orders;
import org.neuclear.id.SignedNamedCore;
! import org.neuclear.asset.contracts.Asset;
! import org.neuclear.exchange.contracts.ExchangeAgent;
import java.sql.Timestamp;
--- 1,11 ----
package org.neuclear.exchange.orders;
+ import org.dom4j.Element;
+ import org.neuclear.asset.contracts.AssetGlobals;
+ import org.neuclear.asset.orders.TransferGlobals;
+ import org.neuclear.id.InvalidNamedObjectException;
+ import org.neuclear.id.NamedObjectReader;
import org.neuclear.id.SignedNamedCore;
! import org.neuclear.id.SignedNamedObject;
import java.sql.Timestamp;
***************
*** 15,36 ****
public final class ExchangeOrderReceipt extends ExchangeTransactionContract {
! private ExchangeOrderReceipt(final SignedNamedCore core, final Asset asset, final ExchangeAgent agent, final String orderid, final Date valuetime, Asset neededAsset, double neededAmount, double bidAmount, final String comment, final Date expires) {
! super(core, asset,agent);
! this.orderid = orderid;
this.valuetime = valuetime.getTime();
! this.neededAsset = neededAsset;
! this.neededAmount = neededAmount;
! this.bidAmount = bidAmount;
! this.comment = comment;
! this.expires = expires.getTime();
}
public ExchangeOrder getExchangeOrder(){
! //TODO Implement
! return null;
! }
!
!
! public String getOrderid() {
! return orderid;
}
--- 19,29 ----
public final class ExchangeOrderReceipt extends ExchangeTransactionContract {
! private ExchangeOrderReceipt(final SignedNamedCore core, final ExchangeOrder order,final Date valuetime) {
! super(core, order.getAsset(), order.getAgent());
this.valuetime = valuetime.getTime();
! this.order=order;
}
public ExchangeOrder getExchangeOrder(){
! return order;
}
***************
*** 39,69 ****
}
! public Asset getNeededAsset() {
! return neededAsset;
! }
!
! public double getNeededAmount() {
! return neededAmount;
! }
!
! public double getBidAmount() {
! return bidAmount;
! }
! public String getComment() {
! return comment;
! }
! public Timestamp getExpires() {
! return new Timestamp(expires);
}
-
- private final String orderid;
- private final long valuetime;
- private final Asset neededAsset;
- private final double neededAmount;
- private final double bidAmount;
- private final String comment;
- private final long expires;
}
--- 32,57 ----
}
! private final long valuetime;
! private final ExchangeOrder order;
! public static final class Reader implements NamedObjectReader {
! /**
! * Read object from Element and fill in its details
! *
! * @param elem
! * @return
! */
! 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_RCPT_TAGNAME)){
! return new ExchangeOrderReceipt(core,
! (ExchangeOrder) TransferGlobals.parseEmbedded(elem,ExchangeGlobals.createQName(ExchangeGlobals.EXCHANGE_TAGNAME)),
! TransferGlobals.parseValueTimeElement(elem));
! }
! throw new InvalidNamedObjectException(core.getName(),"Not Matched");
! }
}
}
Index: ExchangeTransactionContract.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/ExchangeTransactionContract.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** ExchangeTransactionContract.java 6 Jan 2004 23:26:48 -0000 1.1
--- ExchangeTransactionContract.java 10 Jan 2004 00:00:46 -0000 1.2
***************
*** 1,8 ****
package org.neuclear.exchange.orders;
- import org.neuclear.asset.orders.AssetTransactionContract;
import org.neuclear.asset.contracts.Asset;
! import org.neuclear.id.SignedNamedCore;
import org.neuclear.exchange.contracts.ExchangeAgent;
/*
--- 1,8 ----
package org.neuclear.exchange.orders;
import org.neuclear.asset.contracts.Asset;
! import org.neuclear.asset.orders.AssetTransactionContract;
import org.neuclear.exchange.contracts.ExchangeAgent;
+ import org.neuclear.id.SignedNamedCore;
/*
***************
*** 26,29 ****
--- 26,36 ----
$Id$
$Log$
+ Revision 1.2 2004/01/10 00:00:46 pelle
+ Implemented new Schema for Transfer*
+ Working on it for Exchange*, so far all Receipts are implemented.
+ Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML.
+ Changed SignedNamedObject.getDigest() from byte array to String.
+ The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there.
+
Revision 1.1 2004/01/06 23:26:48 pelle
Started restructuring the original xml schemas.
|
|
From: <pe...@us...> - 2004-01-10 00:00:50
|
Update of /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders In directory sc8-pr-cvs1:/tmp/cvs-serv22932/src/java/org/neuclear/exchange/orders/builders Modified Files: CancelExchangeBuilder.java CancelExchangeReceiptBuilder.java CancelExchangeRequestBuilder.java CompleteExchangeRequestBuilder.java ExchangeReceiptBuilder.java ExchangeRequestBuilder.java Log Message: Implemented new Schema for Transfer* Working on it for Exchange*, so far all Receipts are implemented. Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. Changed SignedNamedObject.getDigest() from byte array to String. The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. Index: CancelExchangeBuilder.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/CancelExchangeBuilder.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** CancelExchangeBuilder.java 5 Jan 2004 23:47:10 -0000 1.1 --- CancelExchangeBuilder.java 10 Jan 2004 00:00:46 -0000 1.2 *************** *** 6,11 **** import org.neuclear.asset.contracts.Asset; import org.neuclear.asset.orders.transfers.TransferGlobals; - import org.neuclear.id.builders.NamedObjectBuilder; import org.neuclear.commons.NeuClearException; /* --- 6,11 ---- import org.neuclear.asset.contracts.Asset; import org.neuclear.asset.orders.transfers.TransferGlobals; import org.neuclear.commons.NeuClearException; + import org.neuclear.id.builders.NamedObjectBuilder; /* *************** *** 29,32 **** --- 29,39 ---- $Id$ $Log$ + Revision 1.2 2004/01/10 00:00:46 pelle + Implemented new Schema for Transfer* + Working on it for Exchange*, so far all Receipts are implemented. + Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. + Changed SignedNamedObject.getDigest() from byte array to String. + The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. + Revision 1.1 2004/01/05 23:47:10 pelle Create new Document classification "order", which is really just inherint in the new Index: CancelExchangeReceiptBuilder.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/CancelExchangeReceiptBuilder.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** CancelExchangeReceiptBuilder.java 5 Jan 2004 23:47:10 -0000 1.1 --- CancelExchangeReceiptBuilder.java 10 Jan 2004 00:00:46 -0000 1.2 *************** *** 3,12 **** import org.neuclear.asset.InvalidTransferException; import org.neuclear.asset.NegativeTransferException; - import org.neuclear.exchange.orders.CancelExchangeOrder; - import org.neuclear.exchange.orders.CancelExchangeOrder; - import org.neuclear.exchange.orders.builders.CancelExchangeBuilder; import org.neuclear.asset.orders.TransferGlobals; - import org.neuclear.asset.orders.transfers.TransferGlobals; import org.neuclear.commons.NeuClearException; import org.neuclear.id.NSTools; --- 3,9 ---- import org.neuclear.asset.InvalidTransferException; import org.neuclear.asset.NegativeTransferException; import org.neuclear.asset.orders.TransferGlobals; import org.neuclear.commons.NeuClearException; + import org.neuclear.exchange.orders.CancelExchangeOrder; import org.neuclear.id.NSTools; *************** *** 18,21 **** --- 15,25 ---- * $Id$ * $Log$ + * Revision 1.2 2004/01/10 00:00:46 pelle + * Implemented new Schema for Transfer* + * Working on it for Exchange*, so far all Receipts are implemented. + * Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. + * Changed SignedNamedObject.getDigest() from byte array to String. + * The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. + * * Revision 1.1 2004/01/05 23:47:10 pelle * Create new Document classification "order", which is really just inherint in the new Index: CancelExchangeRequestBuilder.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/CancelExchangeRequestBuilder.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** CancelExchangeRequestBuilder.java 5 Jan 2004 23:47:10 -0000 1.1 --- CancelExchangeRequestBuilder.java 10 Jan 2004 00:00:46 -0000 1.2 *************** *** 3,12 **** import org.neuclear.asset.InvalidTransferException; import org.neuclear.asset.NegativeTransferException; - import org.neuclear.exchange.orders.ExchangeOrderReceipt; - import org.neuclear.exchange.orders.ExchangeOrderReceipt; - import org.neuclear.exchange.orders.builders.CancelExchangeBuilder; - import org.neuclear.asset.orders.transfers.TransferGlobals; import org.neuclear.asset.orders.transfers.TransferGlobals; import org.neuclear.commons.NeuClearException; import org.neuclear.id.NSTools; --- 3,9 ---- import org.neuclear.asset.InvalidTransferException; import org.neuclear.asset.NegativeTransferException; import org.neuclear.asset.orders.transfers.TransferGlobals; import org.neuclear.commons.NeuClearException; + import org.neuclear.exchange.orders.ExchangeOrderReceipt; import org.neuclear.id.NSTools; *************** *** 18,21 **** --- 15,25 ---- * $Id$ * $Log$ + * Revision 1.2 2004/01/10 00:00:46 pelle + * Implemented new Schema for Transfer* + * Working on it for Exchange*, so far all Receipts are implemented. + * Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. + * Changed SignedNamedObject.getDigest() from byte array to String. + * The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. + * * Revision 1.1 2004/01/05 23:47:10 pelle * Create new Document classification "order", which is really just inherint in the new Index: CompleteExchangeRequestBuilder.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/CompleteExchangeRequestBuilder.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** CompleteExchangeRequestBuilder.java 5 Jan 2004 23:47:10 -0000 1.1 --- CompleteExchangeRequestBuilder.java 10 Jan 2004 00:00:46 -0000 1.2 *************** *** 2,20 **** import org.dom4j.Element; - import org.neuclear.asset.orders.TransferReceipt; - import org.neuclear.asset.orders.transfers.TransferGlobals; - import org.neuclear.asset.orders.TransferOrder; - import org.neuclear.asset.orders.builders.TransferBuilder; - import org.neuclear.exchange.orders.ExchangeOrderReceipt; import org.neuclear.asset.InvalidTransferException; import org.neuclear.asset.NegativeTransferException; import org.neuclear.asset.orders.builders.TransferBuilder; - import org.neuclear.exchange.orders.ExchangeOrderReceipt; import org.neuclear.asset.orders.transfers.TransferGlobals; - import org.neuclear.id.Identity; import org.neuclear.commons.NeuClearException; import org.neuclear.exchange.orders.ExchangeOrderReceipt; ! ! import java.util.Date; /* --- 2,12 ---- import org.dom4j.Element; import org.neuclear.asset.InvalidTransferException; import org.neuclear.asset.NegativeTransferException; import org.neuclear.asset.orders.builders.TransferBuilder; import org.neuclear.asset.orders.transfers.TransferGlobals; import org.neuclear.commons.NeuClearException; import org.neuclear.exchange.orders.ExchangeOrderReceipt; ! import org.neuclear.id.Identity; /* *************** *** 38,41 **** --- 30,40 ---- $Id$ $Log$ + Revision 1.2 2004/01/10 00:00:46 pelle + Implemented new Schema for Transfer* + Working on it for Exchange*, so far all Receipts are implemented. + Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. + Changed SignedNamedObject.getDigest() from byte array to String. + The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. + Revision 1.1 2004/01/05 23:47:10 pelle Create new Document classification "order", which is really just inherint in the new Index: ExchangeReceiptBuilder.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/ExchangeReceiptBuilder.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ExchangeReceiptBuilder.java 5 Jan 2004 23:47:10 -0000 1.1 --- ExchangeReceiptBuilder.java 10 Jan 2004 00:00:46 -0000 1.2 *************** *** 7,14 **** import org.neuclear.asset.orders.exchanges.ExchangeOrder; import org.neuclear.asset.orders.transfers.TransferGlobals; - import org.neuclear.asset.orders.transfers.TransferGlobals; - import org.neuclear.asset.orders.builders.TransferBuilder; - import org.neuclear.commons.time.TimeTools; import org.neuclear.commons.NeuClearException; import java.sql.Timestamp; --- 7,12 ---- import org.neuclear.asset.orders.exchanges.ExchangeOrder; import org.neuclear.asset.orders.transfers.TransferGlobals; import org.neuclear.commons.NeuClearException; + import org.neuclear.commons.time.TimeTools; import java.sql.Timestamp; *************** *** 34,37 **** --- 32,42 ---- $Id$ $Log$ + Revision 1.2 2004/01/10 00:00:46 pelle + Implemented new Schema for Transfer* + Working on it for Exchange*, so far all Receipts are implemented. + Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. + Changed SignedNamedObject.getDigest() from byte array to String. + The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. + Revision 1.1 2004/01/05 23:47:10 pelle Create new Document classification "order", which is really just inherint in the new Index: ExchangeRequestBuilder.java =================================================================== RCS file: /cvsroot/neuclear/neuclear-pay/src/java/org/neuclear/exchange/orders/builders/ExchangeRequestBuilder.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** ExchangeRequestBuilder.java 5 Jan 2004 23:47:10 -0000 1.1 --- ExchangeRequestBuilder.java 10 Jan 2004 00:00:46 -0000 1.2 *************** *** 7,14 **** import org.neuclear.asset.orders.builders.TransferBuilder; import org.neuclear.asset.orders.transfers.TransferGlobals; - import org.neuclear.asset.orders.builders.TransferBuilder; - import org.neuclear.id.Identity; - import org.neuclear.commons.time.TimeTools; import org.neuclear.commons.NeuClearException; import java.util.Date; --- 7,13 ---- import org.neuclear.asset.orders.builders.TransferBuilder; import org.neuclear.asset.orders.transfers.TransferGlobals; import org.neuclear.commons.NeuClearException; + import org.neuclear.commons.time.TimeTools; + import org.neuclear.id.Identity; import java.util.Date; *************** *** 34,37 **** --- 33,43 ---- $Id$ $Log$ + Revision 1.2 2004/01/10 00:00:46 pelle + Implemented new Schema for Transfer* + Working on it for Exchange*, so far all Receipts are implemented. + Added SignedNamedDocument which is a generic SignedNamedObject that works with all Signed XML. + Changed SignedNamedObject.getDigest() from byte array to String. + The whole malarchy in neuclear-pay does not build yet. The refactoring is a big job, but getting there. + Revision 1.1 2004/01/05 23:47:10 pelle Create new Document classification "order", which is really just inherint in the new |