| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 | 
							- /**
 
-  * @method FS.Utility.binaryToBuffer
 
-  * @public
 
-  * @param {Uint8Array} data
 
-  * @returns {Buffer}
 
-  *
 
-  * Converts a Uint8Array instance to a Node Buffer instance
 
-  */
 
- FS.Utility.binaryToBuffer = function(data) {
 
-   var len = data.length;
 
-   var buffer = new Buffer(len);
 
-   for (var i = 0; i < len; i++) {
 
-     buffer[i] = data[i];
 
-   }
 
-   return buffer;
 
- };
 
- /**
 
-  * @method FS.Utility.bufferToBinary
 
-  * @public
 
-  * @param {Buffer} data
 
-  * @returns {Uint8Array}
 
-  *
 
-  * Converts a Node Buffer instance to a Uint8Array instance
 
-  */
 
- FS.Utility.bufferToBinary = function(data) {
 
-   var len = data.length;
 
-   var binary = EJSON.newBinary(len);
 
-   for (var i = 0; i < len; i++) {
 
-     binary[i] = data[i];
 
-   }
 
-   return binary;
 
- };
 
- /**
 
-  * @method FS.Utility.safeCallback
 
-  * @public
 
-  * @param {Function} callback
 
-  * @returns {Function}
 
-  *
 
-  * Makes a callback safe for Meteor code
 
-  */
 
- FS.Utility.safeCallback = function (callback) {
 
-   return Meteor.bindEnvironment(callback, function(err) { throw err; });
 
- };
 
- /**
 
-  * @method FS.Utility.safeStream
 
-  * @public
 
-  * @param {Stream} nodestream
 
-  * @returns {Stream}
 
-  *
 
-  * Adds `safeOn` and `safeOnce` methods to a NodeJS Stream
 
-  * object. These are the same as `on` and `once`, except
 
-  * that the callback is wrapped for use in Meteor.
 
-  */
 
- FS.Utility.safeStream = function(nodestream) {
 
-   if (!nodestream || typeof nodestream.on !== 'function')
 
-     throw new Error('FS.Utility.safeStream requires a NodeJS Stream');
 
-   // Create Meteor safe events
 
-   nodestream.safeOn = function(name, callback) {
 
-     return nodestream.on(name, FS.Utility.safeCallback(callback));
 
-   };
 
-   // Create Meteor safe events
 
-   nodestream.safeOnce = function(name, callback) {
 
-     return nodestream.once(name, FS.Utility.safeCallback(callback));
 
-   };
 
-   // Return the modified stream - modified anyway
 
-   return nodestream;
 
- };
 
- /**
 
-  * @method FS.Utility.eachFileFromPath
 
-  * @public
 
-  * @param {String} p - Server path
 
-  * @param {Function} f - Function to run for each file found in the path.
 
-  * @returns {undefined}
 
-  *
 
-  * Utility for iteration over files from path on server
 
-  */
 
- FS.Utility.eachFileFromPath = function(p, f) {
 
-   var fs = Npm.require('fs');
 
-   var path = Npm.require('path');
 
-   var files = fs.readdirSync(p);
 
-   files.map(function (file) {
 
-     return path.join(p, file);
 
-   }).filter(function (filePath) {
 
-     return fs.statSync(filePath).isFile() && path.basename(filePath)[0] !== '.';
 
-   }).forEach(function (filePath) {
 
-     f(filePath);
 
-   });
 
- };
 
 
  |