Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

AIMProviderForECF

Project Description:

Title

AIM Provider for ECF

Abstract

ECF allows messaging protocols to be plugged in as providers. ECF has supports a lot of messaging protocols, gtalk, msn, yahoo and so on. But AIM isn't currently supported. First I choose to wrap an existing Java library (JOscar), because It is quick to finish in this way. If I have enough time, I also want to implement the AIM protocol.

Detailed Description

"Client" here would refer to the contestants and students . "Server" here would refer to the person hosting the Judge .

  • First of all the communication will be totally centralized on jabber servers. The basic idea is pretty simple: The person hosting the judge will add the clients to his/her list. The code submitted by the client will be run on the judge's machine. (The interface will be definitely attractive and easy to use).
  • Stress will be laid on the Interface so that people can submit codes while chatting with the group at the same time. This would certainly increase interaction and enthusiasm.
  • Group chat can be easily accomplished by existing API of ECF. Hence not much of time will be required to accomplish this task.
  • Working on the Judge Engine will be the major part. The code retrieved will be compiled and executed first. Multiple languages will be supported.
  • To start of with: C, C++ and Java codes can be submitted. To compile C/C++ codes: GCC(for Linux) or MinGW(for Windows) will be required. Java compilation will require JVM to be installed in the server machine.
  • The server will also have an option to log all the information for every code submissions. This would enable the users to check their history of submissions and details. A rank list will be maintained in case if its a programming contest. MYSQL can be used (connected via JDBC) to accomplish this task.
  • Emails will be sent to each client automatically after each code submission. The Email would include the source code, the result, Errors if any, Time of Execution, Memory taken etc.
  • File download feature will also be added to help the clients during a programming session/match.

Experience in this Field

I, along with a passionate group of friends, have already created a totally stable online judge (from scratch) for our University. This was a web based project and we have successfully completed it by using Java server pages, Apache Tomcat 5.5 Web server/servlet container, MySQL database server. Though it is used to host only local competitions at the moment, in a short period of time it'll be hosted on the web. Current supported languages are C and C++ (using GCC) on a linux server. Snapshots of the webpages are attached below:

alt snap1
alt snap2

Back to the top