You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by sr...@apache.org on 2014/05/14 07:17:09 UTC

[9/9] git commit: AMBARI-5754. Create Slider view entry in Ambari views dropdown. (srimanth)

AMBARI-5754. Create Slider view entry in Ambari views dropdown. (srimanth)


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

Branch: refs/heads/trunk
Commit: 7eab2dcdc78039d45b70dfdda66717a9d5f75c22
Parents: 999fba7
Author: Srimanth Gunturi <sg...@hortonworks.com>
Authored: Tue May 13 16:14:16 2014 -0700
Committer: Srimanth Gunturi <sg...@hortonworks.com>
Committed: Tue May 13 18:04:50 2014 -0700

----------------------------------------------------------------------
 contrib/views/pom.xml                           |     1 +
 contrib/views/slider/pom.xml                    |   259 +
 .../slider/src/main/resources/ui/.gitignore     |    31 +
 .../views/slider/src/main/resources/ui/LICENSE  |    21 +
 .../slider/src/main/resources/ui/README.md      |   122 +
 .../src/main/resources/ui/app/assets/404.html   |   175 +
 .../app/assets/apple-touch-icon-precomposed.png |   Bin 0 -> 1226 bytes
 .../resources/ui/app/assets/crossdomain.xml     |    31 +
 .../main/resources/ui/app/assets/favicon.ico    |   Bin 0 -> 766 bytes
 .../resources/ui/app/assets/images/.gitkeep     |     0
 .../src/main/resources/ui/app/assets/index.html |    55 +
 .../assets/javascripts/modernizr-2.6.2.min.js   |     4 +
 .../main/resources/ui/app/components/.gitkeep   |     0
 .../src/main/resources/ui/app/config/app.js     |    26 +
 .../src/main/resources/ui/app/config/env.js     |    33 +
 .../src/main/resources/ui/app/config/router.js  |    23 +
 .../src/main/resources/ui/app/config/store.js   |    23 +
 .../main/resources/ui/app/controllers/.gitkeep  |     0
 .../src/main/resources/ui/app/helpers/.gitkeep  |     0
 .../src/main/resources/ui/app/initialize.js     |    39 +
 .../src/main/resources/ui/app/models/.gitkeep   |     0
 .../main/resources/ui/app/routes/IndexRoute.js  |    25 +
 .../resources/ui/app/styles/application.styl    |    21 +
 .../resources/ui/app/templates/application.hbs  |    19 +
 .../ui/app/templates/components/.gitkeep        |     0
 .../main/resources/ui/app/templates/index.hbs   |    21 +
 .../src/main/resources/ui/app/views/.gitkeep    |     0
 .../slider/src/main/resources/ui/config.js      |    85 +
 .../main/resources/ui/envs/development/env.js   |    21 +
 .../main/resources/ui/envs/production/env.js    |    21 +
 .../arraycontroller/arraycontroller.js.hbs      |    23 +
 .../generators/arraycontroller/generator.json   |    10 +
 .../ui/generators/component/component.hbs.hbs   |    19 +
 .../ui/generators/component/component.js.hbs    |    23 +
 .../ui/generators/component/generator.json      |    14 +
 .../ui/generators/controller/controller.js.hbs  |    23 +
 .../ui/generators/controller/generator.json     |    10 +
 .../ui/generators/helper/generator.json         |    10 +
 .../ui/generators/helper/helper.js.hbs          |    24 +
 .../ui/generators/model/generator.json          |    10 +
 .../resources/ui/generators/model/model.js.hbs  |    24 +
 .../ui/generators/route/generator.json          |    10 +
 .../resources/ui/generators/route/route.js.hbs  |    25 +
 .../ui/generators/template/generator.json       |    10 +
 .../ui/generators/template/template.hbs.hbs     |    19 +
 .../resources/ui/generators/view/generator.json |    10 +
 .../resources/ui/generators/view/view.js.hbs    |    23 +
 .../slider/src/main/resources/ui/karma.conf.js  |    94 +
 .../slider/src/main/resources/ui/package.json   |    36 +
 .../views/slider/src/main/resources/ui/setup.js |    78 +
 .../ui/test/demo/demo_integration_test.js       |    24 +
 .../resources/ui/test/demo/demo_unit_test.js    |    21 +
 .../src/main/resources/ui/test/helpers.js       |    34 +
 .../vendor/scripts/common/console-polyfill.js   |    13 +
 .../ui/vendor/scripts/common/handlebars.js      |  2746 ++
 .../ui/vendor/scripts/common/jquery.js          |  8829 ++++
 .../ui/vendor/scripts/development/ember-data.js | 10620 ++++
 .../ui/vendor/scripts/development/ember.js      | 43235 +++++++++++++++++
 .../ui/vendor/scripts/production/ember-data.js  | 10626 ++++
 .../ui/vendor/scripts/production/ember.js       | 41620 ++++++++++++++++
 .../resources/ui/vendor/styles/normalize.css    |   527 +
 .../views/slider/src/main/resources/view.xml    |    24 +
 pom.xml                                         |    16 +-
 63 files changed, 119885 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/pom.xml
----------------------------------------------------------------------
diff --git a/contrib/views/pom.xml b/contrib/views/pom.xml
index 215c99a..ac3b3c0 100644
--- a/contrib/views/pom.xml
+++ b/contrib/views/pom.xml
@@ -25,6 +25,7 @@
   <modules>
     <module>files</module>
     <module>pig</module>
