ambari-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ababiic...@apache.org
Subject [3/3] ambari git commit: AMBARI-9001 remove the mirroring stuff from ambari-web. (ababiichuk)
Date Tue, 06 Jan 2015 13:32:26 GMT
AMBARI-9001 remove the mirroring stuff from ambari-web. (ababiichuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/dd3d39a4
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/dd3d39a4
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/dd3d39a4

Branch: refs/heads/trunk
Commit: dd3d39a4234e74ca3c99bf933f4f652a6fdcc3e1
Parents: 1ea49d0
Author: aBabiichuk <ababiichuk@cybervisiontech.com>
Authored: Tue Jan 6 14:47:19 2015 +0200
Committer: aBabiichuk <ababiichuk@cybervisiontech.com>
Committed: Tue Jan 6 15:32:14 2015 +0200

----------------------------------------------------------------------
 .../ambari-mirroring-dataset1_definition.xml    |  23 -
 .../ambari-mirroring-dataset1_instances.json    |  42 -
 .../ambari-mirroring-dataset2_definition.xml    |  23 -
 .../ambari-mirroring-dataset2_instances.json    |  42 -
 .../ambari-mirroring-dataset3_definition.xml    |  23 -
 .../ambari-mirroring-dataset3_instances.json    |  22 -
 .../data/mirroring/cluster1_definition.xml      |  15 -
 .../data/mirroring/cluster2_definition.xml      |  15 -
 .../app/assets/data/mirroring/clusters.xml      |  11 -
 ambari-web/app/assets/data/mirroring/feeds.xml  |  18 -
 .../app/assets/data/mirroring/succeeded.json    |   5 -
 ambari-web/app/config.js                        |   1 -
 .../main/mirroring/datasets_controller.js       |  23 -
 .../main/mirroring/edit_dataset_controller.js   | 365 --------
 .../main/mirroring/jobs_controller.js           | 201 -----
 .../mirroring/manage_clusters_controller.js     | 176 ----
 .../controllers/main/mirroring_controller.js    | 377 --------
 ambari-web/app/mappers.js                       |   1 -
 ambari-web/app/mappers/dataset_mapper.js        |  70 --
 ambari-web/app/messages.js                      | 117 ---
 ambari-web/app/models/dataset.js                |  92 --
 ambari-web/app/models/dataset_job.js            |  82 --
 ambari-web/app/routes/main.js                   |  64 --
 ambari-web/app/styles/application.less          | 362 --------
 ambari-web/app/styles/apps.less                 | 883 -------------------
 ambari-web/app/templates/main/mirroring.hbs     |  20 -
 .../main/mirroring/addTargetCluster.hbs         |  19 -
 .../main/mirroring/create_new_cluster.hbs       |  76 --
 .../app/templates/main/mirroring/datasets.hbs   | 110 ---
 .../templates/main/mirroring/edit_dataset.hbs   | 134 ---
 .../app/templates/main/mirroring/jobs.hbs       | 181 ----
 .../main/mirroring/manage_clusters.hbs          |  83 --
 ambari-web/app/utils/ajax/ajax.js               | 150 ----
 ambari-web/app/utils/graph.js                   | 184 ----
 ambari-web/app/utils/misc.js                    |  38 -
 .../app/views/main/mirroring/datasets_view.js   | 131 ---
 .../views/main/mirroring/edit_dataset_view.js   | 141 ---
 .../app/views/main/mirroring/jobs_view.js       | 220 -----
 .../main/mirroring/manage_clusters_view.js      |  78 --
 ambari-web/app/views/main/mirroring_view.js     |  42 -
 .../mirroring/edit_dataset_controller_test.js   | 416 ---------
 ambari-web/test/mappers/jobs_mapper_test.js     | 111 ---
 ambari-web/test/models/dataset_job_test.js      | 138 ---
 ambari-web/test/models/dataset_test.js          | 148 ----
 ambari-web/test/utils/misc_test.js              |  24 -
 ambari-web/test/views/main/menu_test.js         |   4 -
 .../main/mirroring/edit_dataset_view_test.js    | 243 -----
 47 files changed, 5744 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset1_definition.xml
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset1_definition.xml b/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset1_definition.xml
deleted file mode 100644
index 5ba8a75..0000000
--- a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset1_definition.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0"?>
-<feed xmlns="uri:falcon:feed:0.1" name="ambari-mirroring-dataset1" description=""><frequency>hours(1)</frequency>
-    <clusters>
-        <cluster name="source-cluster" type="source">
-            <validity end="2014-12-31T00:00Z" start="2013-10-24T00:00Z"/>
-            <retention action="delete" limit="days(7)"/>
-        </cluster>
-
-        <cluster name="tdk" type="target">
-            <validity end="2014-12-31T00:00Z" start="2013-10-24T00:00Z"/>
-            <retention action="delete" limit="months(1)"/>
-            <locations>
-                <location type="data" path="/backup/app-logs1"/>
-            </locations>
-        </cluster>
-    </clusters>
-
-    <locations>
-        <location type="data" path="/app-logs1"/>
-    </locations>
-    <ACL permission="0755" group="users" owner="hue"/>
-    <schema provider="none" location="/none"/>
-</feed>

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset1_instances.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset1_instances.json b/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset1_instances.json
deleted file mode 100644
index d2f71b1..0000000
--- a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset1_instances.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{"status": "SUCCEEDED", "message": "default/STATUS\n", "requestId": "default/a7463898-4d2a-4857-866d-15fdf65da84f\n", "instances": [
-  {
-    "instance": "2013-10-24T00:00Z",
-    "status": "KILLED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000004-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-14T06:23:33Z",
-    "endTime": "2014-01-09T06:24:29Z",
-    "details": ""
-  },
-  {
-    "instance": "2013-10-24T01:00Z",
-    "status": "KILLED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000005-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:25:35Z",
-    "endTime": "2014-01-09T06:26:02Z",
-    "details": ""
-  },
-  {
-    "instance": "2013-10-24T02:00Z",
-    "status": "KILLED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000006-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:30:35Z",
-    "endTime": "2014-01-07T06:31:03Z",
-    "details": ""
-  },
-  {
-    "instance": "2013-10-24T03:00Z",
-    "status": "KILLED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000007-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:35:35Z",
-    "endTime": "2014-01-02T06:36:03Z",
-    "details": ""
-  }
-]}

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset2_definition.xml
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset2_definition.xml b/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset2_definition.xml
deleted file mode 100644
index 68377fa..0000000
--- a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset2_definition.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0"?>
-<feed xmlns="uri:falcon:feed:0.1" name="ambari-mirroring-dataset2" description=""><frequency>hours(1)</frequency>
-    <clusters>
-        <cluster name="source-cluster" type="source">
-            <validity end="2014-12-31T00:00Z" start="2013-10-24T00:00Z"/>
-            <retention action="delete" limit="days(7)"/>
-        </cluster>
-
-        <cluster name="tdk" type="target">
-            <validity end="2014-12-31T00:00Z" start="2013-10-24T00:00Z"/>
-            <retention action="delete" limit="months(1)"/>
-            <locations>
-                <location type="data" path="/backup/app-logs2"/>
-            </locations>
-        </cluster>
-    </clusters>
-
-    <locations>
-        <location type="data" path="/app-logs2"/>
-    </locations>
-    <ACL permission="0755" group="users" owner="hue"/>
-    <schema provider="none" location="/none"/>
-</feed>

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset2_instances.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset2_instances.json b/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset2_instances.json
deleted file mode 100644
index 5405fb5..0000000
--- a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset2_instances.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{"status": "SUCCEEDED", "message": "default/STATUS\n", "requestId": "default/a7463898-4d2a-4857-866d-15fdf65da84f\n", "instances": [
-  {
-    "instance": "2012-10-24T00:00Z",
-    "status": "RUNNING",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000004-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:23:33Z",
-    "endTime": "2014-01-09T06:24:29Z",
-    "details": ""
-  },
-  {
-    "instance": "2012-10-24T01:00Z",
-    "status": "SUCCEEDED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000005-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:25:35Z",
-    "endTime": "2014-01-09T06:26:02Z",
-    "details": ""
-  },
-  {
-    "instance": "2012-10-24T02:00Z",
-    "status": "FAILED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000006-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:30:35Z",
-    "endTime": "2014-01-09T06:31:03Z",
-    "details": ""
-  },
-  {
-    "instance": "2012-10-24T03:00Z",
-    "status": "SUSPENDED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000007-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:35:35Z",
-    "endTime": "2014-01-09T06:36:03Z",
-    "details": ""
-  }
-]}

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset3_definition.xml
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset3_definition.xml b/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset3_definition.xml
deleted file mode 100644
index 8105c3a..0000000
--- a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset3_definition.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0"?>
-<feed xmlns="uri:falcon:feed:0.1" name="ambari-mirroring-dataset3" description=""><frequency>hours(1)</frequency>
-    <clusters>
-        <cluster name="source-cluster" type="source">
-            <validity end="2014-12-31T00:00Z" start="2013-10-24T00:00Z"/>
-            <retention action="delete" limit="days(7)"/>
-        </cluster>
-
-        <cluster name="tdk" type="target">
-            <validity end="2014-12-31T00:00Z" start="2013-10-24T00:00Z"/>
-            <retention action="delete" limit="months(1)"/>
-            <locations>
-                <location type="data" path="/backup/app-logs3"/>
-            </locations>
-        </cluster>
-    </clusters>
-
-    <locations>
-        <location type="data" path="/app-logs3"/>
-    </locations>
-    <ACL permission="0755" group="users" owner="hue"/>
-    <schema provider="none" location="/none"/>
-</feed>

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset3_instances.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset3_instances.json b/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset3_instances.json
deleted file mode 100644
index 70976d6..0000000
--- a/ambari-web/app/assets/data/mirroring/ambari-mirroring-dataset3_instances.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{"status": "SUCCEEDED", "message": "default/STATUS\n", "requestId": "default/a7463898-4d2a-4857-866d-15fdf65da84f\n", "instances": [
-  {
-    "instance": "2014-10-24T00:00Z",
-    "status": "FAILED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000004-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:23:33Z",
-    "endTime": "2014-01-09T06:24:29Z",
-    "details": ""
-  },
-  {
-    "instance": "2014-10-24T01:00Z",
-    "status": "SUSPENDED",
-    "logFile": "http://c6407.ambari.apache.org:11000/oozie?job=0000005-140108205147729-oozie-oozi-W",
-    "cluster": "tdk",
-    "sourceCluster": "mcluster",
-    "startTime": "2014-01-09T06:25:35Z",
-    "endTime": "2014-01-09T06:26:02Z",
-    "details": ""
-  }
-]}

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/cluster1_definition.xml
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/cluster1_definition.xml b/ambari-web/app/assets/data/mirroring/cluster1_definition.xml
deleted file mode 100644
index 5084d23..0000000
--- a/ambari-web/app/assets/data/mirroring/cluster1_definition.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<cluster name="cluster1" description="" colo="default" xmlns="uri:falcon:cluster:0.1">
-    <interfaces>
-        <interface type="readonly" endpoint="hftp://c6401.ambari.apache.org:50070" version="2.2.0.2.0.6.0-76"/>
-        <interface type="write" endpoint="hdfs://c6401.ambari.apache.org:8020" version="2.2.0.2.0.6.0-76"/>
-        <interface type="execute" endpoint="c6401.ambari.apache.org:8050" version="2.2.0.2.0.6.0-76"/>
-        <interface type="workflow" endpoint="http://c6401.ambari.apache.org:11000/oozie" version="3.1.4"/>
-        <interface type="messaging" endpoint="tcp://c6401.ambari.apache.org:61616?daemon=true" version="5.1.6"/>
-    </interfaces>
-    <locations>
-        <location name="staging" path="/projects/falcon/staging"/>
-        <location name="temp" path="/tmp"/>
-        <location name="working" path="/projects/falcon/working"/>
-    </locations>
-</cluster>

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/cluster2_definition.xml
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/cluster2_definition.xml b/ambari-web/app/assets/data/mirroring/cluster2_definition.xml
deleted file mode 100644
index 05ddf98..0000000
--- a/ambari-web/app/assets/data/mirroring/cluster2_definition.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<cluster name="cluster2" description="" colo="default" xmlns="uri:falcon:cluster:0.1">
-    <interfaces>
-        <interface type="readonly" endpoint="hftp://c6401.ambari.apache.org:50070" version="2.2.0.2.0.6.0-76"/>
-        <interface type="write" endpoint="hdfs://c6401.ambari.apache.org:8020" version="2.2.0.2.0.6.0-76"/>
-        <interface type="execute" endpoint="c6401.ambari.apache.org:8050" version="2.2.0.2.0.6.0-76"/>
-        <interface type="workflow" endpoint="http://c6401.ambari.apache.org:11000/oozie" version="3.1.4"/>
-        <interface type="messaging" endpoint="tcp://c6401.ambari.apache.org:61616?daemon=true" version="5.1.6"/>
-    </interfaces>
-    <locations>
-        <location name="staging" path="/projects/falcon/staging"/>
-        <location name="temp" path="/tmp"/>
-        <location name="working" path="/projects/falcon/working"/>
-    </locations>
-</cluster>

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/clusters.xml
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/clusters.xml b/ambari-web/app/assets/data/mirroring/clusters.xml
deleted file mode 100644
index 3867732..0000000
--- a/ambari-web/app/assets/data/mirroring/clusters.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<entities>
-    <entity>
-        <type>cluster</type>
-        <name>cluster1</name>
-    </entity>
-    <entity>
-        <type>cluster</type>
-        <name>cluster2</name>
-    </entity>
-</entities>

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/feeds.xml
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/feeds.xml b/ambari-web/app/assets/data/mirroring/feeds.xml
deleted file mode 100644
index 9d9163e..0000000
--- a/ambari-web/app/assets/data/mirroring/feeds.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<entities>
-    <entity>
-        <type>feed</type>
-        <name>ambari-mirroring-dataset1</name>
-        <status>RUNNING</status>
-    </entity>
-    <entity>
-        <type>feed</type>
-        <name>ambari-mirroring-dataset2</name>
-        <status>SUSPENDED</status>
-    </entity>
-    <entity>
-        <type>feed</type>
-        <name>ambari-mirroring-dataset3</name>
-        <status>SUBMITTED</status>
-    </entity>
-</entities>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/assets/data/mirroring/succeeded.json
----------------------------------------------------------------------
diff --git a/ambari-web/app/assets/data/mirroring/succeeded.json b/ambari-web/app/assets/data/mirroring/succeeded.json
deleted file mode 100644
index f3d577b..0000000
--- a/ambari-web/app/assets/data/mirroring/succeeded.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "requestId": "schedule\/default\/b5b40931-175b-4b15-8f2b-02ef2e66f06b\n\nsubmit\/default\/b5b40931-175b-4b15-8f2b-02ef2e66f06b\n\n",
-  "message": "schedule\/default\/SampleProcess(process) scheduled successfully\n\nsubmit\/default\/Submit successful (process) SampleProcess\n\n",
-  "status": "SUCCEEDED"
-}

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/config.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/config.js b/ambari-web/app/config.js
index 7bbfd5b..6c62a08 100644
--- a/ambari-web/app/config.js
+++ b/ambari-web/app/config.js
@@ -45,7 +45,6 @@ App.singleNodeInstall = false;
 App.singleNodeAlias = document.location.hostname;
 App.minDiskSpace = 2.0; // minimum disk space required for '/' for each host before install, unit GB
 App.minDiskSpaceUsrLib = 1.0; // minimum disk space for '/usr/lib' for each host before install, unit GB
