SearchEngine.indexing = function (pathToEpubs, callback) {

        if (fs.isEmptySync(pathToEpubs)) {
            return callback(new Error('Can`t index empty folder: ' + pathToEpubs));
        }
        console.log("******************************************************");
        console.log("Step 1");
        console.log("start normalize epub content");

        path.normalize(pathToEpubs);

        preparer.normalize(pathToEpubs, function (dataSet) {

            console.log("ready normalize epub content");
            console.log("******************************************************");
            console.log("Step 2");
            console.log("start indexing");
            SearchEngine.add(dataSet, function (err) {
                //console.log(dataSet);
                if (callback) {
                    if (err)
                        callback(err);
                    else
                        callback('all is indexed');
                }
            });
            //callback('all is indexed');
        });
    };
Example #2
0
    .action(function(templateName) {
        var destPath = process.cwd();
        var templates = _.filter(requireTemplates(), {type: 'app'});

        templateName = templateName || 'basic';
        var template = _.find(templates, {name: templateName});
        if (!template) {
            console.error('Error:'.red + ' no template named ' + templateName);
            console.error('Available templates:');
            console.error(getTemplatesInfo(templates));
            return;
        }

        if (!extfs.isEmptySync(destPath)) {
            console.error('Error:'.red + ' Current directory is not empty.');
            console.error('Error:'.red + ' Please go to an empty dir and run again.');
            return;
        }

        deployTemplate(template, destPath, function(err, res) {
            if (err) {
                return console.error('Error: '.red + err);
            }

            console.log(getSuccessInfo(template.name));
        });
    });
Example #3
0
  fs.readdirSync(dbPath).forEach(it => {
    const dirPath = path.resolve(dbPath, it);
    const dirStat = fs.statSync(dirPath);

    if (dirStat.isDirectory()) {
      if (fs.isEmptySync(dirPath)) {
        var now = new Date().getTime();
        var endTime = new Date(dirStat.ctime).getTime() + 3600; // in ms (3600000 = 1 hour)
        if (now > endTime) {
          rimraf(dirPath, function () {
            console.log('Cleanup: removed empty directory:  ' + dirPath);
          });
        }
      } else {
        fs.readdirSync(dirPath).forEach(it => {
          const filePath = path.resolve(dirPath, it);
          const fileStat = fs.statSync(filePath);
          var now = new Date().getTime();
          var endTime = new Date(fileStat.ctime).getTime() + 8640000000; // in ms (8640000000 = 100 days)
          if (now > endTime) {
            rimraf(filePath, function () {
              console.log('Cleanup: removed old entry (100 days):  ' + filePath);
            });
          }
        });
      }
    }
  });
Example #4
0
function deleteFile(file, oldRoot, newRoot, newExt) {
    var oldPath = path.relative(oldRoot, file);
    var newFileName = path.basename(oldPath, path.extname(oldPath)) + newExt;
    var newPath = path.resolve(newRoot, path.join(path.dirname(oldPath), newFileName));
    del.sync(newPath);
    var newDir = path.dirname(newPath);
    if (fs.isEmptySync(newDir)) del.sync(newDir);
}
  createCordova: function () {
    var path = fs.isEmptySync('./') ? './' : this.name.toLowerCase();
    var self = this;
    var done = this.async();

    this.spawnCommand('cordova', ['create', path, this.identifier, this.name]).on('exit', function (status) {
      if (status !== 0) {
        self.log('Something went wrong');
      }
      else {
        done();
      }
    });
  },
