tez-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From s...@apache.org
Subject [11/31] tez git commit: TEZ-3227. Tez UI: Replace UI1 with UI2 (sree)
Date Tue, 26 Apr 2016 10:18:42 GMT
http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/em-swimlane-process-line.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/em-swimlane-process-line.js b/tez-ui2/src/main/webapp/app/components/em-swimlane-process-line.js
deleted file mode 100644
index 2d6e2b6..0000000
--- a/tez-ui2/src/main/webapp/app/components/em-swimlane-process-line.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-export default Ember.Component.extend({
-
-  process: null,
-  processor: null,
-
-  didInsertElement: Ember.observer("process.startEvent.time",
-      "process.endEvent.time", "processor.timeWindow", function () {
-    var processor = this.get("processor"),
-        startPos = processor.timeToPositionPercent(this.get("process.startEvent.time")),
-        endPos = processor.timeToPositionPercent(this.get("process.endEvent.time"));
-
-    Ember.run.later(this, function () {
-      this.$(".process-line").css({
-        left: startPos + "%",
-        right: (100 - endPos) + "%",
-        "background-color": this.get("process").getColor()
-      });
-    });
-  }),
-
-  sendMouseAction: function (name, mouseEvent) {
-    this.sendAction(name, "process-line", this.get("process"), {
-      mouseEvent: mouseEvent,
-    });
-  },
-
-  mouseEnter: function (mouseEvent) {
-    this.sendMouseAction("showTooltip", mouseEvent);
-  },
-
-  mouseLeave: function (mouseEvent) {
-    this.sendMouseAction("hideTooltip", mouseEvent);
-  },
-
-  mouseUp: function (mouseEvent) {
-    this.sendMouseAction("click", mouseEvent);
-  }
-
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/em-swimlane-process-name.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/em-swimlane-process-name.js b/tez-ui2/src/main/webapp/app/components/em-swimlane-process-name.js
deleted file mode 100644
index eea897d..0000000
--- a/tez-ui2/src/main/webapp/app/components/em-swimlane-process-name.js
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-export default Ember.Component.extend({
-
-  process: null,
-
-  classNames: ["em-swimlane-process-name"],
-
-  sendMouseAction: function (name, mouseEvent) {
-    this.sendAction(name, "process-name", this.get("process"), {
-      mouseEvent: mouseEvent,
-    });
-  },
-
-  mouseEnter: function (mouseEvent) {
-    this.sendMouseAction("showTooltip", mouseEvent);
-  },
-
-  mouseLeave: function (mouseEvent) {
-    this.sendMouseAction("hideTooltip", mouseEvent);
-  },
-
-  mouseUp: function (mouseEvent) {
-    this.sendMouseAction("click", mouseEvent);
-  }
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/em-swimlane-process-visual.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/em-swimlane-process-visual.js b/tez-ui2/src/main/webapp/app/components/em-swimlane-process-visual.js
deleted file mode 100644
index aa555cd..0000000
--- a/tez-ui2/src/main/webapp/app/components/em-swimlane-process-visual.js
+++ /dev/null
@@ -1,66 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-const BUBBLE_DIA = 10; // Same as that in css
-
-export default Ember.Component.extend({
-
-  process: null,
-  processor: null,
-  focusedProcess: null,
-
-  classNames: ["em-swimlane-process-visual"],
-
-  actions: {
-    showTooltip: function(type, process, options) {
-
-      if(type === "event") {
-        let clientX = options.mouseEvent.clientX,
-            events = process.get("events"),
-            eventsUnderMouse = [];
-
-        this.$(".em-swimlane-event").each(function (index) {
-          var offsetLeft = Ember.$(this).offset().left;
-
-          if(clientX >= offsetLeft - BUBBLE_DIA && clientX <= offsetLeft + BUBBLE_DIA) {
-            eventsUnderMouse.push(events[index]);
-          }
-        });
-
-        if(events.length) {
-          eventsUnderMouse.sort(function (eventA, eventB) {
-            return eventA.time - eventB.time;
-          });
-          options.events = eventsUnderMouse;
-        }
-      }
-
-      this.sendAction("showTooltip", type, process, options);
-    },
-
-    hideTooltip: function(type, process, options) {
-      this.sendAction("hideTooltip", type, process, options);
-    },
-    click: function (type, process, options) {
-      this.sendAction("click", type, process, options);
-    }
-  }
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/em-swimlane-ruler.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/em-swimlane-ruler.js b/tez-ui2/src/main/webapp/app/components/em-swimlane-ruler.js
deleted file mode 100644
index 4d1b933..0000000
--- a/tez-ui2/src/main/webapp/app/components/em-swimlane-ruler.js
+++ /dev/null
@@ -1,98 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-import moment from 'moment';
-
-const DEFAULT_MARK_COUNT = 10;
-
-export default Ember.Component.extend({
-
-  zoom: null,
-  processor: null,
-  scroll: 0,
-
-  classNames: ["em-swimlane-ruler"],
-
-  markDef: Ember.computed("processor.timeWindow", "zoom", function () {
-    var markCount = parseInt(DEFAULT_MARK_COUNT * this.get("zoom") / 100),
-        timeWindow = this.get("processor.timeWindow"),
-        duration = moment.duration(parseInt(timeWindow / markCount)),
-
-        markUnit = "Milliseconds",
-        markBaseValue = 0,
-        markWindow = 0,
-        styleWidth = 0;
-
-    if(markBaseValue = duration.years()) {
-      markUnit = "Years";
-    }
-    else if(markBaseValue = duration.months()) {
-      markUnit = "Months";
-    }
-    else if(markBaseValue = duration.days()) {
-      markUnit = "Days";
-    }
-    else if(markBaseValue = duration.hours()) {
-      markUnit = "Hours";
-    }
-    else if(markBaseValue = duration.minutes()) {
-      markUnit = "Minutes";
-    }
-    else if(markBaseValue = duration.seconds()) {
-      markUnit = "Seconds";
-    }
-    else {
-      markBaseValue = duration.milliseconds();
-    }
-
-    if(markBaseValue > 10) {
-      markBaseValue = Math.floor(markBaseValue / 10) * 10;
-    }
-
-    markWindow = moment.duration(markBaseValue, markUnit.toLowerCase()).asMilliseconds();
-    styleWidth = markWindow / timeWindow * 100;
-
-    return {
-      unit: markUnit,
-      baseValue: markBaseValue,
-      style: Ember.String.htmlSafe(`width: ${styleWidth}%;`),
-      count: parseInt(100 / styleWidth * 1.1)
-    };
-  }),
-
-  unitTextStyle: Ember.computed("scroll", function () {
-    var scroll = this.get("scroll");
-    return Ember.String.htmlSafe(`left: ${scroll}px;`);
-  }),
-
-  marks: Ember.computed("processor.timeWindow", "markDef", function () {
-    var def = this.get("markDef"),
-        baseValue = def.baseValue,
-        marks = [];
-
-    for(var i=0, count = def.count; i < count; i++) {
-      marks.push({
-        duration: parseInt(baseValue * i)
-      });
-    }
-
-    return marks;
-  })
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/em-swimlane-vertex-name.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/em-swimlane-vertex-name.js b/tez-ui2/src/main/webapp/app/components/em-swimlane-vertex-name.js
deleted file mode 100644
index 36a7bbc..0000000
--- a/tez-ui2/src/main/webapp/app/components/em-swimlane-vertex-name.js
+++ /dev/null
@@ -1,71 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-const MAX_TEXT_LENGTH = 10;
-
-export default Ember.Component.extend({
-
-  process: null,
-
-  classNames: ["em-swimlane-vertex-name"],
-
-  sendMouseAction: function (name, mouseEvent) {
-    this.sendAction(name, "process-name", this.get("process"), {
-      mouseEvent: mouseEvent,
-    });
-  },
-
-  progressText: Ember.computed("process.vertex.finalStatus", "process.vertex.progress", function () {
-    if(this.get("process.vertex.finalStatus") === "RUNNING") {
-      let progress = this.get("process.vertex.progress");
-      if(!isNaN(progress)) {
-        let percent = parseInt(progress * 100);
-        return `${percent}%`;
-      }
-    }
-  }),
-
-  useEllipsis: Ember.computed("process.name", "progressText", function () {
-    var name = this.get("process.name") || "",
-        progressLength = this.get("progressText.length");
-    progressLength = progressLength ? progressLength + 1 : 0;
-    return  name.length + progressLength - 1 > MAX_TEXT_LENGTH;
-  }),
-
-  processName: Ember.computed("process.name", "progressText", function () {
-    var name = this.get("process.name") || "",
-        progressLength = this.get("progressText.length");
-    progressLength = progressLength ? progressLength + 1 : 0;
-    return name.substr(Math.max(name.length - MAX_TEXT_LENGTH - progressLength, 0));
-  }),
-
-  mouseEnter: function (mouseEvent) {
-    this.sendMouseAction("showTooltip", mouseEvent);
-  },
-
-  mouseLeave: function (mouseEvent) {
-    this.sendMouseAction("hideTooltip", mouseEvent);
-  },
-
-  mouseUp: function (mouseEvent) {
-    this.sendMouseAction("click", mouseEvent);
-  }
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/em-swimlane.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/em-swimlane.js b/tez-ui2/src/main/webapp/app/components/em-swimlane.js
deleted file mode 100644
index 0c8b589..0000000
--- a/tez-ui2/src/main/webapp/app/components/em-swimlane.js
+++ /dev/null
@@ -1,171 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import Processor from '../utils/processor';
-import Process from '../utils/process';
-
-export default Ember.Component.extend({
-
-  classNames: ["em-swimlane"],
-
-  processes: [],
-  processor: Processor.create(),
-
-  nameComponent: "em-swimlane-process-name",
-  visualComponent: "em-swimlane-process-visual",
-
-  tooltipContents: null,
-  focusedProcess: null,
-  scroll: 0,
-
-  consolidate: false,
-
-  zoom: 100,
-
-  startTime: Ember.computed("processes.@each.startEvent", function () {
-    var startTime = this.get("processes.0.startEvent.time");
-    this.get("processes").forEach(function (process) {
-      var time = process.get("startEvent.time");
-      if(startTime > time){
-        startTime = time;
-      }
-    });
-    return startTime;
-  }),
-  endTime: Ember.computed("processes.@each.endEvent", function () {
-    var endTime = this.get("processes.0.endEvent.time");
-    this.get("processes").forEach(function (process) {
-      var time = process.get("endEvent.time");
-      if(endTime < time){
-        endTime = time;
-      }
-    });
-    return endTime;
-  }),
-
-  processorSetup: Ember.on("init", Ember.observer("startTime", "endTime", "processes.length", function () {
-    this.get("processor").setProperties({
-      startTime: this.get("startTime"),
-      endTime: this.get("endTime"),
-      processCount: this.get("processes.length")
-    });
-  })),
-
-  didInsertElement: function () {
-    this.onZoom();
-    this.listenScroll();
-  },
-
-  onZoom: Ember.observer("zoom", function () {
-    var zoom = this.get("zoom");
-    this.$(".zoom-panel").css("width", `${zoom}%`);
-  }),
-
-  listenScroll: function () {
-    var that = this;
-    this.$(".process-visuals").scroll(function () {
-      that.set("scroll", Ember.$(this).scrollLeft());
-    });
-  },
-
-  willDestroy: function () {
-    // Release listeners
-  },
-
-  normalizedProcesses: Ember.computed("processes.@each.blockers", function () {
-    var processes = this.get("processes"),
-        normalizedProcesses,
-        idHash = {},
-        containsBlockers = false,
-        processor = this.get("processor");
-
-    // Validate and reset blocking
-    processes.forEach(function (process) {
-      if(!(process instanceof Process)) {
-        Ember.Logger.error("em-swimlane : Unknown type, must be of type Process");
-      }
-
-      if(process.get("blockers.length")) {
-        containsBlockers = true;
-      }
-      process.set("blocking", Ember.A());
-    });
-
-    if(containsBlockers) {
-      normalizedProcesses = [];
-
-      // Recreate blocking list
-      processes.forEach(function (process) {
-        var blockers = process.get("blockers");
-        if(blockers) {
-          blockers.forEach(function (blocker) {
-            blocker.get("blocking").push(process);
-          });
-        }
-      });
-
-      // Give an array of the processes in blocking order
-      processes.forEach(function (process) {
-        if(process.get("blocking.length") === 0) { // The root processes
-          normalizedProcesses.push(process);
-          normalizedProcesses.push.apply(normalizedProcesses, process.getAllBlockers());
-        }
-      });
-      normalizedProcesses.reverse();
-      normalizedProcesses = normalizedProcesses.filter(function (process, index) {
-        // Filters out the recurring processes in the list (after graph traversal), we just
-        // need the top processes
-        var id = process.get("_id");
-        if(idHash[id] === undefined) {
-          idHash[id] = index;
-        }
-        return idHash[id] === index;
-      });
-    }
-    else {
-      normalizedProcesses = processes;
-    }
-
-    // Set process colors & index
-    normalizedProcesses.forEach(function (process, index) {
-      process.setProperties({
-        color: processor.createProcessColor(index),
-        index: index
-      });
-    });
-
-    return Ember.A(normalizedProcesses);
-  }),
-
-  actions: {
-    showTooltip: function (type, process, options) {
-      this.set("tooltipContents", process.getTooltipContents(type, options));
-      this.set("focusedProcess", process);
-    },
-    hideTooltip: function () {
-      this.set("tooltipContents", null);
-      this.set("focusedProcess", null);
-    },
-    click: function (type, process, options) {
-      this.sendAction("click", type, process, options);
-    }
-  }
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/em-table-status-cell.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/em-table-status-cell.js b/tez-ui2/src/main/webapp/app/components/em-table-status-cell.js
deleted file mode 100644
index 7751719..0000000
--- a/tez-ui2/src/main/webapp/app/components/em-table-status-cell.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-export default Ember.Component.extend({
-
-  content: null,
-
-  classNames: ["em-table-status-cell"],
-
-  statusName: Ember.computed("content", function () {
-    var status = this.get("content");
-
-    if(status) {
-      status = status.toString().dasherize();
-      status = "status-" + status;
-    }
-    return status;
-  }),
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/em-tooltip.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/em-tooltip.js b/tez-ui2/src/main/webapp/app/components/em-tooltip.js
deleted file mode 100644
index 33e30cb..0000000
--- a/tez-ui2/src/main/webapp/app/components/em-tooltip.js
+++ /dev/null
@@ -1,159 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-const TIP_PADDING = 15, // As in em-tooltip.css
-      FADE_TIME = 150;
-
-export default Ember.Component.extend({
-
-  title: null,
-  description: null,
-  properties: null,
-  contents: null,
-
-  classNames: ["em-tooltip"],
-  classNameBindings: ["arrowPos"],
-
-  x: 0,
-  y: 0,
-
-  _contents: null,
-  show: false,
-  arrowPos: null,
-
-  window: null,
-  tip: null,
-  bubbles: null,
-
-  _contentObserver: Ember.on("init", Ember.observer("title", "description", "properties", "contents", function () {
-    var contents,
-        tip = this.get("tip");
-
-    if(this.get("title") || this.get("description") || this.get("properties")){
-      contents = [{
-        title: this.get("title"),
-        description: this.get("description"),
-        properties: this.get("properties"),
-      }];
-    }
-    else if(Array.isArray(this.get("contents"))){
-      contents = this.get("contents");
-    }
-
-    this.set("show", false);
-    if(contents) {
-      if(tip) {
-        tip.hide();
-      }
-      this.set("_contents", contents);
-
-      Ember.run.later(this, function () {
-        this.set("bubbles", this.$(".bubble"));
-        this.set("show", true);
-        this.renderTip();
-      });
-    }
-    else if(tip){
-      tip.stop(true).fadeOut(FADE_TIME);
-    }
-  })),
-
-  didInsertElement: function () {
-    this.setProperties({
-      window: Ember.$(window),
-      tip: this.$(),
-    });
-    Ember.$(document).on("mousemove", this, this.onMouseMove);
-  },
-
-  willDestroyElement: function () {
-    Ember.$(document).off("mousemove", this.onMouseMove);
-  },
-
-  onMouseMove: function (event) {
-    event.data.setProperties({
-      x: event.clientX,
-      y: event.clientY
-    });
-
-    if(Ember.get(event, "data.tip")) {
-      event.data.renderTip();
-    }
-  },
-
-  getBubbleOffset: function (x, bubbleElement, winWidth) {
-    var bubbleWidth = Math.max(bubbleElement.width(), 0),
-        bubbleOffset = bubbleWidth >> 1;
-
-    if(x - bubbleOffset - TIP_PADDING < 0) {
-      bubbleOffset = x - TIP_PADDING;
-    }
-    else if(x + TIP_PADDING + bubbleOffset > winWidth) {
-      bubbleOffset = x - (winWidth - bubbleWidth) + TIP_PADDING;
-    }
-
-    return -bubbleOffset;
-  },
-
-  renderTip: function () {
-    if(this.get("show")) {
-      let x = this.get("x"),
-          y = this.get("y"),
-
-          winHeight = this.get("window").height(),
-          winWidth = this.get("window").width(),
-
-          showAbove = y < (winHeight >> 1),
-
-          that = this,
-          tip = this.get("tip");
-
-      if(x > TIP_PADDING && x < winWidth - TIP_PADDING) {
-        if(!showAbove) {
-          y -= tip.height();
-          this.set("arrowPos", "below");
-        }
-        else {
-          this.set("arrowPos", "above");
-        }
-      }
-      else {
-        this.set("arrowPos", null);
-      }
-
-      tip.css({
-        left: `${x}px`,
-        top: `${y}px`,
-      });
-
-      tip.fadeIn({
-        duration: FADE_TIME,
-        start: function () {
-          that.get("bubbles").each(function () {
-            var bubble = Ember.$(this),
-                bubbleOffset = that.getBubbleOffset(x, bubble, winWidth);
-            bubble.css("left", `${bubbleOffset}px`);
-          });
-        }
-      });
-    }
-  }
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/error-bar.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/error-bar.js b/tez-ui2/src/main/webapp/app/components/error-bar.js
deleted file mode 100644
index 1086010..0000000
--- a/tez-ui2/src/main/webapp/app/components/error-bar.js
+++ /dev/null
@@ -1,109 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-const DISPLAY_TIME = 30 * 1000;
-
-export default Ember.Component.extend({
-
-  error: null,
-
-  visible: false,
-  detailsAvailable: false,
-
-  classNames: ['error-bar'],
-  classNameBindings: ['visible', 'detailsAvailable'],
-
-  code: null,
-  message: null,
-  details: null,
-  stack: null,
-
-  showDetails: false,
-
-  displayTimerId: 0,
-
-  _errorObserver: Ember.observer("error", function () {
-    var error = this.get("error"),
-
-        code = Ember.get(error, "errors.0.status"),
-        title = Ember.get(error, "errors.0.title"),
-        message = error.message || "Error",
-        details = Ember.get(error, "errors.0.detail") || "",
-        stack = error.stack,
-        lineEndIndex = Math.min(message.indexOf('\n'), message.indexOf('<br'));
-
-    if(code === "0") {
-      code = "";
-    }
-
-    if(title) {
-      message += ". " + title;
-    }
-
-    if(lineEndIndex > 0) {
-      if(details) {
-        details = "\n" + details;
-      }
-      details = message.substr(lineEndIndex) + details;
-      message = message.substr(0, lineEndIndex);
-    }
-
-    if(details) {
-      details += "\n";
-    }
-
-    if(error) {
-      this.setProperties({
-        code: code,
-        message: message,
-        details: details,
-        stack: stack,
-
-        detailsAvailable: !!(details || stack),
-        visible: true
-      });
-
-      this.clearTimer();
-      this.set("displayTimerId", setTimeout(this.close.bind(this), DISPLAY_TIME));
-    }
-    else {
-      this.close();
-    }
-  }),
-
-  clearTimer: function () {
-    clearTimeout(this.get("displayTimerId"));
-  },
-  close: function () {
-    this.set("visible", false);
-    this.clearTimer();
-  },
-
-  actions: {
-    toggleDetailsDisplay: function () {
-      this.toggleProperty("showDetails");
-      this.clearTimer();
-    },
-    close: function () {
-      this.close();
-    }
-  }
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/stats-link.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/stats-link.js b/tez-ui2/src/main/webapp/app/components/stats-link.js
deleted file mode 100644
index 0fb56df..0000000
--- a/tez-ui2/src/main/webapp/app/components/stats-link.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-export default Ember.Component.extend({
-  value: null,
-  routeName: null,
-  statsType: null,
-
-  searchText: Ember.computed.oneWay("statsType"),
-  _statsType: Ember.computed("statsType", function () {
-    var type = this.get("statsType");
-    if(type) {
-      return Ember.String.capitalize(type.toLowerCase());
-    }
-  })
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/tab-n-refresh.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/tab-n-refresh.js b/tez-ui2/src/main/webapp/app/components/tab-n-refresh.js
deleted file mode 100644
index 6ac6454..0000000
--- a/tez-ui2/src/main/webapp/app/components/tab-n-refresh.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-export default Ember.Component.extend({
-  init: function () {
-    this._super();
-    this.setApplication();
-  },
-
-  autoRefreshEnabled: false,
-  autoRefreshVisible: true,
-
-  setApplication: function () {
-    var application = this.get("targetObject.container").lookup('controller:application');
-    this.set("application", application);
-  },
-
-  autoRefreshObserver: Ember.observer("autoRefreshEnabled", function () {
-    this.get('targetObject').send('autoRefreshChanged', this.get("autoRefreshEnabled"));
-  }),
-
-  normalizedTabs: Ember.computed("tabs", "application.currentPath", function () {
-    var tabs = this.get("tabs") || [],
-        activeRouteName = this.get("application.currentPath");
-
-    return tabs.map(function (tab) {
-      return {
-        text: tab.text,
-        routeName: tab.routeName,
-        active: tab.routeName === activeRouteName
-      };
-    });
-  }),
-
-  actions: {
-    refresh: function () {
-      this.get('targetObject').send('reload');
-    }
-  }
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/table-controls.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/table-controls.js b/tez-ui2/src/main/webapp/app/components/table-controls.js
deleted file mode 100644
index 9923711..0000000
--- a/tez-ui2/src/main/webapp/app/components/table-controls.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-export default Ember.Component.extend({
-  classNames: ['table-controls'],
-
-  actions: {
-    cogClicked: function () {
-      this.get('targetObject.targetObject').send('openColumnSelector');
-    }
-  }
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/components/zip-download-modal.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/components/zip-download-modal.js b/tez-ui2/src/main/webapp/app/components/zip-download-modal.js
deleted file mode 100644
index c55b34e..0000000
--- a/tez-ui2/src/main/webapp/app/components/zip-download-modal.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-export default Ember.Component.extend({
-  classNames: ['zip-download-modal'],
-  content: null,
-
-  _onSuccess: Ember.observer("content.downloader.succeeded", function () {
-    if(this.get("content.downloader.succeeded")) {
-      Ember.run.later(this, "close");
-    }
-  }),
-
-  close: function () {
-    Ember.$(".simple-modal").modal("hide");
-  },
-
-  actions: {
-    cancel: function () {
-      var downloader = this.get("content.downloader");
-      if(downloader) {
-        downloader.cancel();
-      }
-    }
-  }
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/abstract.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/abstract.js b/tez-ui2/src/main/webapp/app/controllers/abstract.js
deleted file mode 100644
index 863a63f..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/abstract.js
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import NameMixin from '../mixins/name';
-
-export default Ember.Controller.extend(NameMixin, {
-  // Must be set by inheriting classes
-  breadcrumbs: null,
-
-  // Must be set from abstract route
-  loadTime: null,
-  isLoading: false,
-
-  init: function () {
-    this._super();
-    Ember.run.later(this, "setBreadcrumbs");
-  },
-
-  loaded: Ember.computed("model", "isLoading", function () {
-    return this.get("model") && !this.get("isLoading");
-  }),
-
-  crumbObserver: Ember.observer("breadcrumbs", function () {
-    Ember.run.later(this, "setBreadcrumbs");
-  }),
-
-  setBreadcrumbs: function () {
-    var crumbs = {},
-        name = this.get("name");
-    crumbs[name] = this.get("breadcrumbs");
-    this.send("setBreadcrumbs", crumbs);
-  }
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/app.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/app.js b/tez-ui2/src/main/webapp/app/controllers/app.js
deleted file mode 100644
index f379e80..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/app.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import ParentController from './parent';
-
-export default ParentController.extend({
-  breadcrumbs: Ember.computed("model.appID", "model.app.name", function () {
-    var name = this.get("model.app.name") || this.get("model.appID");
-
-    return [{
-      text: `Application [ ${name} ]`,
-      routeName: "app.index",
-      model: this.get("model.entityID")
-    }];
-  }),
-
-  tabs: [{
-    text: "Application Details",
-    routeName: "app.index"
-  }, {
-    text: "DAGs",
-    routeName: "app.dags"
-  }, {
-    text: "Configurations",
-    routeName: "app.configs"
-  }]
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/app/configs.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/app/configs.js b/tez-ui2/src/main/webapp/app/controllers/app/configs.js
deleted file mode 100644
index 838abc1..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/app/configs.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/*global more*/
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import TableController from '../table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-
-var MoreObject = more.Object;
-
-export default TableController.extend({
-  searchText: "tez",
-
-  breadcrumbs: [{
-    text: "Configurations",
-    routeName: "app.configs",
-  }],
-
-  columns: ColumnDefinition.make([{
-    id: 'configName',
-    headerTitle: 'Configuration Name',
-    contentPath: 'configName',
-  }, {
-    id: 'configValue',
-    headerTitle: 'Configuration Value',
-    contentPath: 'configValue',
-  }]),
-
-  configs: Ember.computed("model.configs", function () {
-    var configs = this.get("model.configs"),
-        configRows = [];
-
-    if(configs) {
-      MoreObject.forEach(configs, function (key, value) {
-        configRows.push(Ember.Object.create({
-          configName: key,
-          configValue: value
-        }));
-      });
-    }
-
-    return Ember.A(configRows);
-  })
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/app/dags.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/app/dags.js b/tez-ui2/src/main/webapp/app/controllers/app/dags.js
deleted file mode 100644
index e0c5e68..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/app/dags.js
+++ /dev/null
@@ -1,98 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import MultiTableController from '../multi-table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-
-export default MultiTableController.extend({
-  breadcrumbs: [{
-    text: "DAGs",
-    routeName: "app.dags",
-  }],
-
-  columns: ColumnDefinition.make([{
-    id: 'name',
-    headerTitle: 'Dag Name',
-    contentPath: 'name',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "dag",
-        model: row.get("entityID"),
-        text: row.get("name")
-      };
-    }
-  },{
-    id: 'entityID',
-    headerTitle: 'Id',
-    contentPath: 'entityID'
-  },{
-    id: 'submitter',
-    headerTitle: 'Submitter',
-    contentPath: 'submitter'
-  },{
-    id: 'status',
-    headerTitle: 'Status',
-    contentPath: 'status',
-    cellComponentName: 'em-table-status-cell',
-    observePath: true
-  },{
-    id: 'progress',
-    headerTitle: 'Progress',
-    contentPath: 'progress',
-    cellComponentName: 'em-table-progress-cell',
-    observePath: true
-  },{
-    id: 'startTime',
-    headerTitle: 'Start Time',
-    contentPath: 'startTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'endTime',
-    headerTitle: 'End Time',
-    contentPath: 'endTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'duration',
-    headerTitle: 'Duration',
-    contentPath: 'duration',
-    cellDefinition: {
-      type: 'duration'
-    }
-  },{
-    id: 'queue',
-    headerTitle: 'Queue',
-    contentPath: 'queue'
-  },{
-    id: 'callerID',
-    headerTitle: 'Context ID',
-    contentPath: 'callerID'
-  },{
-    id: 'logs',
-    headerTitle: 'Logs',
-    contentPath: 'containerLogs',
-    cellComponentName: "em-table-linked-cell",
-    cellDefinition: {
-      target: "_blank"
-    }
-  }]),
-
-  getCounterColumns: function () {
-    return this._super().concat(this.get('env.app.tables.defaultColumns.dagCounters'));
-  }
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/app/index.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/app/index.js b/tez-ui2/src/main/webapp/app/controllers/app/index.js
deleted file mode 100644
index 7f7bc78..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/app/index.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-import PageController from '../page';
-
-export default PageController.extend({
-
-  trackingURL: Ember.computed("model.appID", function () {
-    return [
-      this.get("hosts.rm"),
-      this.get("env.app.namespaces.web.rm"),
-      "app",
-      this.get("model.appID")
-    ].join("/");
-  })
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/application.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/application.js b/tez-ui2/src/main/webapp/app/controllers/application.js
deleted file mode 100644
index 4911a16..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/application.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-const BREADCRUMB_PREFIX = [{
-  text: "All DAGs",
-  routeName: 'application'
-}];
-
-export default Ember.Controller.extend({
-  breadcrumbs: null,
-  appError: null,
-
-  prefixedBreadcrumbs: Ember.computed("breadcrumbs", function () {
-    var prefix = BREADCRUMB_PREFIX,
-    breadcrumbs = this.get('breadcrumbs');
-
-    if(Array.isArray(breadcrumbs)) {
-      prefix = prefix.concat(breadcrumbs);
-    }
-
-    return prefix;
-  })
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/attempt.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/attempt.js b/tez-ui2/src/main/webapp/app/controllers/attempt.js
deleted file mode 100644
index b10fc7f..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/attempt.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import ParentController from './parent';
-
-export default ParentController.extend({
-  breadcrumbs: Ember.computed("model.dag", function () {
-    var dagName = this.get("model.dag.name"),
-        vertexName = this.get("model.vertexName"),
-        taskIndex = this.get("model.taskIndex"),
-        attemptNo = this.get("model.index");
-
-    return [{
-      text: `DAG [ ${dagName} ]`,
-      routeName: "dag.index",
-      model: this.get("model.dagID")
-    },{
-      text: `Vertex [ ${vertexName} ]`,
-      routeName: "vertex.index",
-      model: this.get("model.vertexID")
-    },{
-      text: `Task [ ${taskIndex} ]`,
-      routeName: "task.index",
-      model: this.get("model.taskID")
-    },{
-      text: `Attempt [ ${attemptNo} ]`,
-      routeName: "attempt.index",
-      model: this.get("model.entityID")
-    }];
-  }),
-
-  tabs: [{
-    text: "Attempt Details",
-    routeName: "attempt.index"
-  },{
-    text: "Attempt Counters",
-    routeName: "attempt.counters"
-  }]
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/attempt/counters.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/attempt/counters.js b/tez-ui2/src/main/webapp/app/controllers/attempt/counters.js
deleted file mode 100644
index 1a93c80..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/attempt/counters.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import CountersTableController from '../counters-table';
-
-export default CountersTableController.extend({
-  breadcrumbs: [{
-    text: "Attempt Counters",
-    routeName: "attempt.counters",
-  }],
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/attempt/index.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/attempt/index.js b/tez-ui2/src/main/webapp/app/controllers/attempt/index.js
deleted file mode 100644
index 9745328..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/attempt/index.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import PageController from '../page';
-
-export default PageController.extend({
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/counters-table.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/counters-table.js b/tez-ui2/src/main/webapp/app/controllers/counters-table.js
deleted file mode 100644
index 42361b4..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/counters-table.js
+++ /dev/null
@@ -1,74 +0,0 @@
-/*global more*/
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import TableController from './table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-
-var MoreObject = more.Object;
-
-export default TableController.extend({
-  counters: Ember.A(),
-  countersCount: 0, // Because Ember.Array doesn't handle length well
-
-  columns: ColumnDefinition.make([{
-    id: 'groupName',
-    headerTitle: 'Group Name',
-    contentPath: 'groupName',
-  }, {
-    id: 'counterName',
-    headerTitle: 'Counter Name',
-    contentPath: 'counterName',
-  }, {
-    id: 'counterValue',
-    headerTitle: 'Counter Value',
-    contentPath: 'counterValue',
-    observePath: true
-  }]),
-
-  _countersObserver: Ember.observer("model.counterGroupsHash", function () {
-    var counterGroupsHash = this.get("model.counterGroupsHash"),
-        counters = this.get("counters"),
-        counterIndex = 0;
-
-    if(counterGroupsHash) {
-      MoreObject.forEach(counterGroupsHash, function (groupName, countersHash) {
-        if(countersHash) {
-          MoreObject.forEach(countersHash, function (counterName, counterValue) {
-            let counterRow = counters.get(counterIndex);
-            if(!counterRow) {
-              counterRow = Ember.Object.create();
-              counters.push(counterRow);
-            }
-
-            counterRow.setProperties({
-              groupName: groupName,
-              counterName: counterName,
-              counterValue: counterValue
-            });
-            counterIndex++;
-          });
-        }
-      });
-    }
-
-    this.set("countersCount", counterIndex);
-  })
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag.js b/tez-ui2/src/main/webapp/app/controllers/dag.js
deleted file mode 100644
index 46200b8..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import ParentController from './parent';
-
-export default ParentController.extend({
-  breadcrumbs: Ember.computed("model", function () {
-    var name = this.get("model.name");
-
-    return [{
-      text: `DAG [ ${name} ]`,
-      routeName: "dag.index.index",
-      model: this.get("model.entityID")
-    }];
-  }),
-
-  tabs: [{
-    text: "DAG Details",
-    routeName: "dag.index.index"
-  }, {
-    text: "DAG Counters",
-    routeName: "dag.counters"
-  }, {
-    text: "Graphical View",
-    routeName: "dag.graphical"
-  }, {
-    text: "All Vertices",
-    routeName: "dag.vertices"
-  }, {
-    text: "All Tasks",
-    routeName: "dag.tasks"
-  }, {
-    text: "All Task Attempts",
-    routeName: "dag.attempts"
-  }, {
-    text: "Vertex Swimlane",
-    routeName: "dag.swimlane"
-  }]
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag/attempts.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag/attempts.js b/tez-ui2/src/main/webapp/app/controllers/dag/attempts.js
deleted file mode 100644
index 9f9ba15..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag/attempts.js
+++ /dev/null
@@ -1,120 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import MultiTableController from '../multi-table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-
-export default MultiTableController.extend({
-  breadcrumbs: [{
-    text: "All Task Attempts",
-    routeName: "dag.attempts",
-  }],
-
-  columns: ColumnDefinition.make([{
-    id: 'index',
-    headerTitle: 'Attempt No',
-    contentPath: 'index',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "attempt",
-        model: row.get("entityID"),
-        text: row.get("index")
-      };
-    }
-  },{
-    id: 'taskIndex',
-    headerTitle: 'Task Index',
-    contentPath: 'taskIndex',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "task",
-        model: row.get("taskID"),
-        text: row.get("taskIndex")
-      };
-    }
-  },{
-    id: 'vertexName',
-    headerTitle: 'Vertex Index',
-    contentPath: 'vertexName',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "vertex",
-        model: row.get("vertexID"),
-        text: row.get("vertexName")
-      };
-    }
-  },{
-    id: 'status',
-    headerTitle: 'Status',
-    contentPath: 'status',
-    cellComponentName: 'em-table-status-cell',
-    observePath: true
-  },{
-    id: 'progress',
-    headerTitle: 'Progress',
-    contentPath: 'progress',
-    cellComponentName: 'em-table-progress-cell',
-    observePath: true
-  },{
-    id: 'startTime',
-    headerTitle: 'Start Time',
-    contentPath: 'startTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'endTime',
-    headerTitle: 'End Time',
-    contentPath: 'endTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'duration',
-    headerTitle: 'Duration',
-    contentPath: 'duration',
-    cellDefinition: {
-      type: 'duration'
-    }
-  },{
-    id: 'containerID',
-    headerTitle: 'Container',
-    contentPath: 'containerID'
-  },{
-    id: 'nodeID',
-    headerTitle: 'Node',
-    contentPath: 'nodeID'
-  }, {
-    id: 'log',
-    headerTitle: 'Log',
-    contentPath: 'logURL',
-    cellComponentName: 'em-table-linked-cell',
-    cellDefinition: {
-      target: "_blank"
-    },
-    getCellContent: function (row) {
-      return [{
-        href: row.get("logURL"),
-        text: "View"
-      }, {
-        href: row.get("logURL"),
-        text: "Download",
-        download: true
-      }];
-    }
-  }])
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag/counters.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag/counters.js b/tez-ui2/src/main/webapp/app/controllers/dag/counters.js
deleted file mode 100644
index c54fd7e..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag/counters.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import CountersTableController from '../counters-table';
-
-export default CountersTableController.extend({
-  breadcrumbs: [{
-    text: "DAG Counters",
-    routeName: "dag.counters",
-  }],
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag/graphical.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag/graphical.js b/tez-ui2/src/main/webapp/app/controllers/dag/graphical.js
deleted file mode 100644
index 535f32b..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag/graphical.js
+++ /dev/null
@@ -1,174 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import MultiTableController from '../multi-table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-
-export default MultiTableController.extend({
-
-  columnSelectorTitle: 'Customize vertex tooltip',
-
-  breadcrumbs: [{
-    text: "Graphical View",
-    routeName: "dag.graphical",
-  }],
-
-  columns: ColumnDefinition.make([{
-    id: 'name',
-    headerTitle: 'Vertex Name',
-    contentPath: 'name',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "vertex",
-        model: row.get("entityID"),
-        text: row.get("name")
-      };
-    }
-  },{
-    id: 'entityID',
-    headerTitle: 'Vertex Id',
-    contentPath: 'entityID'
-  },{
-    id: 'status',
-    headerTitle: 'Status',
-    contentPath: 'finalStatus',
-    cellComponentName: 'em-table-status-cell',
-    observePath: true
-  },{
-    id: 'progress',
-    headerTitle: 'Progress',
-    contentPath: 'progress',
-    cellComponentName: 'em-table-progress-cell',
-    observePath: true
-  },{
-    id: 'startTime',
-    headerTitle: 'Start Time',
-    contentPath: 'startTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'endTime',
-    headerTitle: 'End Time',
-    contentPath: 'endTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'duration',
-    headerTitle: 'Duration',
-    contentPath: 'duration',
-    cellDefinition: {
-      type: 'duration'
-    }
-  },{
-    id: 'firstTaskStartTime',
-    headerTitle: 'First Task Start Time',
-    contentPath: 'firstTaskStartTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'totalTasks',
-    headerTitle: 'Tasks',
-    contentPath: 'totalTasks',
-  },{
-    id: 'succeededTasks',
-    headerTitle: 'Succeeded Tasks',
-    contentPath: 'succeededTasks',
-    observePath: true
-  },{
-    id: 'runningTasks',
-    headerTitle: 'Running Tasks',
-    contentPath: 'runningTasks',
-    observePath: true
-  },{
-    id: 'pendingTasks',
-    headerTitle: 'Pending Tasks',
-    contentPath: 'pendingTasks',
-    observePath: true
-  },{
-    id: 'processorClassName',
-    headerTitle: 'Processor Class',
-    contentPath: 'processorClassName',
-  }]),
-
-  redirect: function (details) {
-    switch(details.type) {
-      case 'vertex':
-        this.transitionToRoute('vertex.index', details.d.get('data.entityID'));
-      break;
-      case 'task':
-        this.transitionToRoute('vertex.tasks', details.d.get('data.entityID'));
-      break;
-      case 'io':
-      break;
-      case 'input':
-      break;
-      case 'output':
-      break;
-    }
-  },
-
-  actions: {
-    entityClicked: function (details) {
-
-      /**
-       * In IE 11 under Windows 7, mouse events are not delivered to the page
-       * anymore at all after a SVG use element that was under the mouse is
-       * removed from the DOM in the event listener in response to a mouse click.
-       * See https://connect.microsoft.com/IE/feedback/details/796745
-       *
-       * This condition and related actions must be removed once the bug is fixed
-       * in all supported IE versions
-       */
-      if(this.get("env.ENV.isIE")) {
-        var pageType = details.type === "io" ? "additionals" : details.type,
-            message = `You will be redirected to ${pageType} page`;
-
-        alert(message);
-      }
-      this.redirect(details);
-    }
-  },
-
-  viewData: Ember.computed("model", function () {
-    var model = this.get("model"),
-        dag, vertices, entities;
-
-    if(!model) {
-      return {};
-    }
-
-    dag = this.get('model.firstObject.dag');
-    vertices = this.get('model.firstObject.dag.vertices') || [];
-    entities = {};
-
-    model.forEach(function (vertexData) {
-      entities[vertexData.get('name')] = vertexData;
-    });
-
-    vertices.forEach(function (vertex) {
-      vertex.data = entities[vertex.vertexName];
-    });
-
-    return {
-      vertices: vertices,
-      edges: dag.get('edges'),
-      vertexGroups: dag.get('vertexGroups')
-    };
-  })
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag/index.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag/index.js b/tez-ui2/src/main/webapp/app/controllers/dag/index.js
deleted file mode 100644
index 9745328..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag/index.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import PageController from '../page';
-
-export default PageController.extend({
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag/index/index.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag/index/index.js b/tez-ui2/src/main/webapp/app/controllers/dag/index/index.js
deleted file mode 100644
index 2937a2b..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag/index/index.js
+++ /dev/null
@@ -1,129 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import MultiTableController from '../../multi-table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-
-export default MultiTableController.extend({
-  columns: ColumnDefinition.make([{
-    id: 'name',
-    headerTitle: 'Vertex Name',
-    contentPath: 'name',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "vertex",
-        model: row.get("entityID"),
-        text: row.get("name")
-      };
-    }
-  },{
-    id: 'status',
-    headerTitle: 'Status',
-    contentPath: 'status',
-    cellComponentName: 'em-table-status-cell',
-    observePath: true
-  },{
-    id: 'progress',
-    headerTitle: 'Progress',
-    contentPath: 'progress',
-    cellComponentName: 'em-table-progress-cell',
-    observePath: true
-  },{
-    id: 'totalTasks',
-    headerTitle: 'Total Tasks',
-    contentPath: 'totalTasks',
-    observePath: true
-  },{
-    id: 'succeededTasks',
-    headerTitle: 'Succeeded Tasks',
-    contentPath: 'succeededTasks',
-    observePath: true
-  },{
-    id: 'runningTasks',
-    headerTitle: 'Running Tasks',
-    contentPath: 'runningTasks',
-    observePath: true
-  },{
-    id: 'pendingTasks',
-    headerTitle: 'Pending Tasks',
-    contentPath: 'pendingTasks',
-    observePath: true
-  },{
-    id: 'failedTaskAttempts',
-    headerTitle: 'Failed Task Attempts',
-    contentPath: 'failedTaskAttempts',
-    observePath: true
-  },{
-    id: 'killedTaskAttempts',
-    headerTitle: 'Killed Task Attempts',
-    contentPath: 'killedTaskAttempts',
-    observePath: true
-  }]),
-
-  stats: Ember.computed("model.@each.loadTime", function () {
-    var vertices = this.get("model");
-
-    if(vertices) {
-      let succeededVertices = 0,
-          succeededTasks = 0,
-          totalTasks =0,
-
-          failedTasks = 0,
-          killedTasks = 0,
-          failedTaskAttempts = 0,
-          killedTaskAttempts = 0;
-
-      vertices.forEach(function (vertex) {
-        if(vertex.get("status") === "SUCCEEDED") {
-          succeededVertices++;
-        }
-
-        succeededTasks += vertex.get("succeededTasks");
-        totalTasks += vertex.get("totalTasks");
-
-        failedTasks += vertex.get("failedTasks");
-        killedTasks += vertex.get("killedTasks");
-
-        failedTaskAttempts += vertex.get("failedTaskAttempts");
-        killedTaskAttempts += vertex.get("killedTaskAttempts");
-      });
-
-      return {
-        succeededVertices: succeededVertices,
-        totalVertices: vertices.get("length"),
-
-        succeededTasks: succeededTasks,
-        totalTasks: totalTasks,
-
-        failedTasks: failedTasks,
-        killedTasks: killedTasks,
-
-        failedTaskAttempts: failedTaskAttempts,
-        killedTaskAttempts: killedTaskAttempts
-      };
-    }
-  }),
-
-  beforeSort: function () {
-    return true;
-  }
-
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag/swimlane.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag/swimlane.js b/tez-ui2/src/main/webapp/app/controllers/dag/swimlane.js
deleted file mode 100644
index 259d72f..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag/swimlane.js
+++ /dev/null
@@ -1,151 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import Ember from 'ember';
-
-import MultiTableController from '../multi-table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-import VertexProcess from '../../utils/vertex-process';
-
-import fullscreen from 'em-tgraph/utils/fullscreen';
-
-export default MultiTableController.extend({
-
-  zoom: 100,
-
-  columnSelectorTitle: 'Customize vertex tooltip',
-
-  breadcrumbs: [{
-    text: "Vertex Swimlane",
-    routeName: "dag.swimlane",
-  }],
-
-  columns: ColumnDefinition.make([{
-    id: 'entityID',
-    headerTitle: 'Vertex Id',
-    contentPath: 'entityID'
-  },{
-    id: 'status',
-    headerTitle: 'Status',
-    contentPath: 'finalStatus',
-  },{
-    id: 'progress',
-    headerTitle: 'Progress',
-    contentPath: 'progress',
-    cellDefinition: {
-      type: 'number',
-      format: '0%'
-    }
-  },{
-    id: 'startTime',
-    headerTitle: 'Start Time',
-    contentPath: 'startTime',
-    cellDefinition: {
-      type: 'date'
-    }
-  },{
-    id: 'endTime',
-    headerTitle: 'End Time',
-    contentPath: 'endTime',
-    cellDefinition: {
-      type: 'date'
-    }
-  },{
-    id: 'duration',
-    headerTitle: 'Duration',
-    contentPath: 'duration',
-    cellDefinition: {
-      type: 'duration'
-    }
-  },{
-    id: 'firstTaskStartTime',
-    headerTitle: 'First Task Start Time',
-    contentPath: 'firstTaskStartTime',
-    cellDefinition: {
-      type: 'date'
-    }
-  },{
-    id: 'totalTasks',
-    headerTitle: 'Tasks',
-    contentPath: 'totalTasks',
-  },{
-    id: 'succeededTasks',
-    headerTitle: 'Succeeded Tasks',
-    contentPath: 'succeededTasks',
-  },{
-    id: 'runningTasks',
-    headerTitle: 'Running Tasks',
-    contentPath: 'runningTasks',
-  },{
-    id: 'pendingTasks',
-    headerTitle: 'Pending Tasks',
-    contentPath: 'pendingTasks',
-  },{
-    id: 'processorClassName',
-    headerTitle: 'Processor Class',
-    contentPath: 'processorClassName',
-  }]),
-
-  processes: Ember.computed("model", function () {
-    var processes = [],
-        processHash = {},
-
-        dagPlanEdges = this.get("model.firstObject.dag.edges"),
-
-        that = this,
-        getVisibleProps = function () {
-          return that.get("visibleColumns");
-        };
-
-    // Create process instances for each vertices
-    this.get("model").forEach(function (vertex) {
-      var process = VertexProcess.create({
-        vertex: vertex,
-        getVisibleProps: getVisibleProps,
-        blockers: Ember.A()
-      });
-      processHash[vertex.get("name")] = process;
-      processes.push(process);
-    });
-
-    // Add process(vertex) dependencies based on dagPlan
-    if(dagPlanEdges) {
-      dagPlanEdges.forEach(function (edge) {
-        var process = processHash[edge.outputVertexName];
-        if(process && processHash[edge.inputVertexName]) {
-          process.blockers.push(processHash[edge.inputVertexName]);
-          process.edgeHash.set(edge.inputVertexName, edge);
-        }
-      });
-    }
-
-    return Ember.A(processes);
-  }),
-
-  actions: {
-    toggleFullscreen: function () {
-      var swimlaneElement = Ember.$(".swimlane-page").get(0);
-      if(swimlaneElement){
-        fullscreen.toggle(swimlaneElement);
-      }
-    },
-    click: function (type, process) {
-      this.transitionToRoute('vertex.index', process.get('vertex.entityID'));
-    }
-  }
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag/tasks.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag/tasks.js b/tez-ui2/src/main/webapp/app/controllers/dag/tasks.js
deleted file mode 100644
index 113d37e..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag/tasks.js
+++ /dev/null
@@ -1,82 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import MultiTableController from '../multi-table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-
-export default MultiTableController.extend({
-  breadcrumbs: [{
-    text: "All Tasks",
-    routeName: "dag.tasks",
-  }],
-
-  columns: ColumnDefinition.make([{
-    id: 'index',
-    headerTitle: 'Task Index',
-    contentPath: 'index',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "task",
-        model: row.get("entityID"),
-        text: row.get("index")
-      };
-    }
-  },{
-    id: 'vertexName',
-    headerTitle: 'Vertex Name',
-    contentPath: 'vertexName',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "vertex",
-        model: row.get("vertexID"),
-        text: row.get("vertexName")
-      };
-    }
-  },{
-    id: 'status',
-    headerTitle: 'Status',
-    contentPath: 'status',
-    cellComponentName: 'em-table-status-cell',
-    observePath: true
-  },{
-    id: 'progress',
-    headerTitle: 'Progress',
-    contentPath: 'progress',
-    cellComponentName: 'em-table-progress-cell',
-    observePath: true
-  },{
-    id: 'startTime',
-    headerTitle: 'Start Time',
-    contentPath: 'startTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'endTime',
-    headerTitle: 'End Time',
-    contentPath: 'endTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'duration',
-    headerTitle: 'Duration',
-    contentPath: 'duration',
-    cellDefinition: {
-      type: 'duration'
-    }
-  }])
-});

http://git-wip-us.apache.org/repos/asf/tez/blob/13132ec7/tez-ui2/src/main/webapp/app/controllers/dag/vertices.js
----------------------------------------------------------------------
diff --git a/tez-ui2/src/main/webapp/app/controllers/dag/vertices.js b/tez-ui2/src/main/webapp/app/controllers/dag/vertices.js
deleted file mode 100644
index 283f2d1..0000000
--- a/tez-ui2/src/main/webapp/app/controllers/dag/vertices.js
+++ /dev/null
@@ -1,122 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import MultiTableController from '../multi-table';
-import ColumnDefinition from 'em-table/utils/column-definition';
-
-export default MultiTableController.extend({
-  breadcrumbs: [{
-    text: "All Vertices",
-    routeName: "dag.vertices",
-  }],
-
-  columns: ColumnDefinition.make([{
-    id: 'name',
-    headerTitle: 'Vertex Name',
-    contentPath: 'name',
-    cellComponentName: 'em-table-linked-cell',
-    getCellContent: function (row) {
-      return {
-        routeName: "vertex",
-        model: row.get("entityID"),
-        text: row.get("name")
-      };
-    }
-  },{
-    id: 'entityID',
-    headerTitle: 'Vertex Id',
-    contentPath: 'entityID'
-  },{
-    id: 'status',
-    headerTitle: 'Status',
-    contentPath: 'finalStatus',
-    cellComponentName: 'em-table-status-cell',
-    observePath: true
-  },{
-    id: 'progress',
-    headerTitle: 'Progress',
-    contentPath: 'progress',
-    cellComponentName: 'em-table-progress-cell',
-    observePath: true
-  },{
-    id: 'startTime',
-    headerTitle: 'Start Time',
-    contentPath: 'startTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'endTime',
-    headerTitle: 'End Time',
-    contentPath: 'endTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'duration',
-    headerTitle: 'Duration',
-    contentPath: 'duration',
-    cellDefinition: {
-      type: 'duration'
-    }
-  },{
-    id: 'firstTaskStartTime',
-    headerTitle: 'First Task Start Time',
-    contentPath: 'firstTaskStartTime',
-    cellComponentName: 'date-formatter',
-  },{
-    id: 'totalTasks',
-    headerTitle: 'Tasks',
-    contentPath: 'totalTasks',
-  },{
-    id: 'succeededTasks',
-    headerTitle: 'Succeeded Tasks',
-    contentPath: 'succeededTasks',
-    observePath: true
-  },{
-    id: 'runningTasks',
-    headerTitle: 'Running Tasks',
-    contentPath: 'runningTasks',
-    observePath: true
-  },{
-    id: 'pendingTasks',
-    headerTitle: 'Pending Tasks',
-    contentPath: 'pendingTasks',
-    observePath: true
-  },{
-    id: 'processorClassName',
-    headerTitle: 'Processor Class',
-    contentPath: 'processorClassName',
-  }]),
-
-  beforeSort: function (columnDefinition) {
-    if(this._super(columnDefinition)) {
-      if(this.get("polling.isReady")) {
-        let columnName = columnDefinition.get("headerTitle");
-        switch(columnDefinition.get("contentPath")) {
-          case "succeededTasks":
-          case "runningTasks":
-          case "pendingTasks":
-            this.send("openModal", {
-              title: "Cannot sort!",
-              content: `Sorting on ${columnName} is disabled for running DAGs!`
-            });
-            return false;
-        }
-      }
-    }
-    return true;
-  }
-
-});


Mime
View raw message