var validate={};
(function(){var e=null;
var c=undefined;
ErrorValidate=error.ErrorValidate;
StringUtils=stringUtils.StringUtils;
var g=function(){};
g.prototype={notNull:function(h,i){if(h===e){this.throwError(i||"Expected a not null argument.")
}},notUndefined:function(h,i){if(h===c){this.throwError(i||"Expected a not undefined argument.")
}},isDefined:function(i,j){try{this.notNull(i);
this.notUndefined(i)
}catch(h){this.throwError(j||"Expected a defined argument.")
}},isFunction:function(h,i){if(typeof(h)!=typeof(function(){})){this.throwError(i||"Expected a function argument.")
}},isNumber:function(h,i){this.isType(h,"number",i||"Expected number argument")
},isString:function(h,i){this.isType(h,"string",i||"Expected string argument")
},isTrue:function(i,h){this.isDefined(i,h);
this.isType(i,"boolean",h);
if(!i){this.throwError(h||"Expected a true expression.")
}},isNonEmptyString:function(h,i){return StringUtils.isNotBlank(h,i)
},isNotBlankString:function(h,i){return StringUtils.isNotBlank(h,i)
},hasProperty:function(i,k,j){try{this.isDefined(i);
this.isDefined(i[k])
}catch(h){this.throwError(j||"Expected a defined property: "+k+".\n Got("+i[k]+")")
}},notEmpty:function(h,j){try{this.isDefined(h);
this.hasProperty(h,"length")
}catch(i){this.throwError(j||"Expected an array argument.")
}if(h.length==0){this.throwError(j||"Expected a not empty array.")
}},definedElements:function(h,l){try{this.isDefined(h)
}catch(k){this.throwError(l||"Expected an array argument.")
}for(var j in h){this.notNull(h[j],l||"Expected an array with all the elements defined")
}},allElementsOfType:function(h,j,m){try{this.definedElements(h)
}catch(l){this.throwError(m||"Expected an array argument with no null Elements.")
}for(var k in h){this.isType(h[k],j,m||"Expected an array with all the elements of type clazz")
}},isType:function(i,h,j){this.isDefined(i,j);
if(typeof(i)!=h){this.throwError(j||"Expected an argument of type ")
}},throwError:function(h){throw ErrorValidate.IllegalArgumentError(h)
}};
var b=function(i){var h=new Error(i);
h.name="IllegalArgumentError";
return h
};
var a=function(){};
var f=function(){};
var d=function(){};
a.prototype={};
f.prototype={};
d.prototype={};
validate.Validate=new g();
validate.IllegalArgumentError=b
})();