Browse Source

[oozie] Path changes in FS nodes in Oozie app can't be changed

Needed to trigger parenot observable: valueHasChanged.
Abraham Elmahrek 12 years ago
parent
commit
36275c1
1 changed files with 42 additions and 6 deletions
  1. 42 6
      apps/oozie/static/js/workflow.models.js

+ 42 - 6
apps/oozie/static/js/workflow.models.js

@@ -170,18 +170,42 @@ var MAPPING_OPTIONS = {
   },
   },
   deletes: {
   deletes: {
     create: function(options) {
     create: function(options) {
-      return map_params(options, function() {});
+      var parent = options.parent;
+      var subscribe = function(mapping) {
+        mapping.name.subscribe(function(value) {
+          parent.deletes.valueHasMutated();
+        });
+      };
+      return map_params(options, subscribe);
     },
     },
     update: function(options) {
     update: function(options) {
-      return map_params(options, function() {});
+      var parent = options.parent;
+      var subscribe = function(mapping) {
+        mapping.name.subscribe(function(value) {
+          parent.deletes.valueHasMutated();
+        });
+      };
+      return map_params(options, subscribe);
     },
     },
   },
   },
   mkdirs: {
   mkdirs: {
     create: function(options) {
     create: function(options) {
-      return map_params(options, function() {});
+      var parent = options.parent;
+      var subscribe = function(mapping) {
+        mapping.name.subscribe(function(value) {
+          parent.mkdirs.valueHasMutated();
+        });
+      };
+      return map_params(options, subscribe);
     },
     },
     update: function(options) {
     update: function(options) {
-      return map_params(options, function() {});
+      var parent = options.parent;
+      var subscribe = function(mapping) {
+        mapping.name.subscribe(function(value) {
+          parent.mkdirs.valueHasMutated();
+        });
+      };
+      return map_params(options, subscribe);
     },
     },
   },
   },
   moves: {
   moves: {
@@ -248,10 +272,22 @@ var MAPPING_OPTIONS = {
    },
    },
    touchzs: {
    touchzs: {
      create: function(options) {
      create: function(options) {
-       return map_params(options, function() {});
+       var parent = options.parent;
+        var subscribe = function(mapping) {
+          mapping.name.subscribe(function(value) {
+            parent.touchzs.valueHasMutated();
+          });
+        };
+        return map_params(options, subscribe);
      },
      },
      update: function(options) {
      update: function(options) {
-       return map_params(options, function() {});
+       var parent = options.parent;
+        var subscribe = function(mapping) {
+          mapping.name.subscribe(function(value) {
+            parent.touchzs.valueHasMutated();
+          });
+        };
+        return map_params(options, subscribe);
      }
      }
    }
    }
 };
 };