http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/models/file-resource.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/file-resource.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/models/file-resource.js deleted file mode 100644 index 47f4911..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/file-resource.js +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import DS from 'ember-data'; - -export default DS.Model.extend({ - name: DS.attr(), - path: DS.attr(), - owner: DS.attr() -});
http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/models/file.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/file.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/models/file.js deleted file mode 100644 index c13d4e1..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/file.js +++ /dev/null @@ -1,26 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import DS from 'ember-data'; - -export default DS.Model.extend({ - fileContent: DS.attr(), - hasNext: DS.attr(), - page: DS.attr('number'), - pageCount: DS.attr() -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/models/job.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/job.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/models/job.js deleted file mode 100644 index 185f512..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/job.js +++ /dev/null @@ -1,55 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import DS from 'ember-data'; - -export default DS.Model.extend({ - title: DS.attr('string'), - queryId: DS.attr(), - hiveQueryId: DS.attr('string'), - queryFile: DS.attr('string'), - owner: DS.attr('string'), - dataBase: DS.attr('string'), - duration: DS.attr(), - status: DS.attr('string'), - statusMessage: DS.attr('string'), - dateSubmitted: DS.attr('date'), - forcedContent: DS.attr('string'), - logFile: DS.attr('string'), - dagName: DS.attr('string'), - dagId: DS.attr('string'), - sessionTag: DS.attr('string'), - page: DS.attr(), - statusDir: DS.attr('string'), - applicationId: DS.attr(), - referrer: DS.attr('string'), - confFile: DS.attr('string'), - globalSettings: DS.attr('string'), - - dateSubmittedTimestamp: function () { - var date = this.get('dateSubmitted'); - - return date; // ? date * 1000 : date; now dateSubmitted itself is in miliseconds. so conversion not required. - }.property('dateSubmitted'), - - uppercaseStatus: function () { - var status = this.get('status'); - - return status ? status.toUpperCase() : status; - }.property('status') -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/models/saved-query.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/saved-query.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/models/saved-query.js deleted file mode 100644 index 44536af..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/saved-query.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import DS from 'ember-data'; - -var Model = DS.Model.extend({ - dataBase: DS.attr('string'), - title: DS.attr('string'), - queryFile: DS.attr('string'), - owner: DS.attr('string'), - shortQuery: DS.attr('string') -}); - -export default Model; http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/models/udf.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/udf.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/models/udf.js deleted file mode 100644 index c64221e..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/models/udf.js +++ /dev/null @@ -1,27 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import DS from 'ember-data'; -import constants from 'hive/utils/constants'; - -export default DS.Model.extend({ - name: DS.attr(), - classname: DS.attr(), - fileResource: DS.belongsTo(constants.namingConventions.fileResource, { async: true }), - owner: DS.attr() -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/router.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/router.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/router.js deleted file mode 100644 index 382f1eb..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/router.js +++ /dev/null @@ -1,50 +0,0 @@ - /** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import config from './config/environment'; -import constants from 'hive/utils/constants'; - -var Router = Ember.Router.extend({ - location: config.locationType -}); - -Router.map(function () { - var savedQueryPath = constants.namingConventions.routes.queries + '/:' + constants.namingConventions.savedQuery + '_id'; - var historyQueryPath = constants.namingConventions.routes.history + '/:' + constants.namingConventions.job + '_id'; - - this.route(constants.namingConventions.routes.queries); - this.route(constants.namingConventions.routes.history); - this.route(constants.namingConventions.routes.udfs); - this.route(constants.namingConventions.routes.uploadTable); - - this.resource(constants.namingConventions.routes.index, { path: '/' }, function () { - this.route(constants.namingConventions.routes.savedQuery, { path: savedQueryPath}); - this.route(constants.namingConventions.routes.historyQuery, { path: historyQueryPath}, function () { - this.route(constants.namingConventions.routes.logs); - this.route(constants.namingConventions.routes.results); - this.route(constants.namingConventions.routes.explain); - }); - }); - - this.route('loading'); - this.route('splash'); - -}); - -export default Router; http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/.gitkeep ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/.gitkeep b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/.gitkeep deleted file mode 100644 index e69de29..0000000 http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/application.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/application.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/application.js deleted file mode 100644 index 096ce30..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/application.js +++ /dev/null @@ -1,89 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Route.extend({ - - beforeModel: function () { - this.transitionTo('splash'); - }, - - notifyService: Ember.inject.service(constants.namingConventions.notify), - - setupController: function (controller, model) { - var self = this; - - this.store.find(constants.namingConventions.udf).then(function (udfs) { - self.controllerFor(constants.namingConventions.udfs).set('udfs', udfs); - }, function (error) { - self.get('notifyService').error(error); - }); - }, - - actions: { - openModal: function (modalTemplate, options) { - this.controllerFor(modalTemplate).setProperties({ - content: options.content || {}, - message: options.message, - heading: options.heading, - text: options.text, - type: options.type || "text", - defer: options.defer - }); - - return this.render(modalTemplate, { - into: 'application', - outlet: 'modal' - }); - }, - - closeModal: function () { - return this.disconnectOutlet({ - outlet: 'modal', - parentView: 'application' - }); - }, - - openOverlay: function (overlay) { - return this.render(overlay.template, { - outlet: overlay.outlet, - into: overlay.into - }); - }, - - closeOverlay: function (overlay) { - return this.disconnectOutlet({ - outlet: overlay.outlet, - parentView: overlay.into - }); - }, - - removeNotification: function (notification) { - this.get('notifyService').removeNotification(notification); - }, - - willTransition: function(transition) { - // close active overlay if we transition - this.controllerFor('queryTabs').setDefaultActive(); - - return transition; - } - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/history.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/history.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/history.js deleted file mode 100644 index e9fcf88..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/history.js +++ /dev/null @@ -1,29 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; - -export default Ember.Route.extend({ - deactivate: function () { - this.controller.onUnloadRoute(); - }, - - setupController: function (controller, model) { - this.controller.onLoadRoute(); - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/explain.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/explain.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/explain.js deleted file mode 100644 index 742f7a8..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/explain.js +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Route.extend({ - setupController: function (controller, model) { - this.controllerFor(constants.namingConventions.openQueries).updateTabSubroute(model, constants.namingConventions.subroutes.jobExplain); - - this.controllerFor(constants.namingConventions.routes.index).set('model', model); - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/index.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/index.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/index.js deleted file mode 100644 index 5959938..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/index.js +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; -import utils from 'hive/utils/functions'; - -export default Ember.Route.extend({ - setupController: function (controller, model) { - var subroute; - var existingTab = this.controllerFor(constants.namingConventions.openQueries).getTabForModel(model); - - if (existingTab) { - subroute = existingTab.get('subroute'); - } - - // filter out hdfs jobs - if (utils.isInteger(model.get('id'))) { - if (subroute) { - this.transitionTo(subroute, model); - } else { - this.transitionTo(constants.namingConventions.subroutes.jobLogs, model); - } - } else { - this.transitionTo(constants.namingConventions.subroutes.historyQuery, model); - this.controllerFor(constants.namingConventions.routes.index).set('model', model); - } - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/logs.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/logs.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/logs.js deleted file mode 100644 index 954f725..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/logs.js +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Route.extend({ - setupController: function (controller, model) { - this.controllerFor(constants.namingConventions.openQueries).updateTabSubroute(model, constants.namingConventions.subroutes.jobLogs); - - this.controllerFor(constants.namingConventions.routes.index).set('model', model); - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/results.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/results.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/results.js deleted file mode 100644 index f1593c5..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/history-query/results.js +++ /dev/null @@ -1,28 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Route.extend({ - setupController: function (controller, model) { - this.controllerFor(constants.namingConventions.openQueries).updateTabSubroute(model, constants.namingConventions.subroutes.jobResults); - - this.controllerFor(constants.namingConventions.routes.index).set('model', model); - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/index.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/index.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/index.js deleted file mode 100644 index 120a102..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/index.js +++ /dev/null @@ -1,36 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Route.extend({ - beforeModel: function () { - var model = this.controllerFor(constants.namingConventions.routes.index).get('model'); - - if (model && !model.get('isDeleted')) { - if (model.get('constructor.typeKey') === constants.namingConventions.job) { - this.transitionTo(constants.namingConventions.subroutes.historyQuery, model); - } else { - this.transitionTo(constants.namingConventions.subroutes.savedQuery, model); - } - } else { - this.controllerFor(constants.namingConventions.openQueries).navigateToLastTab(); - } - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/saved-query.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/saved-query.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/saved-query.js deleted file mode 100644 index 0366b0d..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/index/saved-query.js +++ /dev/null @@ -1,43 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Route.extend({ - setupController: function (controller, model) { - // settings modify fileContent to extract the settings - // when you load a saved query use the original fileContent - // this.store.find('file', model.get('queryFile')) - // .then(function(queryFile) { - // var changes = queryFile.changedAttributes(); - // if (changes.fileContent && changes.fileContent[0]) { - // queryFile.set('fileContent', changes.fileContent[0]); - // } - // }); - - this.controllerFor(constants.namingConventions.routes.index).set('model', model); - }, - - actions: { - error: function () { - this.store.unloadAll(constants.namingConventions.savedQuery); - this.transitionTo(constants.namingConventions.routes.index); - } - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/loading.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/loading.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/loading.js deleted file mode 100644 index 8719170..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/loading.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; - -export default Ember.Route.extend({ -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/queries.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/queries.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/queries.js deleted file mode 100644 index 29e144b..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/queries.js +++ /dev/null @@ -1,40 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Route.extend({ - notifyService: Ember.inject.service(constants.namingConventions.notify), - - model: function () { - var self = this; - - return this.store.find(constants.namingConventions.savedQuery).catch(function (error) { - self.get('notifyService').error(error); - }); - }, - - setupController: function (controller, model) { - if (!model) { - return; - } - - controller.set('queries', model); - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/splash.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/splash.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/splash.js deleted file mode 100644 index 463a1c6..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/splash.js +++ /dev/null @@ -1,61 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; - -export default Ember.Route.extend({ - - model: function() { - return Ember.Object.create({ - hdfsTest: null, - hdfsTestDone: null, - hiveserverTest: null, - hiveserverTestDone: null, - atsTest: null, - atsTestDone: null, - userhomeTest: null, - userhomeTestDone: null, - percent: 0 - }); - }, - - setupController: function(controller, model) { - - if (!model) { - return; - } - - controller.set('model', model); - var self = this; - controller.startTests().then(function() { - - if (model.get("hiveserverTest") && model.get("hdfsTest") && model.get("atsTest") && model.get("userhomeTest")) { - Ember.run.later(this, function() { - self.send('transition'); - }, 2000); - } - }); - }, - - actions: { - transition: function() { - this.transitionTo('index'); - } - } - -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/udfs.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/udfs.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/udfs.js deleted file mode 100644 index 5a96cd6..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/routes/udfs.js +++ /dev/null @@ -1,36 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Route.extend({ - notifyService: Ember.inject.service(constants.namingConventions.notify), - - setupController: function (controller, model) { - this._super(); - - var self = this; - - this.store.find(constants.namingConventions.fileResource).then(function (fileResources) { - controller.set('fileResources', fileResources); - }).catch(function (error) { - self.get('notifyService').error(error); - });; - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/serializers/database.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/serializers/database.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/serializers/database.js deleted file mode 100644 index f598b20..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/serializers/database.js +++ /dev/null @@ -1,41 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import DS from 'ember-data'; - -export default DS.JSONSerializer.extend({ - extractArray: function (store, primaryType, rawPayload) { - var databases = rawPayload.databases.map(function (database) { - return { - id: database, - name: database - }; - }); - - var payload = { databases: databases }; - return this._super(store, primaryType, payload); - }, - - normalizePayload: function (payload) { - var normalized = payload.databases.map(function (database) { - return database; - }); - - return this._super(normalized); - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/serializers/file.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/serializers/file.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/serializers/file.js deleted file mode 100644 index 416db0c..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/serializers/file.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. - */ - -import DS from 'ember-data'; - -export default DS.RESTSerializer.extend({ - primaryKey: 'filePath' -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/database.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/database.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/database.js deleted file mode 100644 index 2a6f5d4..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/database.js +++ /dev/null @@ -1,243 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Service.extend({ - store: Ember.inject.service(), - - pageCount: 10, - selectedDatabase: null, - selectedTables: null, - databases: [], - - init: function () { - this._super(); - - var databaseAdapter = this.container.lookup('adapter:database'); - var baseUrl = databaseAdapter.buildURL() + '/' + - databaseAdapter.pathForType(constants.namingConventions.database) + '/'; - - this.set('baseUrl', baseUrl); - }, - - getDatabases: function () { - var defer = Ember.RSVP.defer(); - var self = this; - - this.get('store').unloadAll(constants.namingConventions.database); - this.get('store').fetchAll(constants.namingConventions.database).then(function (databases) { - self.set('databases', databases); - defer.resolve(databases); - }, function (error) { - defer.reject(error); - }) - - return defer.promise; - }, - - // This will do a ajax call to fetch the current database by by-passing the store. - // As we want to retain the current state of databases in store and just want to - // find the current databases in the server - getDatabasesFromServer: function() { - var defer = Ember.RSVP.defer(); - var url = this.get('baseUrl'); - Ember.$.getJSON(url).then(function(data) { - defer.resolve(data.databases); - }, function(err) { - defer.reject(err); - }); - return defer.promise; - }, - - setDatabaseByName: function (name) { - var database = this.databases.findBy('name', name); - - if (database) { - this.set('selectedDatabase', database); - } - }, - - getColumnsPage: function (databaseName, table, searchTerm, firstSearchPage) { - var defer = Ember.RSVP.defer(); - - var url = this.get('baseUrl') + - databaseName + - '/table/' + - table.get('name'); - - url += '.page?searchId&count=' + this.get('pageCount'); - url += '&columns=3,5,6,8'; - - if (searchTerm) { - url += '&searchId=searchColumns' + '&like=' + searchTerm; - - if (firstSearchPage) { - url += '&first=true'; - } - } else if (!table.get('columns.length')) { - url += '&first=true'; - } - - Ember.$.getJSON(url).then(function (data) { - Ember.run(function () { - var columns; - - columns = data.rows.map(function (row) { - return Ember.Object.create({ - name: row[0], - type: row[1], - precision : row[2], - scale : row[3] - }); - }); - - defer.resolve({ - columns: columns, - hasNext: data.hasNext - }); - }); - }, function (err) { - defer.reject(err); - }); - - return defer.promise; - }, - - getTablesPage: function (database, searchTerm, firstSearchPage) { - var defer = Ember.RSVP.defer(), - url = this.get('baseUrl') + - database.get('name') + - '/table.page?count='; - - url += this.get('pageCount'); - - if (searchTerm) { - url += '&searchId=searchTables' + '&like=' + searchTerm; - - if (firstSearchPage) { - url += '&first=true'; - } - } else if (!database.get('tables.length')) { - url += '&first=true'; - } - - Ember.$.getJSON(url).then(function (data) { - var tables; - - tables = data.rows.map(function (row) { - return Ember.Object.create({ - name: row[0] - }); - }); - - defer.resolve({ - tables: tables, - hasNext: data.hasNext - }); - }, function (err) { - defer.reject(err); - }); - - return defer.promise; - }, - - getAllTables: function (db) { - var defer = Ember.RSVP.defer(); - var database = db || this.get('selectedDatabase'); - var self; - var url; - - if (!database) { - defer.resolve(); - } else if (database.tables && !database.get('hasNext')) { - this.set('selectedTables', database.tables.mapProperty('name')); - defer.resolve(); - } else { - self = this; - url = this.get('baseUrl') + database.get('name') + '/table'; - - Ember.$.getJSON(url).then(function (data) { - var tables = data.tables.map(function (table) { - return Ember.Object.create({ - name: table - }); - }); - - //don't use Ember.Object.set since it can be very expensive for large collections (e.g. 15000 tables), - //thus we should not do any bindings directly on the 'tables' collection. - database.tables = tables; - - Ember.run(function () { - self.set('selectedTables', tables.mapProperty('name')); - }); - - defer.resolve(); - }, function (err) { - defer.reject(err); - }); - } - - return defer.promise; - }, - - getAllColumns: function (tableName, db) { - var database = db || this.get('selectedDatabase'); - var defer = Ember.RSVP.defer(); - var table; - var self; - var url; - - if (!database) { - defer.resolve(); - } else { - table = database.tables.findBy('name', tableName); - - if (!table) { - defer.resolve(); - } else if (table.columns && !table.get('hasNext')) { - this.get('selectedTables')[tableName] = table.columns.mapProperty('name'); - defer.resolve(); - } else { - self = this; - url = this.get('baseUrl') + database.get('name') + '/table/' + tableName - - Ember.$.getJSON(url).then(function (data) { - var columns = data.columns.map(function (column) { - return Ember.Object.create({ - name: column[0], - type: column[1] - }); - }); - - table.columns = columns; - table.set('hasNext', false); - - self.get('selectedTables')[tableName] = columns.mapProperty('name'); - - defer.resolve(); - }, function (err) { - defer.reject(err); - }); - } - } - - return defer.promise; - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/file.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/file.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/file.js deleted file mode 100644 index 7f01795..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/file.js +++ /dev/null @@ -1,59 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Service.extend({ - files: [], - store: Ember.inject.service(), - - loadFile: function (path) { - var self = this; - var defer = Ember.RSVP.defer(); - var file = this.files.findBy('id', path); - - if (file) { - defer.resolve(file); - } else { - this.get('store').find(constants.namingConventions.file, path).then(function (file) { - defer.resolve(self.files.pushObject(file)); - }, function (err) { - defer.reject(err); - }); - } - - return defer.promise; - }, - - reloadFile: function (path) { - var defer = Ember.RSVP.defer(); - - this.get('store').find(constants.namingConventions.file, path).then(function (file) { - file.reload().then(function (reloadedFile) { - defer.resolve(reloadedFile); - }, function (err) { - defer.reject(err); - }); - }, function (err) { - defer.reject(err); - }); - - return defer.promise; - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/history.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/history.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/history.js deleted file mode 100644 index 4998d19..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/history.js +++ /dev/null @@ -1,204 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import Job from 'hive/models/job' -import constants from 'hive/utils/constants'; - -export default Ember.Service.extend({ - historyJobsMap: {}, - store: Ember.inject.service(), - fromDate: null, - toDate: null, - - getJobs: function (fromDate, toDate) { - var self = this; - console.log("getJobs : fromDate : ", fromDate, ", toDate : ", toDate); - - if (Ember.isEmpty(fromDate) || Ember.isEmpty(toDate)) { - throw new Error("Dates cannot be empty."); - } - if (toDate < fromDate) { - throw new Error("toDate cannot be smaller than fromDate"); - } - - var currFromDate = this.get("fromDate"); - var currToDate = this.get("toDate"); - var currJobsMap = this.get("historyJobsMap"); - - if (!Ember.isEmpty(currFromDate) && !Ember.isEmpty(currToDate) - && currFromDate <= fromDate && currToDate >= toDate - && !Ember.isEmpty(currJobsMap) - ) { - // filter current jobs and return - var validJobs = []; - Object.keys(currJobsMap).forEach(function (id) { - var job = currJobsMap[id]; - if (job.get('dateSubmitted') >= fromDate && job.get('dateSubmitted') < toDate) { - validJobs.push(job); - } - }); - - return Ember.RSVP.Promise.resolve(validJobs); - } - - return this.fetchJobs(fromDate, toDate).then(function (data) { - var jobMap = {}; - var jobs = data.map(function (j) { - var job = this.get('store').push('job', j); - jobMap[job.id] = job; - return job; - }, self); - self.set('fromDate', fromDate); - self.set('toDate', toDate); - self.set('historyJobsMap', jobMap); - return jobs; - }); - }, - - fetchJobs: function (fromDate, toDate) { - console.log("getJobs : fromDate : ", fromDate, ", toDate : ", toDate); - - if (Ember.isEmpty(fromDate) || Ember.isEmpty(toDate)) { - throw new Error("Dates cannot be empty."); - } - if (toDate < fromDate) { - throw new Error("toDate cannot be smaller than fromDate"); - } - - var self = this; - var url = this.container.lookup('adapter:application').buildURL(); - url += "/jobs"; - var jobMap = {}; - return Ember.$.ajax({ - url: url, - type: 'GET', - data: { - "startTime": fromDate, - "endTime": toDate - }, - headers: { - 'X-Requested-By': 'ambari' - } - }); - }, - - fetchAndMergeNew: function (toTime) { - var self = this; - return this.fetchNew(toTime).then(function (data) { - var jobMap = self.get('historyJobsMap'); - var jobs = data.map(function (j) { - var job = this.get('store').push('job', j); - jobMap[job.id] = job; - return job; - }, self); - self.set('toDate', toTime); - return jobs; - }); - }, - - getUpdatedJobList: function (toTime) { - var self = this; - return this.refreshAndFetchNew(toTime).then(function (data) { - var jobMap = self.get('historyJobsMap'); - var allJobs = Object.keys(jobMap).map(function (id) { - return jobMap[id]; - }); - return allJobs; - }); - }, - - fetchNew: function (toTime) { - var self = this; - var jobMap = this.get('historyJobsMap'); - var fromTime = 0; - if (this.get('fromDate')) { - fromTime = this.get('fromDate'); - } - - Object.keys(jobMap).forEach(function (id) { - var job = jobMap[id]; - fromTime = Math.max(fromTime, job.get('dateSubmitted')); - }); - - if (fromTime > toTime) { - // we already have latest data. - return Ember.RSVP.Promise.resolve([]); - } - return this.fetchJobs(fromTime, toTime); - }, - - refresh: function () { - var self = this; - var url = this.container.lookup('adapter:application').buildURL(); - url += "/jobs/getList"; - var jobMap = this.get('historyJobsMap'); - var statuses = constants.statuses; - var jobIds = []; - Object.keys(jobMap).forEach(function (id) { - var job = jobMap[id]; - var jobStatus = job.get('uppercaseStatus'); - if (jobStatus === statuses.initialized - || jobStatus === statuses.pending - || jobStatus === statuses.running - || jobStatus === statuses.unknown - ) { - // note jobId will either have DB's id or hiveId - jobIds.push({ - jobId: job.get('id'), - hiveId: job.get('hiveQueryId'), - dagId: job.get('dagId'), - operationId: job.get('operationId') - }); - } - }); - - if (Ember.isEmpty(jobIds)) { - return Ember.RSVP.Promise.resolve([]); - } - console.log("refresh jobIds to refresh : ", jobIds); - return Ember.$.ajax({ - url: url, - type: 'POST', - data: JSON.stringify(jobIds), - headers: { - 'X-Requested-By': 'ambari' - }, - contentType: "application/json" - }).then(function (data) { - var jobs = data.map(function (j) { - var job = this.get('store').push('job', j); - jobMap[job.id] = job; - return job; - }, self); - self.set('historyJobsMap', jobMap); - // return all the jobs - var allJobs = Object.keys(jobMap).map(function (id) { - return jobMap[id]; - }); - return allJobs; - }); - }, - - refreshAndFetchNew: function (toTime) { - var self = this; - return this.refresh().then(function (data) { - return self.fetchAndMergeNew(toTime); - }) - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/job-progress.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/job-progress.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/job-progress.js deleted file mode 100644 index 1e0b96b..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/job-progress.js +++ /dev/null @@ -1,102 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Service.extend({ - jobs: [], - - setupProgress: function (currentModel) { - var job = this.jobs.findBy('model', currentModel); - - if (!job) { - job = this.jobs.pushObject(Ember.Object.create({ - model: currentModel, - stages: [], - totalProgress: 0, - retrievingProgress: false, - })); - } - - this.set('currentJob', job); - }, - - updateProgress: function () { - var job = this.get('currentJob'); - - if (!job.get('model.dagId')) { - return; - } - - if (job.get('totalProgress') < 100 && !job.get('retrievingProgress')) { - this.reloadProgress(job); - } - }.observes('currentJob.model.dagId'), - - reloadProgress: function (job) { - var self = this; - var url = '%@/%@/%@/progress'.fmt(this.container.lookup('adapter:application').buildURL(), - constants.namingConventions.jobs, - job.get('model.id')); - - job.set('retrievingProgress', true); - - Ember.$.getJSON(url).then(function (data) { - var total = 0; - var length = Object.keys(data.vertexProgresses).length; - - if (!job.get('stages.length')) { - data.vertexProgresses.forEach(function (vertexProgress) { - var progress = vertexProgress.progress * 100; - - job.get('stages').pushObject(Ember.Object.create({ - name: vertexProgress.name, - value: progress - })); - - total += progress; - }); - } else { - data.vertexProgresses.forEach(function (vertexProgress) { - var progress = vertexProgress.progress * 100; - - job.get('stages').findBy('name', vertexProgress.name).set('value', progress); - - total += progress; - }); - } - - total /= length; - - job.set('totalProgress', total); - - if (job.get('model.isRunning') && total < 100) { - Ember.run.later(function () { - self.reloadProgress(job); - }, 1000); - } else { - job.set('retrievingProgress'); - } - }); - }, - - isJob: function (model) { - return model.get('constructor.typeKey') === constants.namingConventions.job; - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/job.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/job.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/job.js deleted file mode 100644 index 7ba0601..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/job.js +++ /dev/null @@ -1,56 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; - -export default Ember.Service.extend({ - stopJob: function (job) { - var self = this; - var id = job.get('id'); - var url = this.container.lookup('adapter:application').buildURL(); - url += "/jobs/" + id; - - job.set('isCancelling', true); - - Ember.$.ajax({ - url: url, - type: 'DELETE', - headers: { - 'X-Requested-By': 'ambari' - }, - success: function () { - job.reload(); - } - }); - }, - - fetchJob : function (jobId){ - console.log("fetching job : ", jobId); - var self = this; - var url = this.container.lookup('adapter:application').buildURL(); - url += "/jobs/" + jobId ; - - return Ember.$.ajax({ - url: url, - type: 'GET', - headers: { - 'X-Requested-By': 'ambari' - } - }); - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/ldap-authentication.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/ldap-authentication.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/ldap-authentication.js deleted file mode 100644 index 711419c..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/ldap-authentication.js +++ /dev/null @@ -1,41 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; -import ENV from '../config/environment'; - -export default Ember.Service.extend({ - - authenticateLdapPassword: function(password){ - var password = password; - var pathName = window.location.pathname; - var pathNameArray = pathName.split("/"); - var hiveViewVersion = pathNameArray[3]; - var hiveViewName = pathNameArray[4]; - var ldapAuthURL = "/api/v1/views/HIVE/versions/"+ hiveViewVersion + "/instances/" + hiveViewName + "/jobs/auth"; - - return Ember.$.ajax({ - url: ldapAuthURL, - type: 'post', - headers: {'X-Requested-With': 'XMLHttpRequest', 'X-Requested-By': 'ambari'}, - contentType: 'application/json', - data: JSON.stringify({ "password" : password}), - }) - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/notify.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/notify.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/notify.js deleted file mode 100644 index 04c13ff..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/notify.js +++ /dev/null @@ -1,113 +0,0 @@ -/** -* Licensed to the Apache Software Foundation (ASF) under one -* or more contributor license agreements. See the NOTICE file -* distributed with this work for additional information -* regarding copyright ownership. The ASF licenses this file -* to you under the Apache License, Version 2.0 (the -* "License"); you may not use this file except in compliance -* with the License. You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Service.extend({ - types: constants.notify, - - messages : Ember.ArrayProxy.create({ content : [] }), - notifications : Ember.ArrayProxy.create({ content : [] }), - unseenMessages : Ember.ArrayProxy.create({ content : [] }), - - add: function (type, message, body) { - var formattedBody = this.formatMessageBody(body); - - var notification = Ember.Object.create({ - type : type, - message : message, - body : formattedBody - }); - - this.messages.pushObject(notification); - this.notifications.pushObject(notification); - this.unseenMessages.pushObject(notification); - }, - - info: function (message, body) { - this.add(this.types.INFO, message, body); - }, - - warn: function (message, body) { - this.add(this.types.WARN, message, body); - }, - - pushError: function (message, body) { - this.add(this.types.ERROR, message, body); - }, - - error: function (error) { - var message, - body; - - if (error.responseJSON) { - message = error.responseJSON.message; - body = error.responseJSON.trace; - } else if (error.errorThrown) { - message = error.errorThrown; - } else if (error.message) { - message = error.message; - } else { - message = error; - } - - this.add(this.types.ERROR, message, body); - }, - - success: function (message, body) { - this.add(this.types.SUCCESS, message, body); - }, - - formatMessageBody: function (body) { - if (!body) { - return; - } - - if (typeof body === "string") { - return body; - } - - if (typeof body === "object") { - var formattedBody = ""; - for (var key in body) { - formattedBody += "\n\n%@:\n%@".fmt(key, body[key]); - } - - return formattedBody; - } - }, - - removeMessage: function (message) { - this.messages.removeObject(message); - this.notifications.removeObject(message); - }, - - removeNotification: function (notification) { - this.notifications.removeObject(notification); - }, - - removeAllMessages: function () { - this.messages.clear(); - }, - - markMessagesAsSeen: function () { - if (this.unseenMessages.get('length')) { - this.unseenMessages.removeAt(0, this.unseenMessages.get('length')); - } - } -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/session.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/session.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/session.js deleted file mode 100644 index d7d448d..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/session.js +++ /dev/null @@ -1,48 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; - -export default Ember.Service.extend({ - - updateSessionStatus: function (model) { - var sessionActive = model.get('sessionActive'); - var sessionTag = model.get('sessionTag'); - var adapter = this.container.lookup('adapter:application'); - var url = adapter.buildURL() + '/jobs/sessions/' + sessionTag; - - if (sessionTag && sessionActive === undefined) { - adapter.ajax(url, 'GET') - .then(function (response) { - model.set('sessionActive', response.session.actual); - }) - .catch(function () { - model.set('sessionActive', false); - }); - } - }, - - killSession: function (model) { - var sessionTag = model.get('sessionTag'); - var adapter = this.container.lookup('adapter:application'); - var url = adapter.buildURL() + '/jobs/sessions/' + sessionTag; - - return adapter.ajax(url, 'DELETE'); - } - -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/services/settings.js ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/settings.js b/contrib/views/hive/src/main/resources/ui/hive-web/app/services/settings.js deleted file mode 100644 index cae3076..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/services/settings.js +++ /dev/null @@ -1,193 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -import Ember from 'ember'; -import constants from 'hive/utils/constants'; - -export default Ember.Service.extend({ - - notifyService: Ember.inject.service('notify'), - - settings: Ember.ArrayProxy.create({ content: [] }), - predefinedSettings: constants.hiveParameters, - - _createSetting: function(name, value) { - var setting = Ember.Object.createWithMixins({ - valid : true, - value : Ember.computed.alias('selection.value'), - selection : Ember.Object.create() - }); - - if (name) { - setting.set('key', Ember.Object.create({ name: name })); - } - - if (value) { - setting.set('selection.value', value); - } - - return setting; - }, - - _createDefaultSettings: function(settings) { - if (!settings) { - return; - } - - for (var key in settings) { - this.get('settings').pushObject(this._createSetting(key, settings[key])); - } - }, - - _validate: function () { - var settings = this.get('settings'); - var predefinedSettings = this.get('predefinedSettings'); - - settings.forEach(function (setting) { - var predefined = predefinedSettings.findBy('name', setting.get('key.name')); - - if (!predefined) { - return; - } - - if (predefined.values && predefined.values.contains(setting.get('value'))) { - setting.set('valid', true); - return; - } - - if (predefined.validate && predefined.validate.test(setting.get('value'))) { - setting.set('valid', true); - return; - } - - if (!predefined.validate) { - setting.set('valid', true); - return; - } - - setting.set('valid', false); - }); - }.observes('[email protected]', '[email protected]'), - - add: function() { - this.get('settings').pushObject(this._createSetting()); - }, - - createKey: function(name) { - var key = { name: name }; - this.get('predefinedSettings').pushObject(key); - - this.get('settings').findBy('key', null).set('key', key); - }, - - remove: function(setting) { - this.get('settings').removeObject(setting); - }, - - removeAll: function() { - this.get('settings').clear(); - }, - - loadDefaultSettings: function() { - var adapter = this.container.lookup('adapter:application'); - var url = adapter.buildURL() + '/savedQueries/defaultSettings'; - var self = this; - - adapter.ajax(url) - .then(function(response) { - self._createDefaultSettings(response.settings); - }) - .catch(function(error) { - self.get('notifyService').error(error); - }); - }, - - saveDefaultSettings: function() { - var self = this; - var data = {}; - var adapter = this.container.lookup('adapter:application'); - var url = adapter.buildURL() + '/savedQueries/defaultSettings'; - var settings = this.get('settings'); - - var settingException = {}; - - try { - settings.forEach(function(setting) { - - settingException['value'] = Ember.isEmpty(setting.get('value')); - - if(settingException['value']) { - settingException['name'] = setting.get('key.name'); - throw settingException - } - data[setting.get('key.name')] = setting.get('value'); - - }); - } catch(e) { - if (e!==settingException) throw e; - } - - - if(settingException['value']){ - self.get('notifyService').error('Please enter the value for '+ settingException['name'] ); - return; - } - - adapter.ajax(url, 'POST', { - data: {settings: data } - }) - .then(function(response) { - if (response && response.settings) { - self.get('notifyService').success(Ember.I18n.t('alerts.success.settings.saved')); - } else { - self.get('notifyService').error(response); - } - }); - }, - - getSettings: function() { - var settings = this.get('settings'); - var asString = ""; - - if (!settings.get('length')) { - return asString; - } - - settings.forEach(function(setting) { - asString += "set %@=%@;\n".fmt(setting.get('key.name'), setting.get('value')); - }); - - return asString; - }, - - parseGlobalSettings: function(query, model) { - if (!query || !model || !model.get('globalSettings')) { - return; - } - - var globals = model.get('globalSettings'); - var content = query.get('fileContent'); - - if (globals !== this.getSettings()) { - return; - } - - query.set('fileContent', content.replace(globals, '')); - } - -}); http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/styles/.gitkeep ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/styles/.gitkeep b/contrib/views/hive/src/main/resources/ui/hive-web/app/styles/.gitkeep deleted file mode 100644 index e69de29..0000000 http://git-wip-us.apache.org/repos/asf/ambari/blob/c0f9621f/contrib/views/hive/src/main/resources/ui/hive-web/app/styles/app.scss ---------------------------------------------------------------------- diff --git a/contrib/views/hive/src/main/resources/ui/hive-web/app/styles/app.scss b/contrib/views/hive/src/main/resources/ui/hive-web/app/styles/app.scss deleted file mode 100644 index 7598b0e..0000000 --- a/contrib/views/hive/src/main/resources/ui/hive-web/app/styles/app.scss +++ /dev/null @@ -1,716 +0,0 @@ -/** - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -@import 'vars'; -@import 'dropdown-submenu'; -@import 'mixins'; -@import 'notifications'; -@import 'query-tabs'; - -a { - word-wrap: break-word; -} - -@keyframes flash { - 0% { - background-color: transparent; - } - - 25% { - background-color: #428bca; - color: #fff; - } - - 50% { - background-color: transparent; - color: #333; - } - - 75% { - background-color: #428bca; - color: #fff; - } - - 100% { - background-color: transparent; - color: #333; - } -} - -.flash { - animation: flash 1s; -} - -@-webkit-keyframes fadeIn { - 0% {opacity: 0;} - 100% {opacity: 1;} -} - -@keyframes fadeIn { - 0% {opacity: 0;} - 100% {opacity: 1;} -} - -.fadeIn { - -webkit-animation-name: fadeIn; - animation-name: fadeIn; -} - -@-webkit-keyframes fadeOut { - 0% {opacity: 1;} - 100% {opacity: 0;} -} - -@keyframes fadeOut { - 0% {opacity: 1;} - 100% {opacity: 0;} -} - -.fadeOut { - -webkit-animation-name: fadeOut; - animation-name: fadeOut; -} - -.empty-list { - text-align: center; -} - -#content { - padding: 20px 0; -} - -#index-content { - display: flex; -} - -#visual-explain { - white-space: nowrap; - - .panel-body { - overflow: hidden; - } -} - -.index-overlay { - position: absolute; - left: 0; - width: 0; - z-index: 99; - background: white; -} - -aside { - hr { - margin: 10px 0; - } - - &.no-width { - width: 0; - overflow: hidden; - - @include animate-width(0.25s); - } - - &.col-md-3 { - @include animate-width(0.25s); - } -} - -.halfed { - width: 50%; -} - -.no-padding { - padding: 0; -} - -.no-margin { - margin: 0; -} - -.toolbox { - margin: 15px 15px 0 0; - - .insert-udfs { - display: inline-block; - } -} - -.history-date-range { - white-space: nowrap; -} -.history-date-range .fromDate, -.history-date-range .toDate { - width: 48%; -} - -.form-control::-moz-placeholder { - color: $placeholder-color; -} - -.form-control:-ms-input-placeholder { - color: $placeholder-color; -} - -.form-control::-webkit-input-placeholder { - color: $placeholder-color; -} - -.form-group { - margin-bottom: 0; -} - -.secondary-row { - background: $panel-background; -} - -.btn-group { - .dropdown-menu { - right: 0; - left: auto; - } -} - -.CodeMirror { - border: 0 1px solid $border-color; -} - -.grip { - height: 20px; - border: 0 1px 1px solid $border-color; - background-color: $panel-background; - color: #bbb; - text-align: center; - font-size: inherit; -} - -.slider { - min-width: 200px; - margin-right: 8px; -} - -.slider-labels { - font-size: 10px; -} - -.modal-backdrop { - background-color: white; -} - -.gray { - background-color: gray; -} - -.green { - background-color: #99CC00; -} - -.red { - background-color: #ff3300; -} - -.orange { - background-color: #FF9933; -} - -.yellow { - background-color: #CCCC00; -} - -.blue { - background-color: blue; -} - -.UNKNOWN { - color: gray; -} - -.RUNNING, .PENDING, .INITIALIZED, .fa-edit { - color: orange; -} - -.SUCCEEDED { - color: green; -} - -.CANCELED, .ERROR, .FAILED, .KILLED { - color: red; -} - -dropdown .fa-remove { - color: red; -} - -.CLOSED { - color: blue; -} - -.query-container { - position: relative; - padding-right: 0; - -moz-box-sizing: border-box; - - &.col-md-9 { - @include animate-width(0.25s); - } - - &.col-md-12 { - @include animate-width(0.25s); - } -} - -.main-content { - width: 96%; -} - -.queries-icon { - font-size: 20px; - - &.active { - color: white; - } - - &.text-icon { - font-size: 12px; - font-weight: 800; - } -} - -.query-context-tab { - background: #f1f1f1; - border-left: 2px solid #428bca; - - &.active { - color: #428bca; - border-left: 2px solid white; - } -} - -.alert { - margin-bottom: 5px; - padding-bottom: 10px; - padding-top: 10px; - - strong { - text-decoration: underline; - } - - .alert-message { - max-height: 250px; - overflow-y: auto; - } -} - -body { - a, i { - cursor: pointer; } - - dropdown { - .btn-group, .dropdown-toggle, .dropdown-menu { - width: 100%; - } - } - - tabs { - ul li{ - background: $panel-background; - } - } - - table { - tbody tr { - border: 1px solid #ccc; - } - - td *{ - white-space: nowrap; - } - } - - column-filter { - display: -webkit-inline-flex; /* Safari */ - display: inline-flex; - - .slider { - margin-top: 10px; - } - - .btn { - padding: 0; - border: 0; - } - - .form-control { - width: auto; - } - - .fa { - padding: 10px 0; - } - } -} - -.CodeMirror-hints { - min-width: 200px; - z-index: 100; -} - -.spinner { - width: 36px; - height: 36px; - background: url("/img/spinner.gif"); - background-repeat: no-repeat; - margin: 0 auto; - - &.small { - background-size: 20px; - width: 20px; - height: 20px; - } - - &.inline-spinner { - vertical-align: middle; - display: inline-block; - } -} - -.ellipsis{ - text-overflow: ellipsis; - white-space: nowrap; - overflow: hidden; - display:inline-block; -} - -.databases { - max-height: 500px; - overflow-y: auto; - - .tables { - padding-left: 10px; - - .columns { - padding-left: 10px; - .column-name{ - width: 10em; - font-weight: bold; - @extend .ellipsis; - } - } - } -} - -@media only screen and (max-width : 992px) { - .databases { - .tables { - .columns { - .column-name{ - width: 5em; - } - } - } - } -} - -.collapsible-row { - width: 13em; - @extend .ellipsis; -} - -.selectize-control.plugin-remove_button [data-value] { - padding-right: 0 !important; -} - -.query-editor-panel .panel-body { - position: relative; - padding-right: 0; -} - -.settings-containers-toggle { - position: absolute; - top: 0; - right: 25px; - cursor: pointer; -} - -.settings-container .close-settings { - float: right; - font-size: 18px; - cursor: pointer; - line-height: 24px; -} - -.settings-controls { - margin: 10px 0; -} - -.setting { - float: left; - padding: 10px 0 0 0; - - .input-group { - width: 100%; - } - .input-group-addon { - text-align: justify; - width: 50%; - vertical-align: top; - } -} - -.setting .remove { - line-height: 30px; - font-size: 18px; - cursor: pointer; - position: absolute; -} - -.setting .setting-input-value { - width: calc(100% - 30px); - display: inline-block; - input { - height: 33px; - } -} -.setting .global-setting-value { - width: calc(100% - 25px); -} - -.settings-set .settings-set-selector { - display: inline-block; - width: 300px; -} - -tree-view ul li { - padding-left: 10px; -} - -#tez-ui iframe { - width: 100%; - height: 822px; - border: none; -} - -.edge { - text-align: center; - font-size: 10px; - font-weight: 800; - - .edge-path { - margin-top: -55px; - height: 2px; - background-color: #dedede; - position: absolute; - } - - .edge-arrow { - position: absolute; - width: 0; - height: 0; - border-top: 5px solid transparent; - border-bottom: 5px solid transparent; - border-right: 10px solid black; - } -} - -.nodes { - width: 100%; - position: relative; - - .node-container { - text-align: center; - - .node { - border: 1px solid #bbb; - background: #fefefe; - font-size: 12px; - box-sizing: border-box; - text-align: left; - max-width: 200px; - margin: 0 25px 100px 0; - display: inline-block; - vertical-align: top; - - @include box-shadow(1px, 1px, 15px, #888888); - - &.table-node, &.output-node { - background-color: ghostwhite; - color: gray; - padding: 5px; - text-align: center; - min-width: 100px; - line-height: 8px; - vertical-align: bottom; - margin-bottom: 50px; - } - - .node-heading { - padding: 5px; - text-align: center; - background-color: lightslategrey; - color: white; - } - - .node-content { - max-height: 300px; - white-space: normal; - padding: 5px; - overflow-y: auto; - overflow-x: hidden; - - .fa { - color: green; - } - } - - .progress { - border-radius: 0; - margin: 0 10px 10px 10px; - } - } - } -} - -.progress-bar { - min-width: 2em; -} - -.messages-controls { - margin: 0 0 10px; -} - -#query-results, #upload-table{ - .table { - display: inline-block; - overflow: auto; - } - - .query-results-tools { - margin-top: 10px; - } - - input, .selectize-input { - width: 300px; - } -} - -#upload-controls { - .table { - display: inline-block; - overflow: auto; - } - - input, .selectize-input { - width: 94px; - font-size : smaller; - } - - .hidden { - visibility:hidden; - } - - .visible { - visibility:visible; - } - - td { - padding-right : 5px; - } -} - - -.data-upload-form tr td { - padding-right : 5px; -} - -td.data-upload-form-label { - width: 150px; - padding-left: 50px; -} -td.data-upload-form-field { - width: 350px; -} - -.hdfsPath { - width: 80%; - display: inline; -} - -#visualization{ - .max-rows { - float: right; - } -} - -#visualization{ - .max-rows { - float: right; - } -} - -.mozBoxSizeFix { - -moz-box-sizing: border-box; -} -.show-data { - display : block; -} -.hide-data { - display : none; -} -.no-shadow { - box-shadow: none; - width: inherit; -} - -.widget-controls { - padding-right: 10px; -} - -.accordion-body { - word-break: break-all; - overflow-y: scroll; -} - -table.no-border, table.no-border tr, table.no-border tr td { - border: none; -} - -.red-border { - border-color :red; -} - -ul.explainlist li{ - background: none; - word-break: break-all; - padding: 0; -} - -pre.explainprint{ - line-height: 0.5; - padding: 12px 15px; -} -.settings-gear { - padding:5px; - cursor: pointer; -} - -.settings-gear-disabled { - @extend .settings-gear; - - color:#ddd; - cursor: default; -}
