(function(window)
{
var Gitana = window.Gitana;
Gitana.TeamMap = Gitana.AbstractMap.extend(
/** @lends Gitana.TeamMap.prototype */
{
/**
* @constructs
* @augments Gitana.AbstractMap
*
* @class Map of teams
*
* @param {Gitana.Cluster} cluster Gitana cluster instance.
* @param {Object} teamable
* @param [Object] object
*/
constructor: function(cluster, teamable, object)
{
this.__teamable = (function() {
var _teamable = null;
return function(teamable) {
if (!Gitana.isUndefined(teamable)) { _teamable = teamable; }
return _teamable;
};
})();
this.__teamable(teamable);
this.objectType = function() { return "Gitana.TeamMap"; };
this.getCluster = function()
{
return cluster;
};
//////////////////////////////////////////////////////////////////////////////////////////////
//
// CALL THROUGH TO BASE CLASS (at the end)
//
//////////////////////////////////////////////////////////////////////////////////////////////
this.base(cluster.getDriver(), object);
},
/**
* @override
*/
clone: function()
{
return this.getFactory().teamMap(this.getCluster(), this.__teamable(), this);
},
/**
* @param json
*/
buildObject: function(json)
{
return this.getFactory().team(this.getCluster(), this.__teamable(), json);
}
});
})(window);