azkaban-developers

Details

diff --git a/src/java/azkaban/utils/DirectoryFlowLoader.java b/src/java/azkaban/utils/DirectoryFlowLoader.java
index d376522..ff1cca2 100644
--- a/src/java/azkaban/utils/DirectoryFlowLoader.java
+++ b/src/java/azkaban/utils/DirectoryFlowLoader.java
@@ -4,6 +4,7 @@ import java.io.File;
 import java.io.FileFilter;
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -56,7 +57,7 @@ public class DirectoryFlowLoader {
 		nodeDependencies = new HashMap<String, Map<String, Edge>>();
 
 		// Load all the props files and create the Node objects
-		loadProjectFromDir(baseDirectory.getPath(), baseDirectory);
+		loadProjectFromDir(baseDirectory.getPath(), baseDirectory, null);
 		
 		// Create edges and find missing dependencies
 		resolveDependencies();
@@ -66,9 +67,9 @@ public class DirectoryFlowLoader {
 
 	}
 	
-	private void loadProjectFromDir(String base, File dir) {
+	private void loadProjectFromDir(String base, File dir, Props parent) {
 		File[] propertyFiles = dir.listFiles(new SuffixFilter(PROPERTY_SUFFIX));
-		Props parent = null;
+		Arrays.sort(propertyFiles);
 		
 		for (File file: propertyFiles) {
 			String relative = getRelativeFilePath(base, file.getPath());
@@ -85,7 +86,8 @@ public class DirectoryFlowLoader {
 			logger.info("Adding " + relative);
 			propsList.add(parent);
 		}
-
+		
+		
 		// Load all Job files. If there's a duplicate name, then we don't load
 		File[] jobFiles = dir.listFiles(new SuffixFilter(JOB_SUFFIX));
 		for (File file: jobFiles) {
@@ -128,7 +130,7 @@ public class DirectoryFlowLoader {
 		
 		File[] subDirs = dir.listFiles(DIR_FILTER);
 		for (File file: subDirs) {
-			loadProjectFromDir(base, file);
+			loadProjectFromDir(base, file, parent);
 		}
 	}