/**
* Class to implement UUID generation methods.
*
* @class
*/
function UUID(){}
/**
* Generates a new random UUID v4 as string.
*
* @static
* @return {string} UUID generated as string.
*/
UUID.generate = (function ()
{
var lut = [];
for(var i = 0; i < 256; i++)
{
lut[i] = (i < 16 ? "0" : "") + (i).toString(16);
}
return function generateUUID()
{
var d0 = Math.random() * 0XFFFFFFFF | 0;
var d1 = Math.random() * 0XFFFFFFFF | 0;
var d2 = Math.random() * 0XFFFFFFFF | 0;
var d3 = Math.random() * 0XFFFFFFFF | 0;
var uuid = lut[d0 & 0xff] + lut[d0 >> 8 & 0xff] + lut[d0 >> 16 & 0xff] + lut[d0 >> 24 & 0xff] + "-" +
lut[d1 & 0xff] + lut[d1 >> 8 & 0xff] + "-" + lut[d1 >> 16 & 0x0f | 0x40] + lut[d1 >> 24 & 0xff] + "-" +
lut[d2 & 0x3f | 0x80] + lut[d2 >> 8 & 0xff] + "-" + lut[d2 >> 16 & 0xff] + lut[d2 >> 24 & 0xff] +
lut[d3 & 0xff] + lut[d3 >> 8 & 0xff] + lut[d3 >> 16 & 0xff] + lut[d3 >> 24 & 0xff];
return uuid.toUpperCase();
};
})();
export {UUID};