MCPcopy
hub / github.com/CodeboxIDE/codebox / createDir

Function createDir

client/vendors/filer.js:545–579  ·  view source on GitHub ↗
(rootDir, folders)

Source from the content-addressed store, hash-verified

543 var folderParts = path.split('/');
544
545 var createDir = function(rootDir, folders) {
546 // Throw out './' or '/' and move on. Prevents: '/foo/.//bar'.
547 if (folders[0] == '.' || folders[0] == '') {
548 folders = folders.slice(1);
549 }
550 rootDir.getDirectory(folders[0], {create: true, exclusive: exclusive},
551 function (dirEntry) {
552 if (dirEntry.isDirectory) { // TODO: check shouldn't be necessary.
553 // Recursively add the new subfolder if we have more to create and
554 // There was more than one folder to create.
555 if (folders.length && folderParts.length != 1) {
556 createDir(dirEntry, folders.slice(1));
557 } else {
558 // Return the last directory that was created.
559 if (opt_successCallback) opt_successCallback(dirEntry);
560 }
561 } else {
562 var e = new Error(path + ' is not a directory');
563 if (opt_errorHandler) {
564 opt_errorHandler(e);
565 } else {
566 throw e;
567 }
568 }
569 },
570 function(e) {
571 e.message = e.message || "'" + path + "' already exists";
572 if (opt_errorHandler) {
573 opt_errorHandler(e);
574 } else {
575 throw e;
576 }
577 }
578 );
579 };
580
581 createDir(cwd_, folderParts);
582 };

Callers 1

filer.jsFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected