function AjaxQueue() {
	var pendingCalls = [];
	var idCounter = 0;

	this.isCallPending = function() {
		return (pendingCalls.length > 0);
	}

	this.clearPendingCall = function(id) {
		var index = null;

		for(var i=0; i<pendingCalls.length; i++) {
			if (pendingCalls[i] == id) {
				index = i;
				break;
			}
		}
		
		if (index != null) {
			pendingCalls.splice(index, 1);
		}
	}

	this.clearAllPendingCalls = function() {
		pendingCalls = [];
	}

	this.addPendingCall = function() {
		var id = ++idCounter;
		pendingCalls.push(id);
		
		return id;
	}

	this.isLastCall = function(id) {
		return (pendingCalls.length > 0 && pendingCalls[pendingCalls.length - 1] == id);
	}
}
