Google Summer of Code 2006 proposal
Add MMS transport support for Apache Mirae and Apache Axis2
This project will add MMS transport protocol support for “MIRAE”  and will also create a MMS transports for Apache Axis2 .
With the availability of the Multimedia Messaging Service (MMS) protocol now we are able send more data than what is allowed by Short Message Service (SMS) protocol. MMS enables us to send large messages, which can be successfully utilized to transfer an XML document back and forth. This XML document can be SOAP, hence allowing standard web services invocation using MMS.
In simple terms, to provide complete MMS transport support we need support for MMS at the point where the service is hosted and in the mobile phne where the service in invoked. Therefore I'd plan to develop two main sets of components during this project.
- MMS transport support for Apache Mirae
- When a J2ME client invokes a web service using Mirae APIs, the MMS transport will construct an MMS message with the XML representing the SOAP message. This MMS will be sent to the specified host, which will be yet another phone number which hosts the service.
- MMS transport support for Apache Axis2
- The Apache Axis2 will be the host of web services, where it receives the requests from the client and processes the request and then pass on the response back to the client. So for Mirae to talk via MMS to web service there must be a web service container that supports MMS. Hence we need an MMS transport for Apache Axix2 to provide that functionality.When the Axis2 MMS transport receives an MMS message the XML representing the SOAP message will be extracted and handed over to Axis2 to be processed.
I came up with schedule, which breaks down the project into four phases, to set my self intermediate targets to ensure the successful completion of the project. During each of work items I hope to interact with the Apache MIRAE and Apache Axis2 communities regularly to obtain feedback on my work to ensure that my deliverable meet the expectations of the users and the developers.
Duration : 2 weeks
Here I'll first go through the transport architectures of Mirae and Axix2 so I can get a good understanding of how these technologies works. Then I'll come up with a design for the two main components which is the MMS transport implementations for Mirae and Axis2.
Duration : 6 weeks
First is the Mirae MMS transport implementation and unit tests, after that I'll go into making the server side MMS transport implementation on Axis2 and the unit testing.
Integration of MMS transport to Apache Mirae and Apache Axis2
Duration : 2 weeks
During this phase I'll be intergrating the MMS transport to Mirae and the also the MMS transport integration to Axis2.
Duration : 2 weeks
Documentation will include the following:
- Complete javadoc documentation.
- A user guide/tutorial
- A developer guide which explains the architecture and the implementation
I am a student from the Software Engineering department of Informatics Institute of Technology in Sri Lanka.I will be completing my level 1 exams on 26'th May 2006.
I have been working with Java and C/C++ for about 5 years now, and during the last few years I have been working as a freelance programmer where I was involved in Java network programming, win32 API programming in C and also some web development with PHP and MySQL databases. Recently my obsession has been participating in TopCoder competitions which is a great way to enjoy programming. I am also a Linux enthusiast and I use the Gentoo Linux distribution.
Why am I the one for this project ?
I always enjoy taking up new challenges, learning new things and I am confident that I can deliver this project succesfully using my experience. I have a proven ability to learn new technologies fast and adapt them appropriately in my work.
My first year exams will be completed on the 26'th May 2006 and I will be able to completely devote my 3 month vacation to this project before the beginning of the next semester in the end of August 2006.
My objective is to successfully complete this project and make a valuable contributions to both Apache Axis2 and Apache MIRAE project and the opensource community. I will also use this project as my first contribution to Apache web services project and look forward to maintain my work and actively participate more nd more in these projects in the future.