Active Name Version Description
Android An Open Handset Alliance Project
Axis2 1.3
CakePHP 1.2 Rapid Development Php Framework
CSS
Grails 1.x Groovy version of Ruby on Rails
Groovy 1.6 Object-oriented language alternative for Java platform
Hibernate v3 High performance object/relational persistence and query service
HTML 4.x
Java 6 6
Java EE 5 5
Javascript Javascript functions, classes, event handlers
jQuery The Write Less, Do More, JavaScript Library
JSON Java JSON in Java from json.org
MySQL
Perl 5.10.0
PHP 5.x
Prototype A widely used JavaScript Framework
Python 2.5
Python C 2.5
Python Lib 2.5
Rails 2.3.5 A framework for developing web applications according to MVC
Ruby 1.8.7 A dynamic, interpreted, open source programming language
SiteMesh
Spring Framework 2.5 Full-stack Java/JEE application framework
Struts 2 2.0.11.2
Trails Core 1.2.1 Domain driven development framework in the spirit of Ruby on Rails
Trails Hibernate 1.2.1
Trails Security 1.2.1
Trails Test 1.2.1
Xerces2 J 2.9.1
Quick search is faster, or start browsing by clicking on API title
    Ajax.Ajax.Responders - Prototype JavaScript framework

    Ajax.Responders

    Ajax.Responders.register(responder)
    Ajax.Responders.unregister(responder)

    A repository of global listeners notified about every step of Prototype-based AJAX requests.

    Sometimes, you need to provide generic behaviors over all AJAX operations happening in the page (through Ajax.Request, Ajax.Updater or Ajax.PeriodicalUpdater).

    For instance, you might want to automatically show an indicator when an AJAX request is ongoing, and hide it when none are. You may well want to factor out exception handling as well, logging those somewhere on the page in a custom fashion. The possibilities are plenty.

    To achieve this, Prototype provides Ajax.Responders, which lets you register (and if you wish to, unregister later) responders, which are objects with properly-named methods. These names are the regular callback names, and your responders can implement any set of interest.

    For instance, Prototype automatically registers a responder that maintains a nifty variable: Ajax.activeRequestCount. This contains, at any time, the amount of currently active AJAX requests (those created by Prototype, anyway), by monitoring their onCreate and onComplete events. The code for this is fairly simple:

    
    Ajax.Responders.register({
      onCreate: function() {
        Ajax.activeRequestCount++;
      },
      onComplete: function() {
        Ajax.activeRequestCount--;
      }
    });
    

    All callbacks in the life-cycle are available; actually, onCreate is only available to responders, as it wouldn’t make a lot of sense to individual requests: you do know when your code creates them, don’t you? It is triggered even before the XHR connection is opened, which makes it happen right before onUninitialized.

    Unregister: remember the reference…

    As always, unregistering something requires you to use the very same object you used at registration. So if you plan on unregistering a responder, be sure to define it first, then pass the reference to register, and finally, when the time comes, to unregister.