-App.mirroringDatasetNamePrefix = 'ambari-mirroring-'; // special prefix to be added for each Falcon feed name created with Ambari
 App.healthIconClassGreen = 'icon-ok-sign'; // bootstrap icon class for healthy/started service/host/host-component
 App.healthIconClassRed = 'icon-warning-sign'; // bootstrap icon class for master down/stopped service/host/host-component
 App.healthIconClassOrange = 'icon-minus-sign'; // bootstrap icon class for slave down/decommissioned host/host-component

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/controllers/main/mirroring/datasets_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/mirroring/datasets_controller.js b/ambari-web/app/controllers/main/mirroring/datasets_controller.js
deleted file mode 100644
index bbb7724..0000000
--- a/ambari-web/app/controllers/main/mirroring/datasets_controller.js
+++ /dev/null
@@ -1,23 +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.
- */
-
-var App = require('app');
-
-App.MainDatasetsController = Em.ArrayController.extend({
-  name: 'mainDatasetsController'
-});

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/controllers/main/mirroring/edit_dataset_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/mirroring/edit_dataset_controller.js b/ambari-web/app/controllers/main/mirroring/edit_dataset_controller.js
deleted file mode 100644
index ea11921..0000000
--- a/ambari-web/app/controllers/main/mirroring/edit_dataset_controller.js
+++ /dev/null
@@ -1,365 +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.
- */
-
-App.MainMirroringEditDataSetController = Ember.Controller.extend({
-  name: 'mainMirroringEditDataSetController',
-
-  /**
-   * Defines to show Edit Dataset or Create New Dataset popup
-   * @type {Boolean}
-   */
-  isEdit: false,
-
-  /**
-   * Contains Dataset id if <code>isEdit</code> is true
-   * @type {Boolean}
-   */
-  datasetIdToEdit: null,
-
-  /**
-   * Fields values from Edit DataSet form
-   * @type {Object}
-   */
-  formFields: Ember.Object.create({
-    datasetName: null,
-    datasetTargetClusterName: null,
-    datasetSourceDir: null,
-    datasetTargetDir: null,
-    datasetStartDate: null,
-    hoursForStart: null,
-    minutesForStart: null,
-    middayPeriodForStart: null,
-    datasetEndDate: null,
-    hoursForEnd: null,
-    minutesForEnd: null,
-    middayPeriodForEnd: null,
-    datasetFrequency: null,
-    repeatOptionSelected: null
-  }),
-
-  /**
-   * Messages for errors occurred during Edit DataSet form validation
-   * @type {Object}
-   */
-  errorMessages: Ember.Object.create({
-    name: '',
-    sourceDir: '',
-    targetDir: '',
-    startDate: '',
-    endDate: '',
-    frequency: '',
-    targetClusterName: ''
-  }),
-
-  /**
-   * Flags with errors related to each field in Edit/Create Dataset form
-   * @type {Object}
-   */
-  errors: Ember.Object.create({
-    isNameError: false,
-    isSourceDirError: false,
-    isTargetDirError: false,
-    isStartDateError: false,
-    isEndDateError: false,
-    isFrequencyError: false,
-    isTargetClusterNameError: false
-  }),
-
-  /**
-   * Clear all fields in Edit/Create Dataset form and clears all errors
-   */
-  clearStep: function () {
-    var formFields = this.get('formFields');
-    Em.keys(formFields).forEach(function (key) {
-      formFields.set(key, null);
-    }, this);
-    this.clearErrors();
-  },
-
-  /**
-   * Clear all error flags and messages
-   */
-  clearErrors: function () {
-    var errorMessages = this.get('errorMessages');
-    Em.keys(errorMessages).forEach(function (key) {
-      errorMessages.set(key, '');
-    }, this);
-    var errors = this.get('errors');
-    Em.keys(errors).forEach(function (key) {
-      errors.set(key, false);
-    }, this);
-  },
-
-  /**
-   * Show Create New Dataset popup
-   * @return {Object} popup view
-   */
-  showAddPopup: function () {
-    var popup = this.showPopup(Em.I18n.t('mirroring.dataset.newDataset'));
-    this.set('isEdit', false);
-    return popup;
-  },
-
-  /**
-   * Show Edit Dataset popup
-   * @return {Object} popup view
-   */
-  showEditPopup: function (dataset) {
-    this.set('datasetIdToEdit', dataset.get('id'));
-    var popup = this.showPopup(Em.I18n.t('mirroring.dataset.editDataset'));
-    this.set('isEdit', true);
-    return popup;
-  },
-
-  /**
-   * Show popup with Dataset form fields
-   * @return {Object} popup view
-   */
-  showPopup: function (header) {
-    var self = this;
-    var popup = App.ModalPopup.show({
-      classNames: ['sixty-percent-width-modal'],
-      header: header,
-      primary: Em.I18n.t('mirroring.dataset.save'),
-      secondary: Em.I18n.t('common.cancel'),
-      showCloseButton: false,
-      isSaving: false,
-      saveDisabled: function () {
-        return self.get('saveDisabled');
-      }.property('App.router.' + self.get('name') + '.saveDisabled'),
-      disablePrimary: function () {
-        return this.get('saveDisabled') || this.get('isSaving');
-      }.property('saveDisabled', 'isSaving'),
-      onPrimary: function () {
-        // Apply form validation for first click
-        if (!this.get('primaryWasClicked')) {
-          this.toggleProperty('primaryWasClicked');
-          self.applyValidation();
-          if (this.get('saveDisabled')) {
-            return false;
-          }
-        }
-        self.save();
-        App.router.transitionTo('main.mirroring.index');
-      },
-      primaryWasClicked: false,
-      onSecondary: function () {
-        this.hide();
-        App.router.send('gotoShowJobs');
-      },
-      bodyClass: App.MainMirroringEditDataSetView.extend({
-        controller: self
-      })
-    });
-    this.set('popup', popup);
-    return popup;
-  },
-
-  /**
-   * Set observer to call validate method if any property from formFields will change
-   */
-  applyValidation: function () {
-    Em.keys(this.get('formFields')).forEach(function (key) {
-      this.addObserver('formFields.' + key, this, 'validate');
-    }, this);
-    this.validate();
-  },
-
-  /**
-   * Return date object calculated from appropriate fields
-   * @type {Date}
-   */
-  scheduleStartDate: function () {
-    var startDate = this.get('formFields.datasetStartDate');
-    var hoursForStart = this.get('formFields.hoursForStart');
-    var minutesForStart = this.get('formFields.minutesForStart');
-    var middayPeriodForStart = this.get('formFields.middayPeriodForStart');
-    if (startDate && hoursForStart && minutesForStart && middayPeriodForStart) {
-      return new Date(startDate + ' ' + hoursForStart + ':' + minutesForStart + ' ' + middayPeriodForStart);
-    }
-    return null;
-  }.property('formFields.datasetStartDate', 'formFields.hoursForStart', 'formFields.minutesForStart', 'formFields.middayPeriodForStart'),
-
-  /**
-   * Return date object calculated from appropriate fields
-   * @type {Date}
-   */
-  scheduleEndDate: function () {
-    var endDate = this.get('formFields.datasetEndDate');
-    var hoursForEnd = this.get('formFields.hoursForEnd');
-    var minutesForEnd = this.get('formFields.minutesForEnd');
-    var middayPeriodForEnd = this.get('formFields.middayPeriodForEnd');
-    if (endDate && hoursForEnd && minutesForEnd && middayPeriodForEnd) {
-      return new Date(endDate + ' ' + hoursForEnd + ':' + minutesForEnd + ' ' + middayPeriodForEnd);
-    }
-    return null;
-  }.property('formFields.datasetEndDate', 'formFields.hoursForEnd', 'formFields.minutesForEnd', 'formFields.middayPeriodForEnd'),
-
-
-  /**
-   * Validation for every field in Edit DataSet form
-   */
-  validate: function () {
-    var formFields = this.get('formFields');
-    var errors = this.get('errors');
-    var errorMessages = this.get('errorMessages');
-    this.clearErrors();
-    // Check if feild is empty
-    Em.keys(errorMessages).forEach(function (key) {
-      if (!formFields.get('dataset' + key.capitalize())) {
-        errors.set('is' + key.capitalize() + 'Error', true);
-        errorMessages.set(key, Em.I18n.t('mirroring.required.error'));
-      }
-    }, this);
-    // Check that endDate is after startDate
-    var scheduleStartDate = this.get('scheduleStartDate');
-    var scheduleEndDate = this.get('scheduleEndDate');
-    if (scheduleStartDate && scheduleEndDate && (scheduleStartDate > scheduleEndDate)) {
-      errors.set('isEndDateError', true);
-      errorMessages.set('endDate', Em.I18n.t('mirroring.dateOrder.error'));
-    }
-    // Check that startDate is after current date
-    if (scheduleStartDate && !this.get('isEdit') && new Date(App.dateTime()) > scheduleStartDate) {
-      errors.set('isStartDateError', true);
-      errorMessages.set('startDate', Em.I18n.t('mirroring.startDate.error'));
-    }
-    // Check that repeat field value consists only from digits
-    if (isNaN(this.get('formFields.datasetFrequency'))) {
-      errors.set('isFrequencyError', true);
-      errorMessages.set('frequency', Em.I18n.t('mirroring.required.invalidNumberError'));
-    }
-  },
-
-
-  /**
-   * Add '0' for numbers less than 10
-   * @param {Number|String} number
-   * @return {String}
-   */
-  addZero: function (number) {
-    return ('0' + number).slice(-2);
-  },
-
-  /**
-   * Convert date to TZ format
-   * @param {Date} date
-   * @return {String}
-   */
-  toTZFormat: function (date) {
-    return date.toISOString().replace(/\:\d{2}\.\d{3}/,'');
-  },
-
-  /**
-   * Converts hours value from 24-hours format to AM/PM format
-   * @param {Number|String} hours
-   * @return {String}
-   */
-  toAMPMHours: function (hours) {
-    var result = hours % 12;
-    result = result ? result : 12;
-    return this.addZero(result);
-  },
-
-  /**
-   * Save data from dataset form to server
-   */
-  save: function () {
-    this.set('popup.isSaving', true);
-    var datasetXML = this.createDatasetXML();
-    this.sendDatasetToServer(datasetXML);
-  },
-
-  /**
-   * Compose XML-object from populated dataset form fields
-   * @return {String}
-   */
-  createDatasetXML: function () {
-    var datasetNamePrefix = App.get('mirroringDatasetNamePrefix');
-    var datasetName = this.get('formFields.datasetName');
-    var prefixedDatasetName = datasetNamePrefix + datasetName;
-    var sourceCluster = App.get('clusterName');
-    var targetCluster = this.get('formFields.datasetTargetClusterName');
-    var sourceDir = this.get('formFields.datasetSourceDir');
-    var targetDir = this.get('formFields.datasetTargetDir');
-    var datasetFrequency = this.get('formFields.datasetFrequency');
-    var repeatOptionSelected = this.get('formFields.repeatOptionSelected');
-    var startDate = this.get('scheduleStartDate');
-    var endDate = this.get('scheduleEndDate');
-    var scheduleStartDateFormatted = this.toTZFormat(startDate);
-    var scheduleEndDateFormatted = this.toTZFormat(endDate);
-
-    return '<?xml version="1.0"?><feed description="" name="' + prefixedDatasetName + '" xmlns="uri:falcon:feed:0.1"><frequency>' + repeatOptionSelected + '(' + datasetFrequency + ')' +
-        '</frequency><clusters><cluster name="' + sourceCluster + '" type="source"><validity start="' + scheduleStartDateFormatted + '" end="' + scheduleEndDateFormatted +
-        '"/><retention limit="days(7)" action="delete"/></cluster><cluster name="' + targetCluster + '" type="target"><validity start="' + scheduleStartDateFormatted + '" end="' + scheduleEndDateFormatted +
-        '"/><retention limit="months(1)" action="delete"/><locations><location type="data" path="' + targetDir + '" /></locations></cluster></clusters><locations><location type="data" path="' +
-        sourceDir + '" /></locations><ACL owner="hue" group="users" permission="0755" /><schema location="/none" provider="none"/></feed>';
-  },
-
-  /**
-   * Send dataset XML-data to server
-   * @param {String} datasetXML
-   */
-  sendDatasetToServer: function (datasetXML) {
-    var datasetNamePrefix = App.get('mirroringDatasetNamePrefix');
-    var datasetName = this.get('formFields.datasetName');
-    var prefixedDatasetName = datasetNamePrefix + datasetName;
-    return App.ajax.send({
-      name: this.get('isEdit') ? 'mirroring.update_entity' : 'mirroring.create_new_dataset',
-      sender: this,
-      data: {
-        name: prefixedDatasetName,
-        type: 'feed',
-        entity: datasetXML,
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onSaveSuccess',
-      error: 'onSaveError'
-    });
-  },
-
-  /**
-   * Callback for success saving XML-data on server
-   */
-  onSaveSuccess: function () {
-    this.set('popup.isSaving', false);
-    this.get('popup').hide();
-    App.router.get('mainMirroringController').loadData();
-  },
-
-  /**
-   * Callback for error while saving XML-data on server
-   */
-  onSaveError: function (response) {
-    this.set('popup.isSaving', false);
-    if (response && response.responseText) {
-      var errorMessage = /(?:\<message\>)((.|\n)+)(?:\<\/message\>)/.exec(response.responseText);
-      if (errorMessage.length > 1) {
-        App.showAlertPopup(Em.I18n.t('common.error'), Em.I18n.t('mirroring.manageClusters.error') + ': ' + errorMessage[1]);
-      }
-    }
-  },
-
-  /**
-   * Defines if save button should be disabled
-   * @type {Boolean}
-   */
-  saveDisabled: function () {
-    var errors = this.get('errors');
-    return errors.get('isNameError') || errors.get('isSourceDirError') || errors.get('isTargetDirError') || errors.get('isStartDateError') || errors.get('isEndDateError') || errors.get('isFrequencyError') || errors.get('isTargetClusterNameError');
-  }.property('errors.isNameError', 'errors.isSourceDirError', 'errors.isTargetDirError', 'errors.isStartDateError', 'errors.isEndDateError', 'errors.isFrequencyError', 'errors.isTargetClusterNameError')
-});

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/controllers/main/mirroring/jobs_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/mirroring/jobs_controller.js b/ambari-web/app/controllers/main/mirroring/jobs_controller.js
deleted file mode 100644
index dded921..0000000
--- a/ambari-web/app/controllers/main/mirroring/jobs_controller.js
+++ /dev/null
@@ -1,201 +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.
- */
-
-var App = require('app');
-
-App.MainDatasetJobsController = Em.Controller.extend({
-  name: 'mainDatasetJobsController',
-
-  suspend: function () {
-    App.ajax.send({
-      name: 'mirroring.suspend_entity',
-      sender: this,
-      data: {
-        name: this.get('content.prefixedName'),
-        type: 'feed',
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onSuspendSuccess',
-      error: 'onError'
-    });
-  },
-
-  onSuspendSuccess: function() {
-    this.set('content.status', 'SUSPENDED');
-    this.get('content.datasetJobs').filterProperty('status', 'RUNNING').setEach('status', 'SUSPENDED');
-  },
-
-  resume: function () {
-    App.ajax.send({
-      name: 'mirroring.resume_entity',
-      sender: this,
-      data: {
-        name: this.get('content.prefixedName'),
-        type: 'feed',
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onResumeSuccess',
-      error: 'onError'
-    });
-  },
-
-  onResumeSuccess: function() {
-    this.set('content.status', 'RUNNING');
-    this.get('content.datasetJobs').filterProperty('status', 'SUSPENDED').setEach('status', 'RUNNING');
-  },
-
-  schedule: function () {
-    App.ajax.send({
-      name: 'mirroring.schedule_entity',
-      sender: this,
-      data: {
-        name: this.get('content.prefixedName'),
-        type: 'feed',
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onScheduleSuccess',
-      error: 'onError'
-    });
-  },
-
-  onScheduleSuccess: function() {
-    this.set('content.status', 'RUNNING');
-  },
-
-
-  delete: function () {
-    var self = this;
-    App.showConfirmationPopup(function () {
-      App.ajax.send({
-        name: 'mirroring.delete_entity',
-        sender: self,
-        data: {
-          name: self.get('content.prefixedName'),
-          type: 'feed',
-          falconServer: App.get('falconServerURL')
-        },
-        success: 'onDeleteSuccess',
-        error: 'onError'
-      });
-    });
-  },
-
-  onDeleteSuccess: function() {
-    var dataset = this.get('content');
-    dataset.deleteRecord();
-    App.store.commit();
-    dataset.get('stateManager').transitionTo('loading');
-    this.set('content', null);
-    App.router.get('mainMirroringController').set('selectedDataset', null);
-    App.router.send('gotoShowJobs');
-  },
-
-  suspendInstance: function (event) {
-    App.ajax.send({
-      name: 'mirroring.suspend_instance',
-      sender: this,
-      data: {
-        feed: this.get('content.prefixedName'),
-        name: event.context.get('name'),
-        job: event.context,
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onSuspendInstanceSuccess',
-      error: 'onError'
-    });
-  },
-
-  onSuspendInstanceSuccess: function () {
-    this.get('content.datasetJobs').filterProperty('name', arguments[2].name).setEach('status', 'SUSPENDED');
-  },
-
-  resumeInstance: function (event) {
-    App.ajax.send({
-      name: 'mirroring.resume_instance',
-      sender: this,
-      data: {
-        feed: this.get('content.prefixedName'),
-        name: event.context.get('name'),
-        job: event.context,
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onResumeInstanceSuccess',
-      error: 'onError'
-    });
-  },
-
-  onResumeInstanceSuccess: function () {
-    this.get('content.datasetJobs').filterProperty('name', arguments[2].name).setEach('status', 'RUNNING');
-  },
-
-  killInstance: function (event) {
-    App.ajax.send({
-      name: 'mirroring.kill_instance',
-      sender: this,
-      data: {
-        feed: this.get('content.prefixedName'),
-        name: event.context.get('name'),
-        job: event.context,
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onKillInstanceSuccess',
-      error: 'onError'
-    });
-  },
-
-  onKillInstanceSuccess: function () {
-    this.get('content.datasetJobs').filterProperty('name', arguments[2].name).setEach('status', 'KILLED');
-  },
-
-  onError: function () {
-    App.showAlertPopup(Em.I18n.t('common.error'), arguments[2]);
-  },
-
-  downloadEntity: function () {
-    var xml = this.formatDatasetXML(this.get('content'));
-    if ($.browser.msie && $.browser.version < 10) {
-      this.openInfoInNewTab(xml);
-    } else {
-      try {
-        var blob = new Blob([xml], {type: 'text/xml;charset=utf-8;'});
-        saveAs(blob, Em.I18n.t('mirroring.dataset.entity') + '.xml');
-      } catch (e) {
-        this.openInfoInNewTab(xml);
-      }
-    }
-  },
-
-  openInfoInNewTab: function (xml) {
-    var newWindow = window.open('');
-    var newDocument = newWindow.document;
-    newDocument.write('<pre>' + xml + '</pre>');
-    newWindow.focus();
-  },
-
-  formatDatasetXML: function (dataset) {
-    return '<?xml version="1.0"?>\n' + '<feed description="" name="' + dataset.get('name') + '" xmlns="uri:falcon:feed:0.1">\n' +
-        '<frequency>' + dataset.get('frequencyUnit') + '(' + dataset.get('frequency') + ')' + '</frequency>\n' +
-        '<clusters>\n<cluster name="' + dataset.get('sourceClusterName') + '" type="source">\n' +
-        '<validity start="' + dataset.get('scheduleStartDate') + '" end="' + dataset.get('scheduleEndDate') + '"/>\n' +
-        '<retention limit="days(7)" action="delete"/>\n</cluster>\n<cluster name="' + dataset.get('targetClusterName') +
-        '" type="target">\n<validity start="' + dataset.get('scheduleStartDate') + '" end="' + dataset.get('scheduleEndDate') + '"/>\n' +
-        '<retention limit="months(1)" action="delete"/>\n<locations>\n<location type="data" path="' + dataset.get('targetDir') + '" />\n' +
-        '</locations>\n</cluster>\n</clusters>\n<locations>\n<location type="data" path="' + dataset.get('sourceDir') + '" />\n' +
-        '</locations>\n<ACL owner="hue" group="users" permission="0755" />\n<schema location="/none" provider="none"/>\n</feed>';
-  }
-});

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/controllers/main/mirroring/manage_clusters_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/mirroring/manage_clusters_controller.js b/ambari-web/app/controllers/main/mirroring/manage_clusters_controller.js
deleted file mode 100644
index c069915..0000000
--- a/ambari-web/app/controllers/main/mirroring/manage_clusters_controller.js
+++ /dev/null
@@ -1,176 +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.
- */
-
-var App = require('app');
-
-App.MainMirroringManageClustersController = Em.ArrayController.extend({
-  name: 'mainMirroringManageClustersController',
-
-  // link to popup object
-  popup: null,
-
-  executeTooltip: Em.I18n.t('mirroring.manageClusters.executeTooltip'),
-  readonlyTooltip: Em.I18n.t('mirroring.manageClusters.readonlyTooltip'),
-  workflowTooltip: Em.I18n.t('mirroring.manageClusters.workflowTooltip'),
-  writeTooltip: Em.I18n.t('mirroring.manageClusters.writeTooltip'),
-
-  clusters: [],
-
-  newCluster: null,
-
-  isLoaded: function () {
-    return App.router.get('mainMirroringController.isLoaded');
-  }.property('App.router.mainMirroringController.isLoaded'),
-
-  onLoad: function () {
-    if (this.get('isLoaded')) {
-      var clusters = [];
-      App.TargetCluster.find().forEach(function (cluster) {
-        var newCluster = {
-          name: cluster.get('name'),
-          execute: cluster.get('execute'),
-          workflow: cluster.get('workflow'),
-          write: cluster.get('write'),
-          readonly: cluster.get('readonly'),
-          staging: cluster.get('staging'),
-          working: cluster.get('working'),
-          temp: cluster.get('temp')
-        };
-        // Source cluster should be shown on top
-        if (cluster.get('name') === App.get('clusterName')) {
-          clusters.unshift(Ember.Object.create(newCluster));
-        } else {
-          clusters.push(Ember.Object.create(newCluster));
-        }
-      }, this);
-      this.set('clusters', clusters);
-    }
-  }.observes('isLoaded'),
-
-  selectedCluster: null,
-
-  addCluster: function () {
-    var self = this;
-    var newClusterPopup = App.ModalPopup.show({
-      header: Em.I18n.t('mirroring.manageClusters.create.cluster.popup'),
-      bodyClass: Em.View.extend({
-        controller: self,
-        templateName: require('templates/main/mirroring/create_new_cluster')
-      }),
-      classNames: ['create-target-cluster-popup'],
-      primary: Em.I18n.t('common.save'),
-      secondary: Em.I18n.t('common.cancel'),
-      onPrimary: function () {
-        this.set('disablePrimary', true);
-        self.createNewCluster();
-      },
-      willInsertElement: function () {
-        var clusterName = App.get('clusterName');
-        var newCluster = Ember.Object.create({
-          name: '',
-          execute: '',
-          workflow: '',
-          write: '',
-          readonly: '',
-          staging: '/apps/falcon/<cluster-name>/staging',
-          working: '/apps/falcon/<cluster-name>/working',
-          temp: '/tmp'
-        });
-        self.set('newCluster', newCluster);
-      },
-      didInsertElement: function () {
-        this._super();
-        this.fitHeight();
-      }
-    });
-    this.set('newClusterPopup', newClusterPopup);
-  },
-
-  removeCluster: function () {
-    var self = this;
-    var selectedClusterName = self.get('selectedCluster.name');
-    App.showConfirmationPopup(function () {
-      App.ajax.send({
-        name: 'mirroring.delete_entity',
-        sender: self,
-        data: {
-          name: selectedClusterName,
-          type: 'cluster',
-          falconServer: App.get('falconServerURL')
-        },
-        success: 'onRemoveClusterSuccess',
-        error: 'onError'
-      });
-    }, Em.I18n.t('mirroring.manageClusters.remove.confirmation').format(selectedClusterName));
-  },
-
-  onRemoveClusterSuccess: function () {
-    this.set('clusters', this.get('clusters').without(this.get('selectedCluster')));
-  },
-
-  onError: function (response) {
-    if (response && response.responseText) {
-      var errorMessage = /(?:\<message\>)((.|\n)+)(?:\<\/message\>)/.exec(response.responseText);
-      if (errorMessage.length > 1) {
-        App.showAlertPopup(Em.I18n.t('common.error'), Em.I18n.t('mirroring.manageClusters.error') + ': ' + errorMessage[1]);
-      }
-    }
-  },
-
-  createNewCluster: function () {
-    App.ajax.send({
-      name: 'mirroring.submit_entity',
-      sender: this,
-      data: {
-        type: 'cluster',
-        entity: this.formatClusterXML(this.get('newCluster')),
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onCreateClusterSuccess',
-      error: 'onCreateClusterError'
-    });
-  },
-
-  onCreateClusterSuccess: function () {
-    this.get('clusters').pushObject(this.get('newCluster'));
-    this.get('newClusterPopup').hide();
-  },
-
-  onCreateClusterError: function (response) {
-    this.set('newClusterPopup.disablePrimary', false);
-    this.onError(response);
-  },
-
-  /**
-   * Return XML-formatted string made from cluster object
-   * @param {Object} cluster - object with cluster data
-   * @return {String}
-   */
-  formatClusterXML: function (cluster) {
-    return '<?xml version="1.0"?><cluster colo="local" description="" name="' + cluster.get('name') +
-        '" xmlns="uri:falcon:cluster:0.1"><interfaces><interface type="readonly" endpoint="' + cluster.get('readonly') +
-        '" version="2.2.0" /><interface type="execute" endpoint="' + cluster.get('execute') +
-        '" version="2.2.0" /><interface type="workflow" endpoint="' + cluster.get('workflow') +
-        '" version="4.0.0" />' + '<interface type="messaging" endpoint="tcp://' + App.get('falconServerURL') + ':61616?daemon=true" version="5.1.6" />' +
-        '<interface type="write" endpoint="' + cluster.get('write') + '" version="2.2.0" />' +
-        '</interfaces><locations><location name="staging" path="' + cluster.get('staging') +
-        '" /><location name="temp" path="' + cluster.get('temp') +
-        '" /><location name="working" path="' + cluster.get('working') +
-        '" /></locations></cluster>';
-  }
-});

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/controllers/main/mirroring_controller.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/mirroring_controller.js b/ambari-web/app/controllers/main/mirroring_controller.js
deleted file mode 100644
index 4a36266..0000000
--- a/ambari-web/app/controllers/main/mirroring_controller.js
+++ /dev/null
@@ -1,377 +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.
- */
-
-var App = require('app');
-var misc = require('utils/misc');
-
-App.MainMirroringController = Em.ArrayController.extend({
-  name: 'mainMirroringController',
-
-  datasetsData: [],
-
-  // formatted data for targetClusterMapper
-  clustersData: {},
-
-  // counter for datasets load queries
-  datasetCount: 0,
-
-  // counter for target cluster load queries
-  clusterCount: 0,
-
-  selectedDataset: null,
-
-  isDatasetsLoaded: false,
-
-  isTargetClustersLoaded: false,
-
-  isRequiredServicesStarted: false,
-
-  isDatasetLoadingError: false,
-
-  actionsDisabled: function () {
-    return !this.get('isRequiredServicesStarted') || this.get('isDatasetLoadingError');
-  }.property('isRequiredServicesStarted', 'isDatasetLoadingError'),
-
-  isLoaded: function () {
-    return this.get('isDatasetsLoaded') && this.get('isTargetClustersLoaded');
-  }.property('isDatasetsLoaded', 'isTargetClustersLoaded'),
-
-  datasets: App.Dataset.find(),
-
-  loadData: function () {
-    var isRequiredServicesStarted = App.Service.find().findProperty('serviceName', 'OOZIE').get('workStatus') == 'STARTED' && App.Service.find().findProperty('serviceName', 'FALCON').get('workStatus') == 'STARTED';
-    this.set('isRequiredServicesStarted', isRequiredServicesStarted);
-    if (isRequiredServicesStarted) {
-      this.set('isDatasetLoadingError', false);
-      this.get('datasetsData').clear();
-      this.set('clustersData', {});
-      this.set('datasetCount', 0);
-      this.set('clusterCount', 0);
-      this.loadDatasets();
-      this.loadClusters();
-    } else {
-      this.set('isDatasetLoadingError', true);
-    }
-  },
-
-  loadDatasets: function () {
-    App.ajax.send({
-      name: 'mirroring.get_all_entities',
-      sender: this,
-      data: {
-        type: 'feed',
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onLoadDatasetsListSuccess',
-      error: 'onLoadDatasetsListError'
-    });
-  },
-
-  onLoadDatasetsListSuccess: function (data) {
-    var parsedData = misc.xmlToObject(data);
-    var datasets = parsedData.entities.entity;
-    if (datasets) {
-      datasets = Em.isArray(datasets) ? datasets : [datasets];
-      datasets = datasets.filter(function (dataset) {
-        return dataset.name['#text'].indexOf(App.mirroringDatasetNamePrefix) === 0;
-      });
-    }
-    if (datasets && datasets.length) {
-      this.set('datasetCount', datasets.length);
-      datasets.forEach(function (dataset) {
-        App.ajax.send({
-          name: 'mirroring.get_definition',
-          sender: this,
-          data: {
-            name: dataset.name['#text'],
-            type: 'feed',
-            status: dataset.status['#text'],
-            falconServer: App.get('falconServerURL')
-          },
-          success: 'onLoadDatasetDefinitionSuccess',
-          error: 'onLoadDatasetDefinitionError'
-        });
-      }, this);
-    } else {
-      this.set('isDatasetsLoaded', true);
-    }
-  },
-
-  onLoadDatasetsListError: function () {
-    this.set('isDatasetLoadingError', true);
-    console.error('Failed to load datasets list.');
-  },
-
-  onLoadDatasetDefinitionSuccess: function (data) {
-    var parsedData = misc.xmlToObject(data);
-    var clusters = parsedData.feed.clusters;
-    var targetCluster, sourceCluster;
-
-    if (clusters.cluster[0].locations) {
-      targetCluster = clusters.cluster[0];
-      sourceCluster = clusters.cluster[1];
-    } else {
-      targetCluster = clusters.cluster[1];
-      sourceCluster = clusters.cluster[0];
-    }
-    var datasetName = parsedData.feed['@attributes'].name.replace(App.mirroringDatasetNamePrefix, '');
-    this.get('datasetsData').push(
-        Ember.Object.create({
-          name: datasetName,
-          status: arguments[2].status,
-          sourceClusterName: sourceCluster['@attributes'].name,
-          targetClusterName: targetCluster['@attributes'].name,
-          sourceDir: parsedData.feed.locations.location['@attributes'].path,
-          targetDir: targetCluster.locations.location['@attributes'].path,
-          frequency: parsedData.feed.frequency['#text'].match(/\d+/)[0],
-          frequencyUnit: parsedData.feed.frequency['#text'].match(/\w+(?=\()/)[0],
-          scheduleEndDate: sourceCluster.validity['@attributes'].end,
-          scheduleStartDate: sourceCluster.validity['@attributes'].start,
-          instances: []
-        })
-    );
-    var currentDate = new Date(App.dateTime());
-    if (currentDate > new Date(sourceCluster.validity['@attributes'].start)) {
-      App.ajax.send({
-        name: 'mirroring.dataset.get_all_instances',
-        sender: this,
-        data: {
-          dataset: parsedData.feed['@attributes'].name,
-          formattedDatasetName: datasetName,
-          start: sourceCluster.validity['@attributes'].start,
-          end: App.router.get('mainMirroringEditDataSetController').toTZFormat(currentDate),
-          falconServer: App.get('falconServerURL')
-        },
-        success: 'onLoadDatasetInstancesSuccess',
-        error: 'onLoadDatasetsInstancesError'
-      });
-    } else {
-      this.saveDataset();
-    }
-  },
-
-  onLoadDatasetDefinitionError: function () {
-    this.set('isDatasetLoadingError', true);
-    console.error('Failed to load dataset definition.');
-  },
-
-  onLoadDatasetInstancesSuccess: function (data, sender, opts) {
-    var datasetsData = this.get('datasetsData');
-    if (data && data.instances) {
-      var datasetJobs = [];
-      data.instances.forEach(function (instance) {
-        if (instance.cluster == App.get('clusterName')) {
-          datasetJobs.push({
-            dataset: opts.formattedDatasetName,
-            id: instance.instance + '_' + opts.dataset,
-            name: instance.instance,
-            status: instance.status,
-            endTime: new Date(instance.endTime).getTime() || 0,
-            startTime: new Date(instance.startTime).getTime() || 0
-          });
-        }
-      }, this);
-      datasetsData.findProperty('name', opts.formattedDatasetName).set('instances', datasetJobs);
-    }
-    this.saveDataset();
-  },
-
-  saveDataset: function () {
-    this.set('datasetCount', this.get('datasetCount') - 1);
-    if (this.get('datasetCount') < 1) {
-      App.dataSetMapper.map(this.get('datasetsData'));
-      this.set('isDatasetsLoaded', true);
-      if (App.router.get('currentState.name') === 'index' && App.router.get('currentState.parentState.name') === 'mirroring') {
-        App.router.send('gotoShowJobs');
-      }
-    }
-  },
-
-  onLoadDatasetsInstancesError: function () {
-    console.error('Failed to load dataset instances.');
-    this.saveDataset();
-  },
-
-  loadClusters: function () {
-    App.ajax.send({
-      name: 'mirroring.get_all_entities',
-      sender: this,
-      data: {
-        type: 'cluster',
-        falconServer: App.get('falconServerURL')
-      },
-      success: 'onLoadClustersListSuccess',
-      error: 'onLoadClustersListError'
-    });
-  },
-
-  onLoadClustersListSuccess: function (data) {
-    var clustersData = this.get('clustersData');
-    clustersData.items = [];
-    var parsedData = misc.xmlToObject(data);
-    var clusters = parsedData.entities.entity;
-    if (data && clusters) {
-      clusters = Em.isArray(clusters) ? clusters : [clusters];
-      this.set('clusterCount', clusters.length);
-      clusters.mapProperty('name.#text').forEach(function (cluster) {
-        App.ajax.send({
-          name: 'mirroring.get_definition',
-          sender: this,
-          data: {
-            name: cluster,
-            type: 'cluster',
-            falconServer: App.get('falconServerURL')
-          },
-          success: 'onLoadClusterDefinitionSuccess',
-          error: 'onLoadClusterDefinitionError'
-        });
-      }, this);
-    } else {
-      this.loadDefaultFS(function (defaultFS) {
-        var clusterName = App.get('clusterName');
-        var sourceCluster = Ember.Object.create({
-          name: clusterName,
-          execute: App.HostComponent.find().findProperty('componentName', 'RESOURCEMANAGER').get('hostName') + ':8050',
-          readonly: 'hftp://' + App.HostComponent.find().findProperty('componentName', 'NAMENODE').get('hostName') + ':50070',
-          workflow: 'http://' + App.HostComponent.find().findProperty('componentName', 'OOZIE_SERVER').get('hostName') + ':11000/oozie',
-          write: defaultFS,
-          staging: '/apps/falcon/' + clusterName + '/staging',
-          working: '/apps/falcon/' + clusterName + '/working',
-          temp: '/tmp'
-        });
-        var sourceClusterData = App.router.get('mainMirroringManageClustersController').formatClusterXML(sourceCluster);
-        App.ajax.send({
-          name: 'mirroring.submit_entity',
-          sender: this,
-          data: {
-            type: 'cluster',
-            entity: sourceClusterData,
-            falconServer: App.get('falconServerURL')
-          },
-          success: 'onSourceClusterCreateSuccess',
-          error: 'onSourceClusterCreateError'
-        });
-        clustersData.items.push(sourceCluster);
-      });
-    }
-  },
-
-  /**
-   * Return fs.defaultFS config property loaded from server
-   * @return {String}
-   */
-  loadDefaultFS: function (callback) {
-    App.ajax.send({
-      name: 'config.tags',
-      sender: this,
-      data: {
-        callback: callback
-      },
-      success: 'onLoadConfigTagsSuccess',
-      error: 'onLoadConfigTagsError'
-    });
-  },
-
-  // Loaded core-site tag version
-  tag: null,
-
-  onLoadConfigTagsSuccess: function (data, opt, params) {
-    this.set('tag', data.Clusters.desired_configs['core-site'].tag);
-    App.router.get('configurationController').getConfigsByTags([
-      {
-        siteName: "core-site",
-        tagName: this.get('tag')
-      }
-    ]).done(function (configs) {
-        params.callback(configs[0].properties['fs.defaultFS']);
-      });
-  },
-
-  onLoadConfigTagsError: function (request, ajaxOptions, error, opt, params) {
-    console.error('Error in loading fs.defaultFS');
-    params.callback(null);
-  },
-
-  onLoadClustersListError: function () {
-    this.set('isDatasetLoadingError', true);
-    console.error('Failed to load clusters list.');
-  },
-
-  onSourceClusterCreateSuccess: function () {
-    App.targetClusterMapper.map(this.get('clustersData'));
-    this.set('isTargetClustersLoaded', true);
-  },
-
-  onSourceClusterCreateError: function () {
-    console.error('Error in creating source cluster entity.');
-  },
-
-  onLoadClusterDefinitionSuccess: function (data) {
-    var parsedData = misc.xmlToObject(data);
-    var clustersData = this.get('clustersData');
-    var interfaces = parsedData.cluster.interfaces.interface;
-    var locations = parsedData.cluster.locations.location;
-    var staging = locations.findProperty('@attributes.name', 'staging');
-    var working = locations.findProperty('@attributes.name', 'working');
-    var temp = locations.findProperty('@attributes.name', 'temp');
-    clustersData.items.push(
-        {
-          name: parsedData.cluster['@attributes'].name,
-          execute: interfaces.findProperty('@attributes.type', 'execute')['@attributes'].endpoint,
-          readonly: interfaces.findProperty('@attributes.type', 'readonly')['@attributes'].endpoint,
-          workflow: interfaces.findProperty('@attributes.type', 'workflow')['@attributes'].endpoint,
-          write: interfaces.findProperty('@attributes.type', 'write')['@attributes'].endpoint,
-          staging: staging && staging['@attributes'].path,
-          working: working && working['@attributes'].path,
-          temp: temp && temp['@attributes'].path
-        }
-    );
-    this.set('clusterCount', this.get('clusterCount') - 1);
-    if (this.get('clusterCount') < 1) {
-      App.targetClusterMapper.map(clustersData);
-      this.set('isTargetClustersLoaded', true);
-    }
-  },
-
-  onLoadClusterDefinitionError: function () {
-    this.set('isDatasetLoadingError', true);
-    console.error('Failed to load cluster definition.');
-  },
-
-  manageClusters: function () {
-    var self = this;
-    App.ModalPopup.show({
-      header: Em.I18n.t('mirroring.dataset.manageClusters'),
-      classNames: ['sixty-percent-width-modal'],
-      bodyClass: App.MainMirroringManageClusterstView.extend({
-        controller: App.router.get('mainMirroringManageClustersController')
-      }),
-      primary: null,
-      secondary: Em.I18n.t('common.close'),
-      hide: function () {
-        self.loadData();
-        App.router.send('gotoShowJobs');
-        this._super();
-      },
-      didInsertElement: function () {
-        this._super();
-        this.fitHeight();
-      }
-    });
-  }
-});

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/mappers.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers.js b/ambari-web/app/mappers.js
index 7bd17ea..e497943 100644
--- a/ambari-web/app/mappers.js
+++ b/ambari-web/app/mappers.js
@@ -29,7 +29,6 @@ require('mappers/users_mapper');
 require('mappers/service_mapper');
 require('mappers/service_metrics_mapper');
 require('mappers/target_cluster_mapper');
-require('mappers/dataset_mapper');
 require('mappers/component_config_mapper');
 require('mappers/components_state_mapper');
 require('mappers/service_config_version_mapper');

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/mappers/dataset_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/dataset_mapper.js b/ambari-web/app/mappers/dataset_mapper.js
deleted file mode 100644
index 0e4e9c8..0000000
--- a/ambari-web/app/mappers/dataset_mapper.js
+++ /dev/null
@@ -1,70 +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.
- */
-
-var App = require('app');
-
-App.dataSetMapper = App.QuickDataMapper.create({
-  model: App.Dataset,
-  Jobs_model: App.DataSetJob,
-  config: {
-    id: 'name',
-    name: 'name',
-    status: 'status',
-    source_cluster_name: 'sourceClusterName',
-    target_cluster_name: 'targetClusterName',
-    source_dir: 'sourceDir',
-    target_dir: 'targetDir',
-    frequency: 'frequency',
-    frequency_unit: 'frequencyUnit',
-    schedule_start_date: 'scheduleStartDate',
-    schedule_end_date: 'scheduleEndDate',
-    dataset_jobs_key: 'instances',
-    dataset_jobs_type: 'array',
-    dataset_jobs: {
-      item: 'id'
-    }
-  },
-  jobs_config: {
-    id: 'id',
-    name: 'name',
-    status : 'status',
-    start_date: 'startTime',
-    end_date: 'endTime',
-    dataset_id: 'dataset'
-  },
-
-  map: function (json) {
-    if (!this.get('model')) {
-      return;
-    }
-    if (json && json.length > 0) {
-      var datasetResults = [];
-      var dataSetJobResults = [];
-      json.forEach(function (item) {
-        item.instances.forEach(function (job) {
-          var newInstance = this.parseIt(job, this.get('jobs_config'));
-          dataSetJobResults.push(newInstance);
-        }, this);
-        var newitem = this.parseIt(item, this.get('config'));
-            datasetResults.push(newitem);
-      }, this);
-      App.store.loadMany(this.get('Jobs_model'), dataSetJobResults);
-      App.store.loadMany(this.get('model'), datasetResults);
-    }
-  }
-});

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/messages.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/messages.js b/ambari-web/app/messages.js
index 58dd940..ba0b208 100644
--- a/ambari-web/app/messages.js
+++ b/ambari-web/app/messages.js
@@ -2304,8 +2304,6 @@ Em.I18n.translations = {
   'dashboard.configHistory.info-bar.compare.button.disabled': 'You cannot compare against the same version.',
   'dashboard.configHistory.info-bar.revert.button.disabled': 'This is the current version.',
 
-
-
   'timeRange.presets.1hour':'1h',
   'timeRange.presets.12hour':'12h',
   'timeRange.presets.1day':'1d',
@@ -2321,87 +2319,6 @@ Em.I18n.translations = {
   'tableView.filters.showAll': 'Show All',
   'tableView.filters.filteredConfigVersionInfo': '{0} of {1} versions showing',
 
-  'jobs.type':'Jobs Type',
-  'jobs.type.hive':'Hive',
-  'jobs.show.up.to':'Show up to',
-  'jobs.filtered.jobs':'{0} jobs showing',
-  'jobs.filtered.clear':'clear filters',
-  'jobs.column.id':'Id',
-  'jobs.column.user':'User',
-  'jobs.column.start.time':'Start Time',
-  'jobs.column.end.time':'End Time',
-  'jobs.column.duration':'Duration',
-  'jobs.new_jobs.info':'New jobs available on server.',
-
-  'mirroring.dataset.dataSets':'Datasets',
-  'mirroring.dataset.createDataset':'Create Dataset',
-  'mirroring.dataset.editDataset':'Edit Dataset',
-  'mirroring.dataset.manageClusters':'Manage Clusters',
-  'mirroring.dataset.newDataset':'New Dataset',
-  'mirroring.dataset.selectTargetClusters':'Select Target Cluster...',
-  'mirroring.dataset.name':'Name',
-  'mirroring.dataset.type':'Type',
-  'mirroring.dataset.save': 'Save & Schedule',
-  'mirroring.dataset.sourceDir':'Source Directory',
-  'mirroring.dataset.sourceCluster':'Source Cluster',
-  'mirroring.dataset.target':'Target',
-  'mirroring.dataset.source':'Source',
-  'mirroring.dataset.targetCluster':'Target Cluster',
-  'mirroring.dataset.targetDir':'Target Directory',
-  'mirroring.dataset.schedule':'Schedule',
-  'mirroring.dataset.resume':'Resume',
-  'mirroring.dataset.suspend':'Suspend',
-  'mirroring.dataset.suspendInstance':'Suspend Instance',
-  'mirroring.dataset.resumeInstance':'Resume Instance',
-  'mirroring.dataset.killInstance':'Kill Instance',
-  'mirroring.dataset.schedule.to':'to',
-  'mirroring.dataset.schedule.repeatEvery':'Repeat every ',
-  'mirroring.dataset.addTargetCluster':'Add Target Cluster',
-  'mirroring.dataset.type.HDFS':'HDFS',
-  'mirroring.dataset.repeat.minutes':'minutes',
-  'mirroring.dataset.repeat.hours':'hours',
-  'mirroring.dataset.repeat.days':'days',
-  'mirroring.dataset.repeat.months':'months',
-  'mirroring.dataset.middayPeriod.am':'AM',
-  'mirroring.dataset.middayPeriod.pm':'PM',
-  'mirroring.dataset.entity':'entity',
-  'mirroring.dataset.services.not.started':'Both Falcon and Oozie should be started for correct work',
-  'mirroring.dataset.dataset.loading.error':'Unable to load datasets',
-  'mirroring.dataset.dataset.loading.instances':'Unable to load instances',
-
-  'mirroring.manageClusters.ambariServer':'Ambari Server',
-  'mirroring.manageClusters.interfaces':'Interfaces',
-  'mirroring.manageClusters.locations':'Locations',
-  'mirroring.manageClusters.specifyName':'Specify name for new target cluster:',
-  'mirroring.manageClusters.execute':'Execute',
-  'mirroring.manageClusters.readonly':'Readonly',
-  'mirroring.manageClusters.workflow':'Workflow',
-  'mirroring.manageClusters.write':'Write',
-  'mirroring.manageClusters.staging':'Staging',
-  'mirroring.manageClusters.working':'Working',
-  'mirroring.manageClusters.temp':'Temp',
-  'mirroring.manageClusters.error' :'Error in saving changes',
-  'mirroring.manageClusters.create.cluster.popup' :'Create Target Cluster',
-  'mirroring.manageClusters.remove.confirmation' :'Are you sure you want to delete the target cluster {0}?',
-  'mirroring.manageClusters.executeTooltip' :'The "execute" interface specifies the endpoint for ResourceManager.<br>Example: resourcemanager-host:8050',
-  'mirroring.manageClusters.readonlyTooltip' :'The "readonly" interface specifies the endpoint for Hadoop\'s HFTP protocol.<br>Example: hftp://namenode-host:50070',
-  'mirroring.manageClusters.workflowTooltip' :'The "workflow" interface specifies the endpoint for Oozie URL.<br>Example: http://oozie-host:11000/oozie',
-  'mirroring.manageClusters.writeTooltip' :'The "write" interface is the endpoint to write to HDFS. Set this to the value of fs.defaultFS (in core-site.xml) of the target cluster.<br>Example:<br>hdfs://namenode-host:8020 (non-HA); hdfs://nameservice-id:8020 (HA)',
-  'mirroring.manageClusters.locationsMessage' :'Specify the following for the target cluster, not the source cluster.',
-
-  'mirroring.table.noDatasets':'No datasets to display',
-  'mirroring.table.datasetStatus':'Status',
-  'mirroring.table.noJobs':'No instances to display',
-  'mirroring.table.jobId':'Instance ID',
-  'mirroring.table.start':'Start',
-  'mirroring.table.end':'End',
-  'mirroring.table.status':'Status',
-
-  'mirroring.required.error': 'This field is required',
-  'mirroring.dateOrder.error': 'End Date must be after Start Date',
-  'mirroring.startDate.error': 'Start Date in the past is not allowed',
-  'mirroring.required.invalidNumberError' : 'Enter valid number',
-
   'rollingrestart.dialog.title': 'Restart {0}s',
   'rollingrestart.dialog.primary': 'Trigger Rolling Restart',
   'rollingrestart.notsupported.hostComponent': 'Rolling restart not supported for {0} components',
@@ -2439,8 +2356,6 @@ Em.I18n.translations = {
   'menu.item.dashboard':'Dashboard',
   'menu.item.services':'Services',
   'menu.item.hosts':'Hosts',
-  'menu.item.mirroring':'Mirroring',
-  'menu.item.jobs':'Jobs',
   'menu.item.admin':'Admin',
   'menu.item.alerts': 'Alerts',
   'menu.item.views':'<i class="icon-th"></i>',
@@ -2459,38 +2374,6 @@ Em.I18n.translations = {
   'jobs.customDateFilter.error.date.order':'End Date must be after Start Date',
   'jobs.customDateFilter.startTime':'Start Time',
   'jobs.customDateFilter.endTime':'End Time',
-  'jobs.hive.failed':'JOB FAILED',
-  'jobs.hive.more':'show more',
-  'jobs.hive.less':'show less',
-  'jobs.hive.query':'Hive Query',
-  'jobs.hive.stages':'Stages',
-  'jobs.hive.yarnApplication':'YARN&nbsp;Application',
-  'jobs.hive.tez.tasks':'Tez Tasks',
-  'jobs.hive.tez.hdfs':'HDFS',
-  'jobs.hive.tez.localFiles':'Local Files',
-  'jobs.hive.tez.spilledRecords':'Spilled Records',
-  'jobs.hive.tez.records':'Records',
-  'jobs.hive.tez.reads':'{0} reads',
-  'jobs.hive.tez.writes':'{0} writes',
-  'jobs.hive.tez.records.count':'{0} Records',
-  'jobs.hive.tez.operatorPlan':'Operator Plan',
-  'jobs.hive.tez.dag.summary.metric':'Summary Metric',
-  'jobs.hive.tez.dag.error.noDag.title':'No Tez Information',
-  'jobs.hive.tez.dag.error.noDag.message':'This job does not identify any Tez information.',
-  'jobs.hive.tez.dag.error.noDagId.title':'No Tez Information',
-  'jobs.hive.tez.dag.error.noDagId.message':'No Tez information was found for this job. Either it is waiting to be run, or has exited unexpectedly.',
-  'jobs.hive.tez.dag.error.noDagForId.title':'No Tez Information',
-  'jobs.hive.tez.dag.error.noDagForId.message':'No details were found for the Tez ID given to this job.',
-  'jobs.hive.tez.metric.input':'Input',
-  'jobs.hive.tez.metric.output':'Output',
-  'jobs.hive.tez.metric.recordsRead':'Records Read',
-  'jobs.hive.tez.metric.recordsWrite':'Records Written',
-  'jobs.hive.tez.metric.tezTasks':'Tez Tasks',
-  'jobs.hive.tez.metric.spilledRecords':'Spilled Records',
-  'jobs.hive.tez.edge.':'Unknown',
-  'jobs.hive.tez.edge.contains':'Contains',
-  'jobs.hive.tez.edge.broadcast':'Broadcast',
-  'jobs.hive.tez.edge.scatter_gather':'Shuffle',
 
   'views.main.yourViews': 'Your Views',
   'views.main.noViews': 'No views',

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/models/dataset.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/dataset.js b/ambari-web/app/models/dataset.js
deleted file mode 100644
index 768c330..0000000
--- a/ambari-web/app/models/dataset.js
+++ /dev/null
@@ -1,92 +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.
- */
-
-
-var App = require('app');
-
-App.Dataset = DS.Model.extend({
-  name: DS.attr('string'),
-  status: DS.attr('string'),
-  sourceClusterName: DS.attr('string'),
-  targetClusterName: DS.attr('string'),
-  sourceDir: DS.attr('string'),
-  targetDir: DS.attr('string'),
-  frequency: DS.attr('string'),
-  frequencyUnit: DS.attr('string'),
-  scheduleStartDate: DS.attr('string'),
-  scheduleEndDate: DS.attr('string'),
-  datasetJobs: DS.hasMany('App.DataSetJob'),
-
-  // name with special prefix to distinguish feeds created with Ambari
-  prefixedName: function () {
-    return App.mirroringDatasetNamePrefix + this.get('name');
-  }.property('name'),
-
-  statusFormatted: function (){
-    var status = this.get('status');
-    if (status) {
-      return status.toLowerCase().capitalize();
-    }
-  }.property('status'),
-
-  isRunning: function () {
-    return this.get('status') === 'RUNNING';
-  }.property('status'),
-
-  isSuspended: function () {
-    return this.get('status') === 'SUSPENDED';
-  }.property('status'),
-
-  isSubmitted: function () {
-    return this.get('status') === 'SUBMITTED';
-  }.property('status'),
-
-  //Last succeeded date. Will be calculated later.
-  lastSucceededDate: function () {
-    return '';
-  }.property(),
-
-  //Next instance to run. Will be calculated later.
-  nextInstance: function () {
-    return '';
-  }.property(),
-
-  //Class name for dataset health status indicator
-  healthClass: function () {
-    var jobs = this.get('datasetJobs').toArray();
-    jobs = jobs.filterProperty('status', 'FAILED').concat(jobs.filterProperty('status', 'SUCCESSFUL'));
-    jobs = jobs.sortProperty('endDate');
-    return jobs.length && jobs[0].get('status') === 'FAILED' ? 'health-status-DEAD-RED' : 'health-status-LIVE';
-  }.property('datasetJobs', 'datasetJobs.@each.status'),
-
-  healthIconClass: function () {
-    switch (this.get('healthClass')) {
-      case 'health-status-LIVE':
-        return App.healthIconClassGreen;
-        break;
-      case 'health-status-DEAD-RED':
-        return App.healthIconClassRed;
-        break;
-      default:
-        return "";
-        break;
-    }
-  }.property('healthClass')
-});
-
-App.Dataset.FIXTURES = [];
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/models/dataset_job.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/dataset_job.js b/ambari-web/app/models/dataset_job.js
deleted file mode 100644
index b2dbeed..0000000
--- a/ambari-web/app/models/dataset_job.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.
- */
-
-
-var App = require('app');
-var date = require('utils/date');
-
-App.DataSetJob = DS.Model.extend({
-  name: DS.attr('string'),
-  dataset: DS.belongsTo('App.Dataset'),
-  status: DS.attr('string'),
-  startDate: DS.attr('number'),
-  endDate: DS.attr('number'),
-
-  statusFormatted: function () {
-    return this.get('status').toLowerCase().capitalize();
-  }.property('status'),
-
-  isSuspended: function () {
-    return this.get('status') === 'SUSPENDED';
-  }.property('status'),
-
-  startFormatted: function () {
-    if (this.get('startDate')) {
-      return $.timeago(this.get('startDate'));
-    }
-    return '';
-  }.property('startDate'),
-
-  endFormatted: function () {
-    if (this.get('endDate')) {
-      return $.timeago(this.get('endDate'));
-    }
-    return '';
-  }.property('endDate'),
-
-  healthClass: function () {
-    var result = 'icon-question-sign';
-    switch (this.get('status')) {
-      case 'SUCCEEDED':
-        result = 'icon-ok';
-        break;
-      case 'SUSPENDED':
-        result = 'icon-cog';
-        break;
-      case 'WAITING':
-        result = 'icon-time';
-        break;
-      case 'RUNNING':
-        result = 'icon-play';
-        break;
-      case 'KILLED':
-        result = 'icon-exclamation-sign';
-        break;
-      case 'FAILED':
-        result = 'icon-warning-sign';
-        break;
-      case 'ERROR':
-        result = 'icon-remove';
-        break;
-    }
-    return result;
-  }.property('status')
-});
-
-
-App.DataSetJob.FIXTURES = [];

http://git-wip-us.apache.org/repos/asf/ambari/blob/dd3d39a4/ambari-web/app/routes/main.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/routes/main.js b/ambari-web/app/routes/main.js
index 8b96b79..fdaedd0 100644
--- a/ambari-web/app/routes/main.js
+++ b/ambari-web/app/routes/main.js
@@ -154,70 +154,6 @@ module.exports = Em.Route.extend({
     }
   }),
 
-
-  mirroring: Em.Route.extend({
-    route: '/mirroring',
-    index: Ember.Route.extend({
-      route: '/'
-    }),
-
-    connectOutlets: function (router) {
-      router.get('mainController').connectOutlet('mainMirroring');
-    },
-
-    gotoShowJobs: function (router, context) {
-      var dataset = context || router.get('mainMirroringController.selectedDataset') || App.Dataset.find().objectAt(0);
-      if (dataset) {
-        router.transitionTo('showDatasetJobs', dataset);
-      } else {
-        router.transitionTo('index');
-      }
-    },
-
-    showDatasetJobs: Em.Route.extend({
-      route: '/:dataset_id',
-      connectOutlets: function (router, dataset) {
-        router.get('mainDatasetJobsController').set('content', dataset);
-        router.get('mainMirroringController').set('selectedDataset', dataset);
-      }
-    }),
-
-    editDatasetRoute: Em.Route.extend({
-      route: '/edit/:dataset_id',
-      connectOutlets: function (router, dataset) {
-        router.get('mainMirroringEditDataSetController').showEditPopup(dataset);
-      }
-    }),
-
-    editDataset: function (router, event) {
-      router.transitionTo('editDatasetRoute', event.view.get('dataset'));
-    },
-
-    addNewDataset: function (router) {
-      router.transitionTo('addNewDatasetRoute');
-    },
-
-    addNewDatasetRoute: Em.Route.extend({
-      route: '/dataset/add',
-      enter: function (router) {
-        var controller = router.get('mainMirroringEditDataSetController');
-        controller.showAddPopup();
-      }
-    }),
-
-    manageClustersRoute: Em.Route.extend({
-      route: '/dataset/clusters/edit',
-      enter: function (router) {
-        var controller = router.get('mainMirroringController');
-        controller.manageClusters();
-      }
-    }),
-
-    manageClusters: function (router) {
-      router.transitionTo('manageClustersRoute');
-    }
-  }),
-
   views: require('routes/views'),
 
   hosts: Em.Route.extend({


Mime
View raw message