dl
Version:
DreamLab Libs
54 lines (41 loc) • 1.28 kB
JavaScript
var Class = require("core").Class;
var OcdnUrl = require('./OcdnUrl.js').OcdnUrl;
var OcdnFilesUrl = require('./OcdnFilesUrl.js').OcdnFilesUrl;
var OcdnStaticUrl = function () {
this.Extends = OcdnUrl;
this.initialize = function (key, url) {
if (arguments.length == 1) {
url = key;
key = undefined;
}
this.path = null;
this.parent(key, url, true);
this.init(url);
};
this.init = function (url) {
if (url) {
this.parent(url);
this.parse(url);
} else {
this.setPlugin('static');
}
};
this.parse = function (url) {
this.parent(url);
var parts = url.split('/');
if (parts.length >= 5) {
this.path = "";
for (var i = 4, max = parts.length; i < max; i++) {
this.path += parts[i] + '/';
}
this.path = this.path.slice(0, -1);
} else {
throw OcdnFilesUrl.Error.INCORRECT_URL;
}
};
this.toString = function () {
return this.parent() + '/' + this.path;
};
};
OcdnStaticUrl = new Class(new OcdnStaticUrl());
exports.OcdnStaticUrl = OcdnStaticUrl;