DeferredExample2

by Jose Montero

JavaScript

$.when
(
	validate()
)
.then
(	
		function(){
			savePayments();
    }
)
.done
(
	function(){
		addLineItems();
   } 
);
function validate()
{
	var deferred = $.Deferred();
	setTimeout(function(){
  	console.log("passed validation");
  	deferred.resolve();
  },5000);
  return deferred.promise();
}
function savePayments()
{
    for(var i = 0; i < 2; i++)
    {
     simulateProcess("adding Payments .....: "+i);
    }
}
function addLineItems()
{
    for(var i =0; i < 10; i++)
    {
     simulateProcess("adding Line Itemss .....: "+i);
    }
}
function simulateProcess(msg)
{
		var deferred = $.Deferred();
		setTimeout(function(){
  		console.log(msg);
      deferred.resolve();
  },2000);
  return deferred.promise();
}