Browse Source

amberc.js: extract optimize() function

Manfred Kroehnert 12 years ago
parent
commit
779fdece71
1 changed files with 18 additions and 15 deletions
  1. 18 15
      bin/amberc.js

+ 18 - 15
bin/amberc.js

@@ -315,19 +315,12 @@ function compile() {
 			throw(new Error('Compilation failed of: ' + file));
 		}
 	});
-	
-	if (defaults.closure_parts) {
-		console.log('Compiling all js files using Google closure compiler.');
-		var allJsFiles = defaults.compiled.concat(defaults.libraries);
-		allJsFiles.forEach(function(file) {
-			var minifiedName = path.basename(file, '.js') + '.min.js';
-			closure_compile(file, minifiedName);
-		});
-	}
 
 	if (undefined !== defaults.program) {
 		compose_js_files();
 	}
+	
+	optimize();
 }
 
 
@@ -376,12 +369,6 @@ function compose_js_files() {
 
 	fileStream.end();
 	console.log('Done.');
-
-	if (!defaults.closure_full) {
-		return;
-	}
-	console.log('Compiling ' + defaults.program + '.js file using Google closure compiler.');
-	closure_compile(defaults.program + '.js', defaults.program + '.min.js');
 }
 
 
@@ -408,6 +395,22 @@ function node_compile(filesArray) {
 }
 
 
+function optimize() {
+	if (defaults.closure_parts) {
+		console.log('Compiling all js files using Google closure compiler.');
+		var allJsFiles = defaults.compiled.concat(defaults.libraries);
+		allJsFiles.forEach(function(file) {
+			var minifiedName = path.basename(file, '.js') + '.min.js';
+			closure_compile(file, minifiedName);
+		});
+	}
+	if (defaults.closure_full) {
+		console.log('Compiling ' + defaults.program + '.js file using Google closure compiler.');
+		closure_compile(defaults.program + '.js', defaults.program + '.min.js');
+	}
+}
+
+
 function closure_compile(sourceFile, minifiedFile) {
 	// exec is asynchronous
 	exec(