+    <module>slider</module>
   </modules>
   <build>
     <pluginManagement>

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/pom.xml
----------------------------------------------------------------------
diff --git a/contrib/views/slider/pom.xml b/contrib/views/slider/pom.xml
new file mode 100644
index 0000000..ffe25a4
--- /dev/null
+++ b/contrib/views/slider/pom.xml
@@ -0,0 +1,259 @@
+<!-- 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. -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>org.apache.ambari.view</groupId>
+	<artifactId>slider</artifactId>
+	<version>0.0.1-SNAPSHOT</version>
+	<name>Slider</name>
+
+	<parent>
+		<groupId>org.apache.ambari.views</groupId>
+		<artifactId>ambari-contrib-views</artifactId>
+		<version>0.1.0-SNAPSHOT</version>
+	</parent>
+
+	<dependencies>
+		<dependency>
+			<groupId>org.apache.hadoop</groupId>
+			<artifactId>hadoop-hdfs</artifactId>
+			<version>${hadoop-version}</version>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.hadoop</groupId>
+			<artifactId>hadoop-common</artifactId>
+			<version>${hadoop-version}</version>
+		</dependency>
+		<dependency>
+			<groupId>junit</groupId>
+			<artifactId>junit</artifactId>
+			<scope>test</scope>
+		</dependency>
+		<dependency>
+			<groupId>org.easymock</groupId>
+			<artifactId>easymock</artifactId>
+			<scope>test</scope>
+		</dependency>
+		<dependency>
+			<groupId>com.google.inject</groupId>
+			<artifactId>guice</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>org.glassfish.jersey.containers</groupId>
+			<artifactId>jersey-container-servlet</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>com.googlecode.json-simple</groupId>
+			<artifactId>json-simple</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.hadoop</groupId>
+			<artifactId>hadoop-minicluster</artifactId>
+			<version>${hadoop-version}</version>
+			<scope>test</scope>
+		</dependency>
+
+		<dependency>
+			<groupId>org.glassfish.jersey.test-framework</groupId>
+			<artifactId>jersey-test-framework-core</artifactId>
+			<version>2.6</version>
+			<scope>test</scope>
+		</dependency>
+		<dependency>
+			<groupId>org.glassfish.jersey.test-framework.providers</groupId>
+			<artifactId>jersey-test-framework-provider-grizzly2</artifactId>
+			<version>2.6</version>
+			<scope>test</scope>
+		</dependency>
+		<dependency>
+			<groupId>
+        org.glassfish.jersey.test-framework.providers
+        </groupId>
+			<artifactId>
+        jersey-test-framework-provider-bundle
+        </artifactId>
+			<version>2.6</version>
+			<scope>test</scope>
+			<type>pom</type>
+		</dependency>
+		<dependency>
+			<groupId>org.apache.ambari</groupId>
+			<artifactId>ambari-views</artifactId>
+		</dependency>
+		<dependency>
+			<groupId>com.google.code.gson</groupId>
+			<artifactId>gson</artifactId>
+			<version>2.2.2</version>
+		</dependency>
+	</dependencies>
+
+	<properties>
+		<hadoop-version>2.2.0</hadoop-version>
+		<nodejs.directory>${basedir}/target/nodejs</nodejs.directory>
+		<npm.version>1.4.3</npm.version>
+		<ui.directory>${basedir}/src/main/resources/ui</ui.directory>
+	</properties>
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-antrun-plugin</artifactId>
+				<version>1.7</version>
+				<executions>
+					<execution>
+						<id>clean</id>
+						<phase>clean</phase>
+						<goals>
+							<goal>run</goal>
+						</goals>
+						<configuration>
+							<target name="slider-ui-clean">
+								<exec dir="${ui.directory}" executable="rm" failonerror="false">
+									<arg value="-rf" />
+									<arg value="public" />
+								</exec>
+								<exec dir="${ui.directory}" executable="mkdir" failonerror="false">
+									<arg value="public" />
+								</exec>
+							</target>
+						</configuration>
+					</execution>
+					<execution>
+						<id>compile</id>
+						<phase>generate-resources</phase>
+						<goals>
+							<goal>run</goal>
+						</goals>
+						<configuration>
+							<target name="slider-ui-compile">
+								<exec dir="${ui.directory}" executable="npm" failonerror="false">
+									<env key="PYTHON" value="python2.6" />
+									<arg value="install" />
+								</exec>
+								<exec dir="${ui.directory}" executable="brunch"
+									failonerror="false">
+									<arg value="build" />
+								</exec>
+								<exec dir="${ui.directory}" executable="gzip" failonerror="false">
+									<arg value="public/javascripts/app.js" />
+									<arg value="public/javascripts/vendor.js" />
+									<arg value="public/stylesheets/app.css" />
+								</exec>
+							</target>
+						</configuration>
+					</execution>
+					<execution>
+						<id>test</id>
+						<phase>test</phase>
+						<goals>
+							<goal>run</goal>
+						</goals>
+						<configuration>
+							<target name="slider-ui-test">
+								<!-- <exec dir="${ui.directory}" executable="brunch" failonerror="false"> 
+									<arg value="test"/> </exec> -->
+							</target>
+						</configuration>
+					</execution>
+					<execution>
+						<id>package</id>
+						<phase>package</phase>
+						<goals>
+							<goal>run</goal>
+						</goals>
+						<configuration>
+							<target name="slider-ui-package">
+								<!-- <copy toDir="${project.build.directory}/ambari-server-${project.version}-dist/ambari-server-${project.version}/web/"> 
+									<fileset dir="${ui.directory}/../ambari-web/public"/> </copy> -->
+							</target>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+			<plugin>
+				<artifactId>maven-assembly-plugin</artifactId>
+				<executions>
+					<execution>
+						<phase>package</phase>
+						<goals>
+							<goal>attached</goal>
+						</goals>
+					</execution>
+				</executions>
+				<configuration>
+					<descriptorRefs>
+						<descriptorRef>jar-with-dependencies</descriptorRef>
+					</descriptorRefs>
+					<outputDirectory>${basedir}/target</outputDirectory>
+				</configuration>
+			</plugin>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-compiler-plugin</artifactId>
+				<version>3.1</version>
+				<configuration>
+					<source>1.6</source>
+					<target>1.6</target>
+				</configuration>
+			</plugin>
+		</plugins>
+		<resources>
+      <resource>
+        <directory>src/main/resources/</directory>
+        <filtering>false</filtering>
+        <includes>
+          <include>view.xml</include>
+        </includes>
+      </resource>
+      <resource>
+        <directory>src/main/resources/ui/public</directory>
+        <filtering>false</filtering>
+      </resource>
+		</resources>
+		<pluginManagement>
+			<plugins>
+				<!--This plugin's configuration is used to store Eclipse m2e settings 
+					only. It has no influence on the Maven build itself. -->
+				<plugin>
+					<groupId>org.eclipse.m2e</groupId>
+					<artifactId>lifecycle-mapping</artifactId>
+					<version>1.0.0</version>
+					<configuration>
+						<lifecycleMappingMetadata>
+							<pluginExecutions>
+								<pluginExecution>
+									<pluginExecutionFilter>
+										<groupId>
+											org.codehaus.mojo
+										</groupId>
+										<artifactId>
+											exec-maven-plugin
+										</artifactId>
+										<versionRange>
+											[1.2.1,)
+										</versionRange>
+										<goals>
+											<goal>exec</goal>
+										</goals>
+									</pluginExecutionFilter>
+									<action>
+										<ignore></ignore>
+									</action>
+								</pluginExecution>
+							</pluginExecutions>
+						</lifecycleMappingMetadata>
+					</configuration>
+				</plugin>
+			</plugins>
+		</pluginManagement>
+	</build>
+</project>

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/.gitignore
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/.gitignore b/contrib/views/slider/src/main/resources/ui/.gitignore
new file mode 100755
index 0000000..95fc1d7
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/.gitignore
@@ -0,0 +1,31 @@
+# Numerous always-ignore extensions
+*.diff
+*.err
+*.orig
+*.log
+*.rej
+*.swo
+*.swp
+*.vi
+*~
+*.sass-cache
+
+# OS or Editor folders
+.DS_Store
+.cache
+.project
+.settings
+.tmproj
+nbproject
+Thumbs.db
+
+# NPM packages folder.
+node_modules/
+
+# Brunch folder for temporary files.
+tmp/
+
+# Brunch output folder.
+public/
+
+bower_components/

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/LICENSE
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/LICENSE b/contrib/views/slider/src/main/resources/ui/LICENSE
new file mode 100755
index 0000000..345b31a
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/LICENSE
@@ -0,0 +1,21 @@
+All of brunch-with-ember-reloaded is licensed under the MIT license.
+
+Copyright (c) 2013 Giovanni Collazo
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/README.md
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/README.md b/contrib/views/slider/src/main/resources/ui/README.md
new file mode 100755
index 0000000..60ab137
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/README.md
@@ -0,0 +1,122 @@
+# Brunch with Ember Reloaded
+
+![build status](https://travis-ci.org/gcollazo/brunch-with-ember-reloaded.png)
+
+A [Brunch](http://brunch.io) skeleton for creating ambitious web applications using [Ember.js](http://emberjs.com). Based on the official Ember [Starter Kit](https://github.com/emberjs/starter-kit/archive/master.zip).
+
+## Demo
+
+I built a demo app using this skeleton, based on the [Building an App with Ember.js](http://www.youtube.com/watch?v=Ga99hMi7wfY) video by [Tom Dale](http://twitter.com/tomdale).
+
+**Demo**: [ember-bloggr](http://dev.gcollazo.com/ember-bloggr)
+
+**Source**: [https://github.com/gcollazo/ember-bloggr](https://github.com/gcollazo/ember-bloggr)
+
+## Versions
+- [Ember 1.5.1+pre.ff8c6bbb](http://emberjs.com)
+- [Ember Data 1.0.0-beta.7+canary.238bb5ce](https://github.com/emberjs/data)
+- [Handlebars 1.3.0](http://handlebarsjs.com)
+- [jQuery v2.0.3](http://jquery.com)
+- [HTML5 Boilerplate v4.3.0](http://html5boilerplate.com)
+
+## Other versions of this skeleton
+
+- [ES6](https://github.com/gcollazo/brunch-with-ember-reloaded/tree/es6): Experimental version using ES6 module syntax.
+- [CoffeeScript](https://github.com/gcollazo/brunch-with-ember-reloaded/tree/coffeescript)
+
+
+## Getting started
+
+Before using brunch-with-ember-reloaded you will need to install [Brunch](http://brunch.io/).
+
+```
+brunch new gh:gcollazo/brunch-with-ember-reloaded <appname>
+cd <appname>
+brunch watch -s
+```
+Open [http://localhost:3333](http://localhost:3333) on your browser.
+
+## Generators
+
+This skeleton makes use of [scaffolt](https://github.com/paulmillr/scaffolt#readme) generators to help you create common files quicker. To use first install scaffolt globally with `npm install -g scaffolt`. Then you can use the following command to generate files.
+
+```
+scaffolt model <name>             →    app/models/Name.js
+scaffolt view <name>              →    app/views/NameView.js
+scaffolt controller <name>        →    app/controllers/NameController.js
+scaffolt arraycontroller <name>   →    app/controllers/NamesController.js
+scaffolt route <name>             →    app/routes/NameRoute.js
+scaffolt template <name>          →    app/templatesname.hbs
+scaffolt component <name>         →    app/components/NameComponent.js
+                                       app/templates/components/name.hbs
+```
+
+There are more commands you can do with scaffolt and also instruction on how to create your own generators, so make sure you check out the [docs](https://github.com/paulmillr/scaffolt#readme).
+
+## Testing
+
+To run you will need [Karma](https://github.com/karma-runner) you will need to install [phantomjs](https://github.com/ariya/phantomjs). If you want to run your tests on other browsers consult the Karma docs.
+
+```
+brew update && brew install phantomjs
+```
+
+To run tests continiously as you write code and tests (for now) you must open two terminal windows.
+
+```
+brunch watch -s
+```
+
+```
+karma start
+```
+
+## Building for production
+This skeleton supports the production versions of ember and ember-data. Just build using the --production flags.
+
+```
+brunch build --production
+```
+
+You can also have modules load only when you are on a specific environment (production / development). Just add the modules you want loaded to the corresponging subdirectory of the `envs` top level directory. All modules will be imported by the module `'config/env'`.
+
+```js
+var myEnvVars = require('config/env');
+myEnvVars.envFileName.property;
+```
+
+
+## Updating Ember
+
+To updated ember.js, ember-data.js and handlebars.js to the latest stable versions, just run this command on the project root.
+
+```
+npm run update:ember
+```
+
+## Updating Skeleton
+
+This command will replace `package.json`, `README.md`, `config.js`, `karma.conf.js` and the `generators` directory with the latest version from the GitHub repository.
+
+```
+npm run update:skeleton
+npm install
+```
+If you want to update an older version of the skeleton which doesn't have support for the update:skeleton command you can get the `setup.js` by running:
+
+```
+curl https://raw.github.com/gcollazo/brunch-with-ember-reloaded/master/setup.js > setup.js
+node setup.js update:skeleton
+```
+
+## License
+
+All of brunch-with-ember-reloaded is licensed under the MIT license.
+
+Copyright (c) 2013 Giovanni Collazo
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/assets/404.html
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/assets/404.html b/contrib/views/slider/src/main/resources/ui/app/assets/404.html
new file mode 100755
index 0000000..c21980f
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/assets/404.html
@@ -0,0 +1,175 @@
+<!--
+* 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.
+-->
+
+<!DOCTYPE html>
+<html lang="en">
+    <head>
+        <meta charset="utf-8">
+        <title>Page Not Found :(</title>
+        <style>
+            ::-moz-selection {
+                background: #b3d4fc;
+                text-shadow: none;
+            }
+
+            ::selection {
+                background: #b3d4fc;
+                text-shadow: none;
+            }
+
+            html {
+                padding: 30px 10px;
+                font-size: 20px;
+                line-height: 1.4;
+                color: #737373;
+                background: #f0f0f0;
+                -webkit-text-size-adjust: 100%;
+                -ms-text-size-adjust: 100%;
+            }
+
+            html,
+            input {
+                font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+            }
+
+            body {
+                max-width: 500px;
+                _width: 500px;
+                padding: 30px 20px 50px;
+                border: 1px solid #b3b3b3;
+                border-radius: 4px;
+                margin: 0 auto;
+                box-shadow: 0 1px 10px #a7a7a7, inset 0 1px 0 #fff;
+                background: #fcfcfc;
+            }
+
+            h1 {
+                margin: 0 10px;
+                font-size: 50px;
+                text-align: center;
+            }
+
+            h1 span {
+                color: #bbb;
+            }
+
+            h3 {
+                margin: 1.5em 0 0.5em;
+            }
+
+            p {
+                margin: 1em 0;
+            }
+
+            ul {
+                padding: 0 0 0 40px;
+                margin: 1em 0;
+            }
+
+            .container {
+                max-width: 380px;
+                _width: 380px;
+                margin: 0 auto;
+            }
+
+            /* google search */
+
+            #goog-fixurl ul {
+                list-style: none;
+                padding: 0;
+                margin: 0;
+            }
+
+            #goog-fixurl form {
+                margin: 0;
+            }
+
+            #goog-wm-qt,
+            #goog-wm-sb {
+                border: 1px solid #bbb;
+                font-size: 16px;
+                line-height: normal;
+                vertical-align: top;
+                color: #444;
+                border-radius: 2px;
+            }
+
+            #goog-wm-qt {
+                width: 220px;
+                height: 20px;
+                padding: 5px;
+                margin: 5px 10px 0 0;
+                box-shadow: inset 0 1px 1px #ccc;
+            }
+
+            #goog-wm-sb {
+                display: inline-block;
+                height: 32px;
+                padding: 0 10px;
+                margin: 5px 0 0;
+                white-space: nowrap;
+                cursor: pointer;
+                background-color: #f5f5f5;
+                background-image: -webkit-linear-gradient(rgba(255,255,255,0), #f1f1f1);
+                background-image: -moz-linear-gradient(rgba(255,255,255,0), #f1f1f1);
+                background-image: -ms-linear-gradient(rgba(255,255,255,0), #f1f1f1);
+                background-image: -o-linear-gradient(rgba(255,255,255,0), #f1f1f1);
+                -webkit-appearance: none;
+                -moz-appearance: none;
+                appearance: none;
+                *overflow: visible;
+                *display: inline;
+                *zoom: 1;
+            }
+
+            #goog-wm-sb:hover,
+            #goog-wm-sb:focus {
+                border-color: #aaa;
+                box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
+                background-color: #f8f8f8;
+            }
+
+            #goog-wm-qt:hover,
+            #goog-wm-qt:focus {
+                border-color: #105cb6;
+                outline: 0;
+                color: #222;
+            }
+
+            input::-moz-focus-inner {
+                padding: 0;
+                border: 0;
+            }
+        </style>
+    </head>
+    <body>
+        <div class="container">
+            <h1>Not found <span>:(</span></h1>
+            <p>Sorry, but the page you were trying to view does not exist.</p>
+            <p>It looks like this was the result of either:</p>
+            <ul>
+                <li>a mistyped address</li>
+                <li>an out-of-date link</li>
+            </ul>
+            <script>
+                var GOOG_FIXURL_LANG = (navigator.language || '').slice(0,2),GOOG_FIXURL_SITE = location.host;
+            </script>
+            <script src="//linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>
+        </div>
+    </body>
+</html>

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/assets/apple-touch-icon-precomposed.png
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/assets/apple-touch-icon-precomposed.png b/contrib/views/slider/src/main/resources/ui/app/assets/apple-touch-icon-precomposed.png
new file mode 100755
index 0000000..1ea85ed
Binary files /dev/null and b/contrib/views/slider/src/main/resources/ui/app/assets/apple-touch-icon-precomposed.png differ

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/assets/crossdomain.xml
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/assets/crossdomain.xml b/contrib/views/slider/src/main/resources/ui/app/assets/crossdomain.xml
new file mode 100755
index 0000000..b1aa0b3
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/assets/crossdomain.xml
@@ -0,0 +1,31 @@
+<?xml version="1.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.
+-->
+<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
+<cross-domain-policy>
+    <!-- Read this: www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html -->
+
+    <!-- Most restrictive policy: -->
+    <site-control permitted-cross-domain-policies="none"/>
+
+    <!-- Least restrictive policy: -->
+    <!--
+    <site-control permitted-cross-domain-policies="all"/>
+    <allow-access-from domain="*" to-ports="*" secure="false"/>
+    <allow-http-request-headers-from domain="*" headers="*" secure="false"/>
+    -->
+</cross-domain-policy>

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/assets/favicon.ico
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/assets/favicon.ico b/contrib/views/slider/src/main/resources/ui/app/assets/favicon.ico
new file mode 100755
index 0000000..be74abd
Binary files /dev/null and b/contrib/views/slider/src/main/resources/ui/app/assets/favicon.ico differ

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/assets/images/.gitkeep
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/assets/images/.gitkeep b/contrib/views/slider/src/main/resources/ui/app/assets/images/.gitkeep
new file mode 100644
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/assets/index.html
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/assets/index.html b/contrib/views/slider/src/main/resources/ui/app/assets/index.html
new file mode 100755
index 0000000..baa534e
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/assets/index.html
@@ -0,0 +1,55 @@
+<!--
+* 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.
+-->
+
+<!DOCTYPE html>
+<!--[if lt IE 7]>      <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
+<!--[if IE 7]>         <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
+<!--[if IE 8]>         <html class="no-js lt-ie9"> <![endif]-->
+<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <title>Ember Starter Kit</title>
+    <meta name="description" content="">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <!-- Place favicon.ico and apple-touch-icon.png in the root directory -->
+
+    <link rel="stylesheet" href="./stylesheets/app.css">
+    <script src="./javascripts/modernizr-2.6.2.min.js"></script>
+  </head>
+  <body>
+    <!--[if lt IE 7]>
+      <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
+    <![endif]-->
+
+    <script src="./javascripts/vendor.js"></script>
+    <script src="./javascripts/app.js"></script>
+    <script>require('initialize');</script>
+
+    <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
+    <script>
+      (function(b,o,i,l,e,r){b.GoogleAnalyticsObject=l;b[l]||(b[l]=
+      function(){(b[l].q=b[l].q||[]).push(arguments)});b[l].l=+new Date;
+      e=o.createElement(i);r=o.getElementsByTagName(i)[0];
+      e.src='//www.google-analytics.com/analytics.js';
+      r.parentNode.insertBefore(e,r)}(window,document,'script','ga'));
+      ga('create','UA-XXXXX-X');ga('send','pageview');
+    </script>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/assets/javascripts/modernizr-2.6.2.min.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/assets/javascripts/modernizr-2.6.2.min.js b/contrib/views/slider/src/main/resources/ui/app/assets/javascripts/modernizr-2.6.2.min.js
new file mode 100755
index 0000000..f65d479
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/assets/javascripts/modernizr-2.6.2.min.js
@@ -0,0 +1,4 @@
+/* Modernizr 2.6.2 (Custom Build) | MIT & BSD
+ * Build: http://modernizr.com/download/#-fontface-backgroundsize-borderimage-borderradius-boxshadow-flexbox-hsla-multiplebgs-opacity-rgba-textshadow-cssanimations-csscolumns-generatedcontent-cssgradients-cssreflections-csstransforms-csstransforms3d-csstransitions-applicationcache-canvas-canvastext-draganddrop-hashchange-history-audio-video-indexeddb-input-inputtypes-localstorage-postmessage-sessionstorage-websockets-websqldatabase-webworkers-geolocation-inlinesvg-smil-svg-svgclippaths-touch-webgl-shiv-mq-cssclasses-addtest-prefixed-teststyles-testprop-testallprops-hasevent-prefixes-domprefixes-load
+ */
+;window.Modernizr=function(a,b,c){function D(a){j.cssText=a}function E(a,b){return D(n.join(a+";")+(b||""))}function F(a,b){return typeof a===b}function G(a,b){return!!~(""+a).indexOf(b)}function H(a,b){for(var d in a){var e=a[d];if(!G(e,"-")&&j[e]!==c)return b=="pfx"?e:!0}return!1}function I(a,b,d){for(var e in a){var f=b[a[e]];if(f!==c)return d===!1?a[e]:F(f,"function")?f.bind(d||b):f}return!1}function J(a,b,c){var d=a.charAt(0).toUpperCase()+a.slice(1),e=(a+" "+p.join(d+" ")+d).split(" ");return F(b,"string")||F(b,"undefined")?H(e,b):(e=(a+" "+q.join(d+" ")+d).split(" "),I(e,b,c))}function K(){e.input=function(c){for(var d=0,e=c.length;d<e;d++)u[c[d]]=c[d]in k;return u.list&&(u.list=!!b.createElement("datalist")&&!!a.HTMLDataListElement),u}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),e.inputtypes=function(a){for(var d=0,e,f,h,i=a.length;d<i;d++)k.setAttribute("type",f=a[d]),e=k.type!=="text",e&&(k.value=l,k.style.cssText="position:
 absolute;visibility:hidden;",/^range$/.test(f)&&k.style.WebkitAppearance!==c?(g.appendChild(k),h=b.defaultView,e=h.getComputedStyle&&h.getComputedStyle(k,null).WebkitAppearance!=="textfield"&&k.offsetHeight!==0,g.removeChild(k)):/^(search|tel)$/.test(f)||(/^(url|email)$/.test(f)?e=k.checkValidity&&k.checkValidity()===!1:e=k.value!=l)),t[a[d]]=!!e;return t}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d="2.6.2",e={},f=!0,g=b.documentElement,h="modernizr",i=b.createElement(h),j=i.style,k=b.createElement("input"),l=":)",m={}.toString,n=" -webkit- -moz- -o- -ms- ".split(" "),o="Webkit Moz O ms",p=o.split(" "),q=o.toLowerCase().split(" "),r={svg:"http://www.w3.org/2000/svg"},s={},t={},u={},v=[],w=v.slice,x,y=function(a,c,d,e){var f,i,j,k,l=b.createElement("div"),m=b.body,n=m||b.createElement("body");if(parseInt(d,10))while(d--)j=b.createElement("div"),j.id=e?e[d]:h+(d+1),l.appendChild(j);return f=["&#173;",'<style id="s',h,'">',a,
 "</style>"].join(""),l.id=h,(m?l:n).innerHTML+=f,n.appendChild(l),m||(n.style.background="",n.style.overflow="hidden",k=g.style.overflow,g.style.overflow="hidden",g.appendChild(n)),i=c(l,a),m?l.parentNode.removeChild(l):(n.parentNode.removeChild(n),g.style.overflow=k),!!i},z=function(b){var c=a.matchMedia||a.msMatchMedia;if(c)return c(b).matches;var d;return y("@media "+b+" { #"+h+" { position: absolute; } }",function(b){d=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle)["position"]=="absolute"}),d},A=function(){function d(d,e){e=e||b.createElement(a[d]||"div"),d="on"+d;var f=d in e;return f||(e.setAttribute||(e=b.createElement("div")),e.setAttribute&&e.removeAttribute&&(e.setAttribute(d,""),f=F(e[d],"function"),F(e[d],"undefined")||(e[d]=c),e.removeAttribute(d))),e=null,f}var a={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return d}(),B={}.hasOwnProperty,C;!F(B,"undefined")&&!F(B.call,"undefined")?C=function(a,b){return B.
 call(a,b)}:C=function(a,b){return b in a&&F(a.constructor.prototype[b],"undefined")},Function.prototype.bind||(Function.prototype.bind=function(b){var c=this;if(typeof c!="function")throw new TypeError;var d=w.call(arguments,1),e=function(){if(this instanceof e){var a=function(){};a.prototype=c.prototype;var f=new a,g=c.apply(f,d.concat(w.call(arguments)));return Object(g)===g?g:f}return c.apply(b,d.concat(w.call(arguments)))};return e}),s.flexbox=function(){return J("flexWrap")},s.canvas=function(){var a=b.createElement("canvas");return!!a.getContext&&!!a.getContext("2d")},s.canvastext=function(){return!!e.canvas&&!!F(b.createElement("canvas").getContext("2d").fillText,"function")},s.webgl=function(){return!!a.WebGLRenderingContext},s.touch=function(){var c;return"ontouchstart"in a||a.DocumentTouch&&b instanceof DocumentTouch?c=!0:y(["@media (",n.join("touch-enabled),("),h,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(a){c=a.offsetTop===9}),c},s.geolocation=funct
 ion(){return"geolocation"in navigator},s.postmessage=function(){return!!a.postMessage},s.websqldatabase=function(){return!!a.openDatabase},s.indexedDB=function(){return!!J("indexedDB",a)},s.hashchange=function(){return A("hashchange",a)&&(b.documentMode===c||b.documentMode>7)},s.history=function(){return!!a.history&&!!history.pushState},s.draganddrop=function(){var a=b.createElement("div");return"draggable"in a||"ondragstart"in a&&"ondrop"in a},s.websockets=function(){return"WebSocket"in a||"MozWebSocket"in a},s.rgba=function(){return D("background-color:rgba(150,255,150,.5)"),G(j.backgroundColor,"rgba")},s.hsla=function(){return D("background-color:hsla(120,40%,100%,.5)"),G(j.backgroundColor,"rgba")||G(j.backgroundColor,"hsla")},s.multiplebgs=function(){return D("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(j.background)},s.backgroundsize=function(){return J("backgroundSize")},s.borderimage=function(){return J("borderImage")},s.borderradius=fun
 ction(){return J("borderRadius")},s.boxshadow=function(){return J("boxShadow")},s.textshadow=function(){return b.createElement("div").style.textShadow===""},s.opacity=function(){return E("opacity:.55"),/^0.55$/.test(j.opacity)},s.cssanimations=function(){return J("animationName")},s.csscolumns=function(){return J("columnCount")},s.cssgradients=function(){var a="background-image:",b="gradient(linear,left top,right bottom,from(#9f9),to(white));",c="linear-gradient(left top,#9f9, white);";return D((a+"-webkit- ".split(" ").join(b+a)+n.join(c+a)).slice(0,-a.length)),G(j.backgroundImage,"gradient")},s.cssreflections=function(){return J("boxReflect")},s.csstransforms=function(){return!!J("transform")},s.csstransforms3d=function(){var a=!!J("perspective");return a&&"webkitPerspective"in g.style&&y("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(b,c){a=b.offsetLeft===9&&b.offsetHeight===3}),a},s.csstransitions=function(){return J("
 transition")},s.fontface=function(){var a;return y('@font-face {font-family:"font";src:url("https://")}',function(c,d){var e=b.getElementById("smodernizr"),f=e.sheet||e.styleSheet,g=f?f.cssRules&&f.cssRules[0]?f.cssRules[0].cssText:f.cssText||"":"";a=/src/i.test(g)&&g.indexOf(d.split(" ")[0])===0}),a},s.generatedcontent=function(){var a;return y(["#",h,"{font:0/0 a}#",h,':after{content:"',l,'";visibility:hidden;font:3px/1 a}'].join(""),function(b){a=b.offsetHeight>=3}),a},s.video=function(){var a=b.createElement("video"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),c.h264=a.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),c.webm=a.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"")}catch(d){}return c},s.audio=function(){var a=b.createElement("audio"),c=!1;try{if(c=!!a.canPlayType)c=new Boolean(c),c.ogg=a.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),c.mp3=a.canPlayTy
 pe("audio/mpeg;").replace(/^no$/,""),c.wav=a.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),c.m4a=(a.canPlayType("audio/x-m4a;")||a.canPlayType("audio/aac;")).replace(/^no$/,"")}catch(d){}return c},s.localstorage=function(){try{return localStorage.setItem(h,h),localStorage.removeItem(h),!0}catch(a){return!1}},s.sessionstorage=function(){try{return sessionStorage.setItem(h,h),sessionStorage.removeItem(h),!0}catch(a){return!1}},s.webworkers=function(){return!!a.Worker},s.applicationcache=function(){return!!a.applicationCache},s.svg=function(){return!!b.createElementNS&&!!b.createElementNS(r.svg,"svg").createSVGRect},s.inlinesvg=function(){var a=b.createElement("div");return a.innerHTML="<svg/>",(a.firstChild&&a.firstChild.namespaceURI)==r.svg},s.smil=function(){return!!b.createElementNS&&/SVGAnimate/.test(m.call(b.createElementNS(r.svg,"animate")))},s.svgclippaths=function(){return!!b.createElementNS&&/SVGClipPath/.test(m.call(b.createElementNS(r.svg,"clipPath")))};for(var L 
 in s)C(s,L)&&(x=L.toLowerCase(),e[x]=s[L](),v.push((e[x]?"":"no-")+x));return e.input||K(),e.addTest=function(a,b){if(typeof a=="object")for(var d in a)C(a,d)&&e.addTest(d,a[d]);else{a=a.toLowerCase();if(e[a]!==c)return e;b=typeof b=="function"?b():b,typeof f!="undefined"&&f&&(g.className+=" "+(b?"":"no-")+a),e[a]=b}return e},D(""),i=k=null,function(a,b){function k(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function l(){var a=r.elements;return typeof a=="string"?a.split(" "):a}function m(a){var b=i[a[g]];return b||(b={},h++,a[g]=h,i[h]=b),b}function n(a,c,f){c||(c=b);if(j)return c.createElement(a);f||(f=m(c));var g;return f.cache[a]?g=f.cache[a].cloneNode():e.test(a)?g=(f.cache[a]=f.createElem(a)).cloneNode():g=f.createElem(a),g.canHaveChildren&&!d.test(a)?f.frag.appendChild(g):g}function o(a,c){a||(a=b);if(j)return a.createDocumentFragment();c=c||m(a);var 
 d=c.frag.cloneNode(),e=0,f=l(),g=f.length;for(;e<g;e++)d.createElement(f[e]);return d}function p(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag()),a.createElement=function(c){return r.shivMethods?n(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+l().join().replace(/\w+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(r,b.frag)}function q(a){a||(a=b);var c=m(a);return r.shivCSS&&!f&&!c.hasCSS&&(c.hasCSS=!!k(a,"article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}")),j||p(a,c),a}var c=a.html5||{},d=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,e=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,f,g="_html5shiv",h=0,i={},j;(function(){try{var a=b.create
 Element("a");a.innerHTML="<xyz></xyz>",f="hidden"in a,j=a.childNodes.length==1||function(){b.createElement("a");var a=b.createDocumentFragment();return typeof a.cloneNode=="undefined"||typeof a.createDocumentFragment=="undefined"||typeof a.createElement=="undefined"}()}catch(c){f=!0,j=!0}})();var r={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,supportsUnknownElements:j,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:q,createElement:n,createDocumentFragment:o};a.html5=r,q(b)}(this,b),e._version=d,e._prefixes=n,e._domPrefixes=q,e._cssomPrefixes=p,e.mq=z,e.hasEvent=A,e.testProp=function(a){return H([a])},e.testAllProps=J,e.testStyles=y,e.prefixed=function(a,b,c){return b?J(a,b,c):J(a,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(f?" js "+v.join(" "):""),e}(this,this.document),function(a,b,c){functio
 n d(a){return"[object Function]"==o.call(a)}function e(a){return"string"==typeof a}function f(){}function g(a){return!a||"loaded"==a||"complete"==a||"uninitialized"==a}function h(){var a=p.shift();q=1,a?a.t?m(function(){("c"==a.t?B.injectCss:B.injectJs)(a.s,0,a.a,a.x,a.e,1)},0):(a(),h()):q=0}function i(a,c,d,e,f,i,j){function k(b){if(!o&&g(l.readyState)&&(u.r=o=1,!q&&h(),l.onload=l.onreadystatechange=null,b)){"img"!=a&&m(function(){t.removeChild(l)},50);for(var d in y[c])y[c].hasOwnProperty(d)&&y[c][d].onload()}}var j=j||B.errorTimeout,l=b.createElement(a),o=0,r=0,u={t:d,s:c,e:f,a:i,x:j};1===y[c]&&(r=1,y[c]=[]),"object"==a?l.data=c:(l.src=c,l.type=a),l.width=l.height="0",l.onerror=l.onload=l.onreadystatechange=function(){k.call(this,r)},p.splice(e,0,u),"img"!=a&&(r||2===y[c]?(t.insertBefore(l,s?null:n),m(k,j)):y[c].push(l))}function j(a,b,c,d,f){return q=0,b=b||"j",e(a)?i("c"==b?v:u,a,b,this.i++,c,d,f):(p.splice(this.i++,0,a),1==p.length&&h()),this}function k(){var a=B;return a.load
 er={load:j,i:0},a}var l=b.documentElement,m=a.setTimeout,n=b.getElementsByTagName("script")[0],o={}.toString,p=[],q=0,r="MozAppearance"in l.style,s=r&&!!b.createRange().compareNode,t=s?l:n.parentNode,l=a.opera&&"[object Opera]"==o.call(a.opera),l=!!b.attachEvent&&!l,u=r?"object":l?"script":"img",v=l?"script":u,w=Array.isArray||function(a){return"[object Array]"==o.call(a)},x=[],y={},z={timeout:function(a,b){return b.length&&(a.timeout=b[0]),a}},A,B;B=function(a){function b(a){var a=a.split("!"),b=x.length,c=a.pop(),d=a.length,c={url:c,origUrl:c,prefixes:a},e,f,g;for(f=0;f<d;f++)g=a[f].split("="),(e=z[g.shift()])&&(c=e(c,g));for(f=0;f<b;f++)c=x[f](c);return c}function g(a,e,f,g,h){var i=b(a),j=i.autoCallback;i.url.split(".").pop().split("?").shift(),i.bypass||(e&&(e=d(e)?e:e[a]||e[g]||e[a.split("/").pop().split("?")[0]]),i.instead?i.instead(a,e,f,g,h):(y[i.url]?i.noexec=!0:y[i.url]=1,f.load(i.url,i.forceCSS||!i.forceJS&&"css"==i.url.split(".").pop().split("?").shift()?"c":c,i.noexec,
 i.attrs,i.timeout),(d(e)||d(j))&&f.load(function(){k(),e&&e(i.origUrl,h,g),j&&j(i.origUrl,h,g),y[i.url]=2})))}function h(a,b){function c(a,c){if(a){if(e(a))c||(j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}),g(a,j,b,0,h);else if(Object(a)===a)for(n in m=function(){var b=0,c;for(c in a)a.hasOwnProperty(c)&&b++;return b}(),a)a.hasOwnProperty(n)&&(!c&&!--m&&(d(j)?j=function(){var a=[].slice.call(arguments);k.apply(this,a),l()}:j[n]=function(a){return function(){var b=[].slice.call(arguments);a&&a.apply(this,b),l()}}(k[n])),g(a[n],j,b,n,h))}else!c&&l()}var h=!!a.test,i=a.load||a.both,j=a.callback||f,k=j,l=a.complete||f,m,n;c(h?a.yep:a.nope,!!i),i&&c(i)}var i,j,l=this.yepnope.loader;if(e(a))g(a,0,l,0);else if(w(a))for(i=0;i<a.length;i++)j=a[i],e(j)?g(j,0,l,0):w(j)?B(j):Object(j)===j&&h(j,l);else Object(a)===a&&h(a,l)},B.addPrefix=function(a,b){z[a]=b},B.addFilter=function(a){x.push(a)},B.errorTimeout=1e4,null==b.readyState&&b.addEventListener&&(b.readyState="loading",b.
 addEventListener("DOMContentLoaded",A=function(){b.removeEventListener("DOMContentLoaded",A,0),b.readyState="complete"},0)),a.yepnope=k(),a.yepnope.executeStack=h,a.yepnope.injectJs=function(a,c,d,e,i,j){var k=b.createElement("script"),l,o,e=e||B.errorTimeout;k.src=a;for(o in d)k.setAttribute(o,d[o]);c=j?h:c||f,k.onreadystatechange=k.onload=function(){!l&&g(k.readyState)&&(l=1,c(),k.onload=k.onreadystatechange=null)},m(function(){l||(l=1,c(1))},e),i?k.onload():n.parentNode.insertBefore(k,n)},a.yepnope.injectCss=function(a,c,d,e,g,i){var e=b.createElement("link"),j,c=i?h:c||f;e.href=a,e.rel="stylesheet",e.type="text/css";for(j in d)e.setAttribute(j,d[j]);g||(n.parentNode.insertBefore(e,n),m(c,0))}}(this,document),Modernizr.load=function(){yepnope.apply(window,[].slice.call(arguments,0))};

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/components/.gitkeep
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/components/.gitkeep b/contrib/views/slider/src/main/resources/ui/app/components/.gitkeep
new file mode 100755
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/config/app.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/config/app.js b/contrib/views/slider/src/main/resources/ui/app/config/app.js
new file mode 100755
index 0000000..74d6d33
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/config/app.js
@@ -0,0 +1,26 @@
+/**
+ * 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.
+ */
+
+'use strict';
+
+var config = {
+    LOG_TRANSITIONS: true,
+    LOG_TRANSITIONS_INTERNAL: false
+  };
+
+module.exports = Ember.Application.create(config);

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/config/env.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/config/env.js b/contrib/views/slider/src/main/resources/ui/app/config/env.js
new file mode 100644
index 0000000..363ce0e
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/config/env.js
@@ -0,0 +1,33 @@
+/**
+ * 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.
+ */
+
+'use strict';
+
+module.exports = (function() {
+  var envObject = {};
+  var moduleNames = window.require.list().filter(function(module) {
+    return new RegExp('^envs/').test(module);
+  });
+
+  moduleNames.forEach(function(module) {
+    var key = module.split('/').reverse()[0];
+    envObject[key] = require(module);
+  });
+
+  return envObject;
+}());

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/config/router.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/config/router.js b/contrib/views/slider/src/main/resources/ui/app/config/router.js
new file mode 100755
index 0000000..52485b9
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/config/router.js
@@ -0,0 +1,23 @@
+/**
+ * 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.
+ */
+
+'use strict';
+
+module.exports = App.Router.map(function() {
+    // this.resource('about');
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/config/store.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/config/store.js b/contrib/views/slider/src/main/resources/ui/app/config/store.js
new file mode 100755
index 0000000..a77aaf4
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/config/store.js
@@ -0,0 +1,23 @@
+/**
+ * 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.
+ */
+
+'use strict';
+
+module.exports = App.Store = DS.Store.extend({
+  revision: 13
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/controllers/.gitkeep
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/controllers/.gitkeep b/contrib/views/slider/src/main/resources/ui/app/controllers/.gitkeep
new file mode 100755
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/helpers/.gitkeep
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/helpers/.gitkeep b/contrib/views/slider/src/main/resources/ui/app/helpers/.gitkeep
new file mode 100755
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/initialize.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/initialize.js b/contrib/views/slider/src/main/resources/ui/app/initialize.js
new file mode 100755
index 0000000..5971d2c
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/initialize.js
@@ -0,0 +1,39 @@
+/**
+ * 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.
+ */
+
+'use strict';
+
+window.App = require('config/app');
+require('config/router');
+require('config/store');
+
+// Load all modules in order automagically. Ember likes things to work this
+// way so everything is in the App.* namespace.
+var folderOrder = [
+    'initializers', 'mixins', 'routes', 'models',
+    'views', 'controllers', 'helpers',
+    'templates', 'components'
+  ];
+
+folderOrder.forEach(function(folder) {
+  window.require.list().filter(function(module) {
+    return new RegExp('^' + folder + '/').test(module);
+  }).forEach(function(module) {
+    require(module);
+  });
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/models/.gitkeep
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/models/.gitkeep b/contrib/views/slider/src/main/resources/ui/app/models/.gitkeep
new file mode 100755
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/routes/IndexRoute.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/routes/IndexRoute.js b/contrib/views/slider/src/main/resources/ui/app/routes/IndexRoute.js
new file mode 100755
index 0000000..a24ec1a
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/routes/IndexRoute.js
@@ -0,0 +1,25 @@
+/**
+ * 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.
+ */
+
+'use strict';
+
+module.exports = App.IndexRoute = Ember.Route.extend({
+  model: function() {
+    return ['red', 'yellow', 'blue'];
+  }
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/styles/application.styl
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/styles/application.styl b/contrib/views/slider/src/main/resources/ui/app/styles/application.styl
new file mode 100755
index 0000000..7943d4e
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/styles/application.styl
@@ -0,0 +1,21 @@
+/*
+ * 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 'nib'
+
+html, body
+  margin 20px

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/templates/application.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/application.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/application.hbs
new file mode 100755
index 0000000..b776fd2
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/templates/application.hbs
@@ -0,0 +1,19 @@
+{{!
+* 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.
+}}
+
+{{outlet}}

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/templates/components/.gitkeep
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/components/.gitkeep b/contrib/views/slider/src/main/resources/ui/app/templates/components/.gitkeep
new file mode 100755
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/templates/index.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/templates/index.hbs b/contrib/views/slider/src/main/resources/ui/app/templates/index.hbs
new file mode 100755
index 0000000..b466873
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/app/templates/index.hbs
@@ -0,0 +1,21 @@
+{{!
+* 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.
+}}
+
+<div class="header">
+Slider Apps
+</div>

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/app/views/.gitkeep
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/app/views/.gitkeep b/contrib/views/slider/src/main/resources/ui/app/views/.gitkeep
new file mode 100755
index 0000000..e69de29

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/config.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/config.js b/contrib/views/slider/src/main/resources/ui/config.js
new file mode 100755
index 0000000..d019cf2
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/config.js
@@ -0,0 +1,85 @@
+/**
+ * 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.
+ */
+
+exports.config = {
+  paths: {
+    watched: ['app', 'envs', 'vendor', 'test']
+  },
+  files: {
+    javascripts: {
+      joinTo: {
+        'javascripts/app.js': /^(app|envs\/development)/,
+        'javascripts/vendor.js': /^(vendor\/scripts\/(common|development)|vendor\\scripts\\(common|development))/
+      },
+      order: {
+        before: [
+          'vendor/scripts/common/console-polyfill.js',
+          'vendor/scripts/common/jquery.js',
+          'vendor/scripts/common/handlebars.js',
+          'vendor/scripts/development/ember.js',
+          'vendor/scripts/development/ember-data.js'
+        ]
+      }
+    },
+    stylesheets: {
+      joinTo: {
+        'stylesheets/app.css': /^(app|vendor)/
+      },
+      order: {
+        before: ['vendor/styles/normalize.css']
+      }
+    },
+    templates: {
+      precompile: true,
+      root: 'templates',
+      joinTo: {
+        'javascripts/app.js': /^app/
+      }
+    }
+  },
+  overrides: {
+
+    // Production Settings
+    production: {
+      files: {
+        javascripts: {
+          joinTo: {
+            'javascripts/app.js': /^(app|envs\/production)/,
+            'javascripts/vendor.js': /^(vendor\/scripts\/(common|production)|vendor\\scripts\\(common|production))/
+          },
+          order: {
+            before: [
+              'vendor/scripts/common/console-polyfill.js',
+              'vendor/scripts/common/jquery.js',
+              'vendor/scripts/common/handlebars.js',
+              'vendor/scripts/production/ember.js',
+              'vendor/scripts/production/ember-data.js'
+            ]
+          }
+        }
+      },
+      optimize: true,
+      sourceMaps: false,
+      plugins: {
+        autoReload: {
+          enabled: false
+        }
+      }
+    }
+  }
+};

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/envs/development/env.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/envs/development/env.js b/contrib/views/slider/src/main/resources/ui/envs/development/env.js
new file mode 100644
index 0000000..0af97c1
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/envs/development/env.js
@@ -0,0 +1,21 @@
+/**
+ * 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.
+ */
+
+'use strict';
+
+module.exports = 'development';

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/envs/production/env.js
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/envs/production/env.js b/contrib/views/slider/src/main/resources/ui/envs/production/env.js
new file mode 100644
index 0000000..addbc80
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/envs/production/env.js
@@ -0,0 +1,21 @@
+/**
+ * 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.
+ */
+
+'use strict';
+
+module.exports = 'production';

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/arraycontroller/arraycontroller.js.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/arraycontroller/arraycontroller.js.hbs b/contrib/views/slider/src/main/resources/ui/generators/arraycontroller/arraycontroller.js.hbs
new file mode 100644
index 0000000..4934e09
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/arraycontroller/arraycontroller.js.hbs
@@ -0,0 +1,23 @@
+{{!
+* 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.
+}}
+
+'use strict';
+
+module.exports = App.{{#camelize}}{{pluralName}}{{/camelize}}Controller = Ember.ArrayController.extend({
+  content:[]
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/arraycontroller/generator.json
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/arraycontroller/generator.json b/contrib/views/slider/src/main/resources/ui/generators/arraycontroller/generator.json
new file mode 100755
index 0000000..1f13804
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/arraycontroller/generator.json
@@ -0,0 +1,10 @@
+{
+  "name": "arraycontroller",
+  "files": [
+    {
+      "from": "arraycontroller.js.hbs",
+      "to": "app/controllers/{{#camelize}}{{pluralName}}{{/camelize}}Controller.js"
+    }
+  ],
+  "dependencies": []
+}

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/component/component.hbs.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/component/component.hbs.hbs b/contrib/views/slider/src/main/resources/ui/generators/component/component.hbs.hbs
new file mode 100755
index 0000000..e1667a5
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/component/component.hbs.hbs
@@ -0,0 +1,19 @@
+{{!
+* 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.
+}}
+
+<p>{{#camelize}}{{name}}{{/camelize}}Component</p>

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/component/component.js.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/component/component.js.hbs b/contrib/views/slider/src/main/resources/ui/generators/component/component.js.hbs
new file mode 100755
index 0000000..14903e8
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/component/component.js.hbs
@@ -0,0 +1,23 @@
+{{!
+* 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.
+}}
+
+'use strict';
+
+module.exports = App.{{#camelize}}{{name}}{{/camelize}}Component = Ember.Component.extend({
+
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/component/generator.json
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/component/generator.json b/contrib/views/slider/src/main/resources/ui/generators/component/generator.json
new file mode 100755
index 0000000..a9f87b5
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/component/generator.json
@@ -0,0 +1,14 @@
+{
+  "name": "component",
+  "files": [
+    {
+      "from": "component.js.hbs",
+      "to": "app/components/{{#camelize}}{{name}}{{/camelize}}Component.js"
+    },
+    {
+      "from": "component.hbs.hbs",
+      "to": "app/templates/components/{{name}}.hbs"
+    }
+  ],
+  "dependencies": []
+}

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/controller/controller.js.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/controller/controller.js.hbs b/contrib/views/slider/src/main/resources/ui/generators/controller/controller.js.hbs
new file mode 100755
index 0000000..83d0f9e
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/controller/controller.js.hbs
@@ -0,0 +1,23 @@
+{{!
+* 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.
+}}
+
+'use strict';
+
+module.exports = App.{{#camelize}}{{name}}{{/camelize}}Controller = Ember.ObjectController.extend({
+
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/controller/generator.json
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/controller/generator.json b/contrib/views/slider/src/main/resources/ui/generators/controller/generator.json
new file mode 100755
index 0000000..9f6a1fd
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/controller/generator.json
@@ -0,0 +1,10 @@
+{
+  "name": "controller",
+  "files": [
+    {
+      "from": "controller.js.hbs",
+      "to": "app/controllers/{{#camelize}}{{name}}{{/camelize}}Controller.js"
+    }
+  ],
+  "dependencies": []
+}

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/helper/generator.json
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/helper/generator.json b/contrib/views/slider/src/main/resources/ui/generators/helper/generator.json
new file mode 100755
index 0000000..181fc9f
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/helper/generator.json
@@ -0,0 +1,10 @@
+{
+  "name": "helper",
+  "files": [
+    {
+      "from": "helper.js.hbs",
+      "to": "app/helpers/{{name}}.js"
+    }
+  ],
+  "dependencies": []
+}

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/helper/helper.js.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/helper/helper.js.hbs b/contrib/views/slider/src/main/resources/ui/generators/helper/helper.js.hbs
new file mode 100755
index 0000000..c010966
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/helper/helper.js.hbs
@@ -0,0 +1,24 @@
+{{!
+* 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.
+}}
+
+'use strict';
+
+module.exports = Ember.Handlebars.helper('{{name}}', function(value, options) {
+
+});
+

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/model/generator.json
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/model/generator.json b/contrib/views/slider/src/main/resources/ui/generators/model/generator.json
new file mode 100755
index 0000000..268ff5b
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/model/generator.json
@@ -0,0 +1,10 @@
+{
+  "name": "model",
+  "files": [
+    {
+      "from": "model.js.hbs",
+      "to": "app/models/{{#camelize}}{{name}}{{/camelize}}.js"
+    }
+  ],
+  "dependencies": []
+}

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/model/model.js.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/model/model.js.hbs b/contrib/views/slider/src/main/resources/ui/generators/model/model.js.hbs
new file mode 100755
index 0000000..1a02716
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/model/model.js.hbs
@@ -0,0 +1,24 @@
+{{!
+* 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.
+}}
+
+'use strict';
+
+module.exports = App.{{#camelize}}{{name}}{{/camelize}} = DS.Model.extend({
+
+});
+

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/route/generator.json
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/route/generator.json b/contrib/views/slider/src/main/resources/ui/generators/route/generator.json
new file mode 100755
index 0000000..aa6d3ff
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/route/generator.json
@@ -0,0 +1,10 @@
+{
+  "name": "route",
+  "files": [
+    {
+      "from": "route.js.hbs",
+      "to": "app/routes/{{#camelize}}{{name}}{{/camelize}}Route.js"
+    }
+  ],
+  "dependencies": []
+}

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/route/route.js.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/route/route.js.hbs b/contrib/views/slider/src/main/resources/ui/generators/route/route.js.hbs
new file mode 100755
index 0000000..b43d238
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/route/route.js.hbs
@@ -0,0 +1,25 @@
+{{!
+* 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.
+}}
+
+'use strict';
+
+module.exports = App.{{#camelize}}{{name}}{{/camelize}}Route = Ember.Route.extend({
+  model: function() {
+
+  }
+});

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/template/generator.json
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/template/generator.json b/contrib/views/slider/src/main/resources/ui/generators/template/generator.json
new file mode 100755
index 0000000..4a8cf02
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/template/generator.json
@@ -0,0 +1,10 @@
+{
+  "name": "template",
+  "files": [
+    {
+      "from": "template.hbs.hbs",
+      "to": "app/templates/{{name}}.hbs"
+    }
+  ],
+  "dependencies": []
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/template/template.hbs.hbs
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/template/template.hbs.hbs b/contrib/views/slider/src/main/resources/ui/generators/template/template.hbs.hbs
new file mode 100755
index 0000000..2cd42e4
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/template/template.hbs.hbs
@@ -0,0 +1,19 @@
+{{!
+* 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.
+}}
+
+<p>{{name}} Template</p>

http://git-wip-us.apache.org/repos/asf/ambari/blob/7eab2dcd/contrib/views/slider/src/main/resources/ui/generators/view/generator.json
----------------------------------------------------------------------
diff --git a/contrib/views/slider/src/main/resources/ui/generators/view/generator.json b/contrib/views/slider/src/main/resources/ui/generators/view/generator.json
new file mode 100755
index 0000000..88267ff
--- /dev/null
+++ b/contrib/views/slider/src/main/resources/ui/generators/view/generator.json
@@ -0,0 +1,10 @@
+{
+  "name": "view",
+  "files": [
+    {
+      "from": "view.js.hbs",
+      "to": "app/views/{{#camelize}}{{name}}{{/camelize}}View.js"
+    }
+  ],
+  "dependencies": []
+}