Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
This is an implementation of the 0-8 version of AMQP for AS3.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
AS3-AMQP Library ========================================================================== This library provides a high level and a low level AMQP interface for AS3. Note that you cannot just compile this library using Flash Builder! You need to use the provided Apache Ant build script to generate classes first. If you're new to Ant, here's how you do this: 1. Download and install Apache Ant. (These instructions are being written using Ant version 1.7.1.) 2. Ensure that the ANT_HOME/bin directory is on your PATH. 3. Edit the build.properties file to specify the Flex SDK directory to use. 4. Run the build script by typing ant in the main directory of this project. You will see messages like this: $ ant Buildfile: build.xml properties: codegen: [mkdir] Created dir: /some_directory_name/as3-amqp/build [copy] Copying 4 files to /some_directory_name/as3-amqp/build [javac] Compiling 5 source files to /some_directory_name/as3-amqp/build lib: [java] Loading configuration file /Applications/Adobe Flash Builder Beta 2/sdks/3.4.1/frameworks/flex-config.xml [java] /some_directory_name/as3-amqp/bin/amqp.swc (291129 bytes) BUILD SUCCESSFUL Total time: 8 seconds 5. With this completed, you can use the project by either using the .swc file or by building the generated code in Flash Builder if you prefer. High Level Interfaces: ---------------------- org.amqp.patterns.PublishClient org.amqp.patterns.SubscribeClient org.amqp.patterns.RpcClient org.amqp.patterns.RpcServer TODO / Further exploration: --------------------------- - The shutdown handling is probably not inline with the protocol. (Look into the LifecycleTest to see how the connection is being closed) - Optimize the file size of overall library to decrease its 304kb weight down to something reasonable. For one, I noticed the core library depends on flexunit.swc, which weighs in at 400kb itself. Perhaps looking at removing that dependency will cut some fat, in particular the ArrayList class is used and should be substituted with something already available. |--> Update: the dependency is now removed - the build script just needs modification - Remove the dependency on ericfeminella's HashMap - Make the TLS bundling optional - Add the Flexunit Test Suite to the build.xml so that it can be run from the command line - Consider ignoring all messages that are sent from the same application to a subscribed topic (BasicProperties, userid argument might work) - Remove binding for a specific routing key when unsubscribing - Wildcard topics still require some testing Known Issues: ------------- - The code generator should produce logging code that can dump the contents of each method