Re: [GSOC] Message Queue component for Nuvem
Hi! I submitted my proposal [1] to GSOC. So please look at it and provide some feedback. thanks, [1] - http://www.google-melange.com/gsoc/proposal/review/google/gsoc2012/dulini88/1# On Tue, Apr 3, 2012 at 7:44 AM, Jean-Sebastien Delfino jsdelf...@apache.org wrote: On Sun, Apr 1, 2012 at 10:52 AM, Dulini Atapattu dulin...@gmail.com wrote: Hi! I'm exciting to work on this issue [1] for GSoC. Would anyone like to mentor this project ? [1] - https://issues.apache.org/jira/browse/NUVEM-14 -- Dulini I Atapattu Look around... http://www.flickr.com/photos/dia1988 Hi! I'd be happy to mentor you for this project. I'm a member of the Apache Nuvem and Apache Tuscany PPMCs and I have already mentored GSoC projects in the last few years. - Jean-Sebastien -- Dulini I Atapattu Look around... http://www.flickr.com/photos/dia1988
Re: GSOC 2012 - Message Queue component for Nuvem
Hi Jean and all, I have submitted a patch to JIRA issues for Message Queue Component for Nuvem and I would like to receive any comments regarding that. Also I would like to know whether it is alright to submit my mid-term evaluation to melange now. Thanks On Tue, Jul 10, 2012 at 1:24 PM, Dulini Atapattu dulin...@gmail.com wrote: Hi Jean and all, I have implemented the nuvem-api for message queue component including the interface and other related classes. The api interface is as follows: public QueueMessageHandle sendMessage(QueueMessage queueMessage) throws MessageQueueServiceException; (Sends the queueMessage and returns a handle to the sent message) public ListQueueMessage receiveMessage(int numMessages) throws MessageQueueServiceException; (Receives the number of messages specified by numMessages from the queue service and returns a list of queue messages) public boolean deleteMessage(QueueMessage queueMessage) throws MessageQueueServiceException; (Deletes the message specified by the queueMessage and returns true if deletion is successful) I also have implemented this interface for Amazon platform, tested with test cases using the account I have created in Amazon Free Usage Tier [14], and also documented the code. I also have submitted the patch for this work at Nuvem JIRA issues [15]. I have also implemented the interface for GAE (using Pull Queue) and currently I am performing the tests for the implementation. I would like to receive any comments about the work I have done so far. Thanks [14] - http://aws.amazon.com/free/ [15] - https://issues.apache.org/jira/browse/NUVEM-14 On Sat, Jul 7, 2012 at 9:41 AM, Sagara Gunathunga sagara.gunathu...@gmail.com wrote: On Sat, May 19, 2012 at 12:36 AM, Dulini Atapattu dulin...@gmail.com wrote: Hi Sagara, Thank you very much for the comments you have mentioned and they are a lot helpful to get done the required tasks appropriately and relevantly. I will focus on the activities, queue services and solutions to issues you have mentioned and will provide the community the API design according to the requirements you have mentioned. I added approximate completion dates to my project proposal and they are as follows: - 24th April - 20th May Read about the Apache Qpid, Amazon SQS, Azure Message Queue REST API and3rd party queue frameworks which based on App Engine menarche API (24th April - 30th April). Define the Nuvem message queue API. Discuss with Nuvem community about the design of the API and scope of the project (1st May - 20th May). - 21st May - 12th July Implement above Message Queue API using GAE (21st May to 11th June). Implement above Message Queue API using Amazon (12th June to 03rd July). Preparing for the mid-term evaluation of the project (4th July to 12th July). Hi Dulini, We are reaching to mid term evaluation very soon. I would like to see codes related to above tasks either on SVN or JIRA, those codes are important to measure project progress for mid term evaluation. I believe Jean will help out to bring your codes to SVN. Thanks ! - 13th July - 12th August Implement Queue API using Apache QPID (13th July - 27th July). Implement simple application to demonstrate the Nuvem Message Queue API (28th July - 6th August). Completing the documentation and test cases (7th August - 12th August). - August 16th - August 23rd Prepare the deliverables for final submission. Thank you, Best regards On Fri, May 18, 2012 at 2:19 PM, Sagara Gunathunga sagara.gunathu...@gmail.com wrote: Please find my in-line answers. On Fri, May 18, 2012 at 12:46 PM, Dulini Atapattu dulin...@gmail.com wrote: Hi Jean and all, With related to the project: Message Queue component for Nuvem, so far I read about AmasonSQS, Azure Queue Service Rest API, MemcacheQ, Sparrow and Depcached. According to details and APIs related to these queue services/ frameworks, all the queue services provide send message and receive message functionality with related to a specified queue, and only some queue services/ frameworks provide other related services such as creating queues, deleting messages etc. Sound good but you don't need to support all of above services. You can pick around 4 widely used services here because for all those implementations you have to perform following activities. 1.) Implement X queue service for Nuvem Queue API. 2.) Provide full set of unit tests for X implantation. 3.) Provide documentation how to configure X queue service with Nuvem API and may be samples as well. Personally I believe following 3 services need to be included within the scope of your project. 1.) Amazon SQS 2.) GAE (MemcacheQ) 3.) Nuvem specific implementation ( ActiveMQ ?) Before you start you may have to find solutions
Re: GSOC 2012 - Message Queue component for Nuvem
Thank you very much for the comments Sagara and I will submit the evaluation now. Thanks On Thu, Jul 12, 2012 at 9:09 AM, Sagara Gunathunga sagara.gunathu...@gmail.com wrote: Jean will perform your mid-term evaluation as your mentor. You don't need to wait to submit your evaluation please submit it. I think we are very close to mid-term deadline. Thanks ! On Thu, Jul 12, 2012 at 9:00 AM, Dulini Atapattu dulin...@gmail.com wrote: Hi Jean and all, I have submitted a patch to JIRA issues for Message Queue Component for Nuvem and I would like to receive any comments regarding that. Also I would like to know whether it is alright to submit my mid-term evaluation to melange now. Thanks On Tue, Jul 10, 2012 at 1:24 PM, Dulini Atapattu dulin...@gmail.com wrote: Hi Jean and all, I have implemented the nuvem-api for message queue component including the interface and other related classes. The api interface is as follows: public QueueMessageHandle sendMessage(QueueMessage queueMessage) throws MessageQueueServiceException; (Sends the queueMessage and returns a handle to the sent message) public ListQueueMessage receiveMessage(int numMessages) throws MessageQueueServiceException; (Receives the number of messages specified by numMessages from the queue service and returns a list of queue messages) public boolean deleteMessage(QueueMessage queueMessage) throws MessageQueueServiceException; (Deletes the message specified by the queueMessage and returns true if deletion is successful) I also have implemented this interface for Amazon platform, tested with test cases using the account I have created in Amazon Free Usage Tier [14], and also documented the code. I also have submitted the patch for this work at Nuvem JIRA issues [15]. I have also implemented the interface for GAE (using Pull Queue) and currently I am performing the tests for the implementation. I would like to receive any comments about the work I have done so far. Thanks [14] - http://aws.amazon.com/free/ [15] - https://issues.apache.org/jira/browse/NUVEM-14 On Sat, Jul 7, 2012 at 9:41 AM, Sagara Gunathunga sagara.gunathu...@gmail.com wrote: On Sat, May 19, 2012 at 12:36 AM, Dulini Atapattu dulin...@gmail.com wrote: Hi Sagara, Thank you very much for the comments you have mentioned and they are a lot helpful to get done the required tasks appropriately and relevantly. I will focus on the activities, queue services and solutions to issues you have mentioned and will provide the community the API design according to the requirements you have mentioned. I added approximate completion dates to my project proposal and they are as follows: - 24th April - 20th May Read about the Apache Qpid, Amazon SQS, Azure Message Queue REST API and3rd party queue frameworks which based on App Engine menarche API (24th April - 30th April). Define the Nuvem message queue API. Discuss with Nuvem community about the design of the API and scope of the project (1st May - 20th May). - 21st May - 12th July Implement above Message Queue API using GAE (21st May to 11th June). Implement above Message Queue API using Amazon (12th June to 03rd July). Preparing for the mid-term evaluation of the project (4th July to 12th July). Hi Dulini, We are reaching to mid term evaluation very soon. I would like to see codes related to above tasks either on SVN or JIRA, those codes are important to measure project progress for mid term evaluation. I believe Jean will help out to bring your codes to SVN. Thanks ! - 13th July - 12th August Implement Queue API using Apache QPID (13th July - 27th July). Implement simple application to demonstrate the Nuvem Message Queue API (28th July - 6th August). Completing the documentation and test cases (7th August - 12th August). - August 16th - August 23rd Prepare the deliverables for final submission. Thank you, Best regards On Fri, May 18, 2012 at 2:19 PM, Sagara Gunathunga sagara.gunathu...@gmail.com wrote: Please find my in-line answers. On Fri, May 18, 2012 at 12:46 PM, Dulini Atapattu dulin...@gmail.com wrote: Hi Jean and all, With related to the project: Message Queue component for Nuvem, so far I read about AmasonSQS, Azure Queue Service Rest API, MemcacheQ, Sparrow and Depcached. According to details and APIs related to these queue services/ frameworks, all the queue services provide send message and receive message functionality with related to a specified queue, and only some queue services/ frameworks provide other related services such as creating queues, deleting messages etc. Sound good but you don't need to support all
Re: GSOC 2012 - Message Queue component for Nuvem
Hi Jean and all, The design for the api of message queue component for nuvem is as follows (The MessageQueueService interface): *public QueueMessageHandle sendMessage(QueueMessage queueMessage) throws MessageQueueServiceException;* (Sends the queueMessage and returns a handle to the sent message) *public ListQueueMessage receiveMessage(int numMessages) throws MessageQueueServiceException;* (Receives the number of messages specified by numMessages from the queue service and returns a list of queue messages) *public boolean deleteMessage(QueueMessage queueMessage) throws MessageQueueServiceException;* (Deletes the message specified by the queueMessage and returns true if deletion is successful) The *QueueMessage* class represents a message sent by the user to a queue, and has attribtues: id and messageBody, that stores the id of a message and message body text of the message. User may set the messageBody in a QueueMessage object and pass it to the sendMessage method, then the method return a QueueMessageHandle object, with the id returned to the message and message body. When receiving a messages, a user has to pass the number of messages he/ she needs to receive and pass it to the receiveMessage method. The receiveMessage method will then return a list of QueueMessage objects, each representing a message in the queue. The user may delete a message by passing a required QueueMessage object received by receiveMessage method, to the deleteMessage method and the method will return true, if deletion is successful. This interface is implemented to Amazon and GAE platforms using AmazonSQS and TaskQueue (PullQueue) respectively. I used the AWS SDK for Java related to AmazonSQS [16] to implement for Amazon platform and TaskQueue REST API [17] to to implement for GAE platform. The Task Queue REST API allows consumption of messages from task queue, for the consumers that may be hosted even outside GAE. The user may call the required constructor from the required implementation and the rest of the user code may remain unchanged. *The Configuration and running of test cases is as follows:* - Add the AWS access key and secret key of the user to the nuvem-amazon/source/test/resources/test.properties file. - Remove the following line in nuvem-amazon/pom.xml file: exclude**/AmazonMessageQueueServiceImplTestCase.java/exclude - Create a queue named MyQueue in the Amazon cluster. - Then run the project using mvn clean install *Implementation to GAE:* I am now on the testing stage of GAE implementation and I have few problems related to configuring to GAE Taskqueue as I am using the REST API in the implementation. I would like to receive any comments regarding the work. Thanks [16] - http://docs.amazonwebservices.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/sqs/package-summary.html [17] - https://developers.google.com/appengine/docs/python/taskqueue/rest On Thu, Jul 12, 2012 at 9:06 PM, Jean-Sebastien Delfino jsdelf...@apache.org wrote: Hi Dulini, I've started to review your patch, which looks good so far but I'll send a few comments later this evening. In the meantime it'd be good if you could post an email to describe your design, and also give us a few pointers on how to test this. I know you have some test cases but I'm not sure how I could run them. What would I need to configure on an EC2 instance for example? Also, do you have another patch for the GAE implementation that we could review as well? Thanks! - Jean-Sebastien On Wed, Jul 11, 2012 at 8:30 PM, Dulini Atapattu dulin...@gmail.com wrote: Hi Jean and all, I have submitted a patch to JIRA issues for Message Queue Component for Nuvem and I would like to receive any comments regarding that. Also I would like to know whether it is alright to submit my mid-term evaluation to melange now. Thanks On Tue, Jul 10, 2012 at 1:24 PM, Dulini Atapattu dulin...@gmail.com wrote: Hi Jean and all, I have implemented the nuvem-api for message queue component including the interface and other related classes. The api interface is as follows: public QueueMessageHandle sendMessage(QueueMessage queueMessage) throws MessageQueueServiceException; (Sends the queueMessage and returns a handle to the sent message) public ListQueueMessage receiveMessage(int numMessages) throws MessageQueueServiceException; (Receives the number of messages specified by numMessages from the queue service and returns a list of queue messages) public boolean deleteMessage(QueueMessage queueMessage) throws MessageQueueServiceException; (Deletes the message specified by the queueMessage and returns true if deletion is successful) I also have implemented this interface for Amazon platform, tested with test cases using the account I have created in Amazon Free Usage Tier [14], and also documented the code. I also have submitted the patch
Re: [jira] [Commented] (NUVEM-14) Message Queue component for Nuvem
Hi Jean, Thanks a lot for your reply and I am awaiting for comments from you regarding the patch. Thanks Best Regards On Thu, Aug 23, 2012 at 11:51 AM, Jean-Sebastien Delfino (JIRA) j...@apache.org wrote: [ https://issues.apache.org/jira/browse/NUVEM-14?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13440078#comment-13440078] Jean-Sebastien Delfino commented on NUVEM-14: - This is progressing. I've started to review the patches and will post some comments and commit part of this code over the weekend. Thanks! Message Queue component for Nuvem -- Key: NUVEM-14 URL: https://issues.apache.org/jira/browse/NUVEM-14 Project: Nuvem Issue Type: Improvement Reporter: Sagara Gunathunga Labels: gsoc2012 Attachments: NUVEM-14.nuvem-api, Nuvem-14-[nuvem-gae-taskqueue].patch, Nuvem-14-[nuvem-standalone-activemq].patch, Nuvem-14-[redesign][nuvem-amazon-sqs].patch, Nuvem-14-[redesign][nuvem-api].patch Message queues are necessary integral of enterprise application. In cloud platform number of vendors provide their own queues components. The aim of this project to provide a standard vendor independent API and implementations for Nuvem. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira -- Dulini I Atapattu Look around... http://www.flickr.com/photos/dia1988
[jira] [Updated] (NUVEM-19) Add missing documentation comment for nuvem-api
[ https://issues.apache.org/jira/browse/NUVEM-19?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dulini Atapattu updated NUVEM-19: - Attachment: File.NUVEM-19.patch Submit the patch Add missing documentation comment for nuvem-api --- Key: NUVEM-19 URL: https://issues.apache.org/jira/browse/NUVEM-19 Project: Nuvem Issue Type: Improvement Reporter: Dulini Atapattu Attachments: File.NUVEM-19.patch Add missing documentation comment for nuvem-api. nuvem-api/src/main/java/org/apache/nuvem/cloud/data/NotFoundException.java nuvem-api/src/main/java/org/apache/nuvem/cloud/dataService/DataServiceUtil.java nuvem-api/src/main/java/org/apache/nuvem/cloud/user/UserService.java nuvem-api/src/main/java/org/apache/nuvem/cloud/user/UserContext.java nuvem-api/src/main/java/org/apache/nuvem/cloud/user/User.java -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (NUVEM-14) Message Queue component for Nuvem
[ https://issues.apache.org/jira/browse/NUVEM-14?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dulini Atapattu updated NUVEM-14: - Attachment: Nuvem-14-[nuvem-standalone-activemq].patch Nuvem-14-[nuvem-gae-taskqueue].patch Nuvem-14-[redesign][nuvem-amazon-sqs].patch Nuvem-14-[redesign][nuvem-api].patch I have attached the patches for Message Queue Component for Nuvem which includes, the Nuvem API and Nuvem Amazon SQS re-design that according to Jean's comment and also include the implementation of the interface to GAE Task Queue , ActiveMQ and the test cases. Please review patches. Message Queue component for Nuvem -- Key: NUVEM-14 URL: https://issues.apache.org/jira/browse/NUVEM-14 Project: Nuvem Issue Type: Improvement Reporter: Sagara Gunathunga Labels: gsoc2012 Attachments: NUVEM-14.nuvem-api, Nuvem-14-[nuvem-gae-taskqueue].patch, Nuvem-14-[nuvem-standalone-activemq].patch, Nuvem-14-[redesign][nuvem-amazon-sqs].patch, Nuvem-14-[redesign][nuvem-api].patch Message queues are necessary integral of enterprise application. In cloud platform number of vendors provide their own queues components. The aim of this project to provide a standard vendor independent API and implementations for Nuvem. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira