blob: 5063501deb484990be4cb004e4623df7d28273fc [file] [log] [blame]
orion.Export = function(header, exportingBundle) {
if (header === null)
throw "header cannot be null";
if (exportingBundle === null)
throw "exportingBundle cannot be null";
this._name = null;
this._version = orion.Version.EMPTY_VERSION;
this._attributes = {};
this._mandatory = [];
this._exportingBundle = exportingBundle;
this._parseExport(header);
};
orion.Export.prototype = {
_parseExport : function(header) {
if (typeof header == "string") {
this._name = header;
return;
}
this._name = header.name;
if (header.version)
this._version = orion.Version.parseVersion(header.version);
if (header.mandatory)
this._parseMandatory(header.mandatory);
var attributeName;
for (attributeName in header) {
if (header.hasOwnProperty(attributeName))
this._attributes[attributeName] = header[attributeName];
}
},
_parseMandatory : function(mandatory) {
for ( var i = 0; i < mandatory.length; i++) {
this._mandatory.push(mandatory[i]);
}
},
getName : function() {
return this._name;
},
getVersion : function() {
return this._version;
},
getBundleId : function() {
return this._exportingBundle.getBundleId();
},
getBundleName : function() {
return this._exportingBundle.getName();
},
getBundleVersion : function() {
return this._exportingBundle.getVersion();
},
getAttributes : function() {
return this._attributes;
},
getExportingBundle : function() {
return this._exportingBundle;
},
getMandatory : function() {
return this._mandatory;
}
};