<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/amqp.swc</filename>
    </added>
    <added>
      <filename>src/com/squarespace/hopper/json/JSONSerializer.as</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -3,12 +3,14 @@
 				layout=&quot;absolute&quot; creationComplete=&quot;onCreationComplete()&quot; width=&quot;412&quot; height=&quot;238&quot; backgroundGradientAlphas=&quot;[0.0, 0.0]&quot;&gt;
 	&lt;mx:Script&gt;
 		&lt;![CDATA[
-			import com.squarespace.hopper.json.JSONEvent;
+			import com.squarespace.hopper.json.JSONSerializer;
+			import org.amqp.patterns.impl.RpcClientImpl;
+			import org.amqp.patterns.CorrelatedMessageEvent;
 			import com.squarespace.hopper.json.util.ClientContext;
 			import org.pranaframework.ioc.factory.xml.XMLObjectFactory;
-			import com.squarespace.hopper.json.impl.AMQPClientProxy;
 			
-			private var proxy:AMQPClientProxy;
+			private var proxy:RpcClientImpl;
+			private var json:JSONSerializer;
 			private var factory:XMLObjectFactory = new XMLObjectFactory();
 			private var ctx:ClientContext = new ClientContext();
 		
@@ -24,7 +26,7 @@
  				proxy.send(o,onResponse);	
  			}
  			
- 			public function onResponse(event:JSONEvent):void { 				
+ 			public function onResponse(event:CorrelatedMessageEvent):void { 				
  				result.text = &quot;fib(&quot; + event.result.question + &quot;) -&gt; &quot; + event.result.answer;
  			}
  			</diff>
      <filename>src/client.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -14,8 +14,11 @@
     	&lt;constructor-arg ref=&quot;connectionState&quot;/&gt;
     &lt;/object&gt;
     
-    &lt;object id=&quot;client&quot; class=&quot;com.squarespace.hopper.json.impl.AMQPClientProxy&quot;&gt;
+    &lt;object id=&quot;serializer&quot; class=&quot;com.squarespace.hopper.json.JSONSerializer&quot;/&gt;
+    
+    &lt;object id=&quot;client&quot; class=&quot;org.amqp.patterns.impl.RpcClientImpl&quot;&gt;
     	&lt;constructor-arg ref=&quot;connection&quot;/&gt;
+    	&lt;property name=&quot;serializer&quot; ref=&quot;serializer&quot;/&gt;
     	&lt;property name=&quot;connection&quot; ref=&quot;connection&quot;/&gt;
     	&lt;property name=&quot;realm&quot; value=&quot;/data&quot;/&gt;
     	&lt;property name=&quot;exchange&quot; value=&quot;x&quot;/&gt;</diff>
      <filename>src/clientContext.xml</filename>
    </modified>
    <modified>
      <diff>@@ -17,8 +17,8 @@
  **/
 package com.squarespace.hopper.json.demo
 {
-	import com.squarespace.hopper.json.RequestHandler;
-
+	import org.amqp.patterns.RequestHandler;
+	
 	public class Fibonacci implements RequestHandler
 	{
 </diff>
      <filename>src/com/squarespace/hopper/json/demo/Fibonacci.as</filename>
    </modified>
    <modified>
      <diff>@@ -18,13 +18,14 @@
 package com.squarespace.hopper.json.mock
 {
 	import com.adobe.serialization.json.JSON;
-	import com.squarespace.hopper.json.AMQPClient;
-	import com.squarespace.hopper.json.JSONEvent;
-	import com.squarespace.hopper.json.util.Guid;
 	
 	import flash.events.EventDispatcher;
+	
+	import org.amqp.patterns.CorrelatedMessageEvent;
+	import org.amqp.patterns.RpcClient;
+	import org.amqp.util.Guid;
 
-	public class MockClient implements AMQPClient
+	public class MockClient implements RpcClient
 	{
 		
 		private var server:MockServer;
@@ -43,12 +44,10 @@ package com.squarespace.hopper.json.mock
 			var decoded:* = JSON.decode(encoded);
 			var result:* = server.process(decoded);
 			
-			//result.correlationId = guid;
-			
 			var resultEncoded = JSON.encode(result);
 			var resultDecoded = JSON.decode(resultEncoded);
 			
-			dispatcher.dispatchEvent(new JSONEvent(guid, resultDecoded));	
+			dispatcher.dispatchEvent(new CorrelatedMessageEvent(guid, resultDecoded));	
 		}
 		
 	}</diff>
      <filename>src/com/squarespace/hopper/json/mock/MockClient.as</filename>
    </modified>
    <modified>
      <diff>@@ -17,7 +17,7 @@
  **/
 package com.squarespace.hopper.json.mock
 {
-	import com.squarespace.hopper.json.RequestHandler;
+	import org.amqp.patterns.RequestHandler;
 
 	public class MockServer implements RequestHandler
 	{</diff>
      <filename>src/com/squarespace/hopper/json/mock/MockServer.as</filename>
    </modified>
    <modified>
      <diff>@@ -17,12 +17,11 @@
  **/
 package com.squarespace.hopper.json.test
 {
-	import com.squarespace.hopper.json.AMQPClient;
-	import com.squarespace.hopper.json.JSONEvent;
-	
 	import flexunit.framework.TestCase;
 	import flexunit.framework.TestSuite;
 	
+	import org.amqp.patterns.CorrelatedMessageEvent;
+	import org.amqp.patterns.RpcClient;
 	import org.pranaframework.context.support.XMLApplicationContext;
 
 	public class MockClientTest extends TestCase
@@ -44,14 +43,14 @@ package com.squarespace.hopper.json.test
 		}
 		
 		public function testClient():void {
-			var client:AMQPClient = ctx.getObject(&quot;client&quot;) as AMQPClient;			
+			var client:RpcClient = ctx.getObject(&quot;client&quot;) as RpcClient;			
 			var testObject:* = new Object();
 			testObject.first = 	&quot;foo&quot;;
 			testObject.second = &quot;bar&quot;;
 			client.send(testObject, addAsync(onResult, TIMEOUT) );			
 		}
 		
-		public function onResult(event:JSONEvent):void {
+		public function onResult(event:CorrelatedMessageEvent):void {
 			trace(&quot;finished&quot;);
 			assertEquals(&quot;foobar&quot;,event.result);
 		}</diff>
      <filename>src/com/squarespace/hopper/json/test/MockClientTest.as</filename>
    </modified>
    <modified>
      <diff>@@ -4,12 +4,14 @@
 				creationComplete=&quot;onCreationComplete()&quot; width=&quot;446&quot; height=&quot;210&quot; verticalAlign=&quot;middle&quot; horizontalAlign=&quot;center&quot;&gt;
 	&lt;mx:Script&gt;
 		&lt;![CDATA[
+			import com.squarespace.hopper.json.JSONSerializer;
+			import org.amqp.patterns.impl.RpcServer;
 			import com.squarespace.hopper.json.demo.Fibonacci;
-			import com.squarespace.hopper.json.impl.AMQPServer;
 			import com.squarespace.hopper.json.util.ServerContext;
 			import org.pranaframework.ioc.factory.xml.XMLObjectFactory;
 			
-			private var amqpServer:AMQPServer;
+			private var amqpServer:RpcServer;
+			private var json:JSONSerializer;
 			private var fib:Fibonacci;
 			private var factory:XMLObjectFactory = new XMLObjectFactory();
 			private var ctx:ServerContext = new ServerContext();</diff>
      <filename>src/server.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -14,8 +14,11 @@
     	&lt;constructor-arg ref=&quot;connectionState&quot;/&gt;
     &lt;/object&gt;
     
-    &lt;object id=&quot;server&quot; class=&quot;com.squarespace.hopper.json.impl.AMQPServer&quot;&gt;
+    &lt;object id=&quot;serializer&quot; class=&quot;com.squarespace.hopper.json.JSONSerializer&quot;/&gt;
+    
+    &lt;object id=&quot;server&quot; class=&quot;org.amqp.patterns.impl.RpcServer&quot;&gt;
     	&lt;constructor-arg ref=&quot;connection&quot;/&gt;
+    	&lt;property name=&quot;serializer&quot; ref=&quot;serializer&quot;/&gt;
     	&lt;property name=&quot;realm&quot; value=&quot;/data&quot;/&gt;
     	&lt;property name=&quot;exchange&quot; value=&quot;x&quot;/&gt;
     	&lt;property name=&quot;exchangeType&quot; value=&quot;topic&quot;/&gt;</diff>
      <filename>src/serverContext.xml</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>lib/as3amqp.swc</filename>
    </removed>
    <removed>
      <filename>src/com/squarespace/hopper/json/AMQPClient.as</filename>
    </removed>
    <removed>
      <filename>src/com/squarespace/hopper/json/JSONEvent.as</filename>
    </removed>
    <removed>
      <filename>src/com/squarespace/hopper/json/RequestHandler.as</filename>
    </removed>
    <removed>
      <filename>src/com/squarespace/hopper/json/impl/AMQPClientProxy.as</filename>
    </removed>
    <removed>
      <filename>src/com/squarespace/hopper/json/impl/AMQPDelegate.as</filename>
    </removed>
    <removed>
      <filename>src/com/squarespace/hopper/json/impl/AMQPServer.as</filename>
    </removed>
    <removed>
      <filename>src/com/squarespace/hopper/json/util/Guid.as</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>2b160ae7a4abadb0d8449761e8bfa68023daef7e</id>
    </parent>
  </parents>
  <author>
    <name>Ben Hood</name>
    <email>0x6e6562@gmail.com</email>
  </author>
  <url>http://github.com/0x6e6562/json-over-amqp/commit/d9e08ba81b8c800e1c5a39663ace2b8113db4244</url>
  <id>d9e08ba81b8c800e1c5a39663ace2b8113db4244</id>
  <committed-date>2008-07-05T12:00:35-07:00</committed-date>
  <authored-date>2008-07-05T12:00:35-07:00</authored-date>
  <message>Refactored RPC pattern into core AMQP library</message>
  <tree>26dca5ec7ffcc3aff3ffec77b017aac4e8ce6ef0</tree>
  <committer>
    <name>Ben Hood</name>
    <email>0x6e6562@gmail.com</email>
  </committer>
</commit>