var checkProjectFolder = function (src) {

  // === Check if has an input path
  if (!src) {
    util.log(chalk.red('You need to specify a path!'));
    process.exit();
  }
  // === Check if is a file
  if (fs.statSync(src).isFile()) {
    util.log(chalk.red("You need to specifie a folder not a file"));
    process.exit();
  }

  // === Check if is an empty folder
  else if (dir.isEmptySync(src)) {
    util.log(chalk.red("You're trying to use a empty folder."));
    process.exit();
  }
};
Example #7
0
Plugins.prototype.load = function (complete) {
    var self = this;
    //Nothing to do...
    if (!fs.existsSync(pluginsDir) || extfs.isEmptySync(pluginsDir)) {
        complete(new Error("No plugins to load"));
    }
    self.loadedPlugs = [];
    this.plugins = self.observs.typesConfiguration;
    if(self.plugins.get('amtechM2mBridge').instances.count() > 1){
        complete(new Error(util.format("There are more than one amtechM2mBridge instance configure for follower %s.", self.bc.dap.userId)));
    }
    if (!self.plugins.get('amtechM2mBridge') || 
        !self.plugins.get('amtechM2mBridge').instances ) {
            complete(new Error("amtechM2mBridge has not instance defined by autodiscovering or server side for follower " + self.bc.dap.userId));
    } 
    if (!self.plugins.get('amtechM2mBridge').instances.get(self.plugins.get('amtechM2mBridge').instances.keys()[0]).config ) {
            complete(new Error(util.format("amtechM2mBridge %s has not configuration.", self.plugins.get('amtechM2mBridge').instances.keys()[0])));
    } 
    self.bridgeInstance = self.plugins.get('amtechM2mBridge').instances.get(self.plugins.get('amtechM2mBridge').instances.keys()[0]);
    
    async.each(this.plugins.values(), Plugins.prototype.pluged.bind(this),
        function (err) {
            if (err) {
                complete(err);
            } else {
                self.connectWS(function (error) {
                    if (error) {
                        complete(error);
                    } else {
                        self.loadedPlugs.push(util.format("Loaded: %d plugins", self.getInstances().length));
                        dapReconnect.plugins = self;
                        self.sendBridgeStarted();
                        complete(null, self.loadedPlugs);
                    }
                });
            }
        });
};
Example #8
0
function addPackage (pack, rest, force) {
	var filesPath = _path.normalize(rode.getCorePath() + 'bin/files/new-package/');
	var filesViewPath = _path.normalize(rode.getCorePath() + 'bin/files/views/');
	var destPath = _path.normalize(rode.getConfig().srcDir + '/' + pack);
	var viewPath = _path.normalize(rode.getConfig().views.dir + '/' + pack);

	// Check if path destPath not exists
	if (!force) {
		if (!fs.isEmptySync(destPath)) {
			throw new Error('Path not empty');
		}
	}

	var templates = {
		controller: fs.readFileSync(filesPath + 'Controller.js').toString(),
		model: fs.readFileSync(filesPath + 'Model.js').toString(),
		routes: fs.readFileSync(filesPath + 'routes.js').toString(),
		tests: {
			controller: fs.readFileSync(filesPath + 'Tests/ControllerTest.js').toString(),
			model: fs.readFileSync(filesPath + 'Tests/ModelTest.js').toString()
		}
	};
	var renderedTemplates = {
		controller: renderTemplate(pack, templates.controller),
		model: renderTemplate(pack, templates.model),
		routes: renderTemplate(pack, templates.routes, rest),
		tests: {
			controller: renderTemplate(pack, templates.tests.controller),
			model: renderTemplate(pack, templates.tests.model)
		}
	};
	if (rest) {
		templates.restController = fs.readFileSync(filesPath + 'RestController.js').toString();
		templates.tests.restController = fs.readFileSync(filesPath + 'Tests/RestControllerTest.js').toString();
		renderedTemplates.restController = renderTemplate(pack, templates.restController);
		renderedTemplates.tests.restController = renderTemplate(pack, templates.tests.restController);
	}

	// Create Controllers
	utils.mkdir(destPath + '/Controller', function () {
		utils.write(destPath + '/Controller/MainController.js', renderedTemplates.controller);
		utils.write(destPath + '/routes.js', renderedTemplates.routes);
		if (rest) {
			utils.write(destPath + '/Controller/RestController.js', renderedTemplates.restController);
		}
	});

	// Create Models
	utils.mkdir(destPath + '/Model', function () {
		utils.write(destPath + '/Model/' + pack + '.js', renderedTemplates.model);
	});

	// Create Views
	utils.writeViews(viewPath, rode.getConfig().views.engine, {
		path: '../',
		pack: pack
	});

	// Create Tests
	utils.mkdir(destPath + '/Tests/Controller', function () {
		utils.write(destPath + '/Tests/Controller/MainControllerTest.js', renderedTemplates.tests.controller);
		if (rest) {
			utils.write(destPath + '/Tests/Controller/RestControllerTest.js', renderedTemplates.tests.restController);
		}
	});
	utils.mkdir(destPath + '/Tests/Model', function () {
		utils.write(destPath + '/Tests/Model/' + pack + 'Test.js', renderedTemplates.tests.model);
	});
}