Repository: ignite Updated Branches: refs/heads/ignite-843-rc1 96ef0ff0c -> f87dd3a84
IGNITE-843 One download button on summary page. Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/63e9ffdc Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/63e9ffdc Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/63e9ffdc Branch: refs/heads/ignite-843-rc1 Commit: 63e9ffdc0117a70f52f09281c4efb18cb575e3fc Parents: 775e5e3 Author: Andrey <[email protected]> Authored: Fri Oct 30 13:06:51 2015 +0700 Committer: Andrey <[email protected]> Committed: Fri Oct 30 13:06:51 2015 +0700 ---------------------------------------------------------------------- .../main/js/controllers/summary-controller.js | 11 +++-- .../main/js/routes/generator/generator-java.js | 10 +++-- .../src/main/js/routes/summary.js | 16 ++++---- .../main/js/views/configuration/summary.jade | 43 ++++++++------------ 4 files changed, 37 insertions(+), 43 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/63e9ffdc/modules/control-center-web/src/main/js/controllers/summary-controller.js ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/controllers/summary-controller.js b/modules/control-center-web/src/main/js/controllers/summary-controller.js index 6efe806..f9d5bf0 100644 --- a/modules/control-center-web/src/main/js/controllers/summary-controller.js +++ b/modules/control-center-web/src/main/js/controllers/summary-controller.js @@ -19,6 +19,7 @@ consoleModule.controller('summaryController', [ '$scope', '$http', '$common', '$loading', '$message', '$table', function ($scope, $http, $common, $loading, $message, $table) { + $scope.panelExpanded = $common.panelExpanded; $scope.tableVisibleRow = $table.tableVisibleRow; $scope.joinTip = $common.joinTip; $scope.getModel = $common.getModel; @@ -81,15 +82,16 @@ consoleModule.controller('summaryController', [ renderer.setHighlightGutterLine(false); renderer.setShowPrintMargin(false); - renderer.setOption('fontSize', '14px'); + renderer.setOption('fontSize', '12px'); renderer.setOption('minLines', '3'); - renderer.setOption('maxLines', '50'); + renderer.setOption('maxLines', '25'); editor.setTheme('ace/theme/chrome'); }; $scope.generateJavaServer = function () { - $scope.javaServer = $generatorJava.cluster($scope.selectedItem, $scope.configServer.javaClassServer === 2); + $scope.javaServer = $generatorJava.cluster($scope.selectedItem, + $scope.configServer.javaClassServer === 2 ? 'ConfigurationFactory' : false); }; function selectPojoClass(config) { @@ -162,7 +164,8 @@ consoleModule.controller('summaryController', [ $scope.generateClient = function () { $scope.xmlClient = $generatorXml.cluster($scope.selectedItem, $scope.backupItem.nearConfiguration); - $scope.javaClient = $generatorJava.cluster($scope.selectedItem, $scope.backupItem.javaClassClient === 2, + $scope.javaClient = $generatorJava.cluster($scope.selectedItem, + $scope.backupItem.javaClassClient === 2 ? 'ClientConfigurationFactory' : false, $scope.backupItem.nearConfiguration, $scope.configServer.useConstructor); }; http://git-wip-us.apache.org/repos/asf/ignite/blob/63e9ffdc/modules/control-center-web/src/main/js/routes/generator/generator-java.js ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/routes/generator/generator-java.js b/modules/control-center-web/src/main/js/routes/generator/generator-java.js index 32642d5..5ff7537 100644 --- a/modules/control-center-web/src/main/js/routes/generator/generator-java.js +++ b/modules/control-center-web/src/main/js/routes/generator/generator-java.js @@ -1667,7 +1667,7 @@ $generatorJava.igfsMisc = function(igfs, varName, res) { * Function to generate java code for cluster configuration. * * @param cluster Cluster to process. - * @param javaClass If 'true' then generate factory class otherwise generate code snippet. + * @param javaClass Class name for generate factory class otherwise generate code snippet. * @param clientNearCfg Near cache configuration for client node. */ $generatorJava.cluster = function (cluster, javaClass, clientNearCfg) { @@ -1678,7 +1678,7 @@ $generatorJava.cluster = function (cluster, javaClass, clientNearCfg) { res.line('/**'); res.line(' * ' + $generatorCommon.mainComment()); res.line(' */'); - res.startBlock('public class ConfigurationFactory {'); + res.startBlock('public class ' + javaClass + ' {'); res.line('/**'); res.line(' * Configure grid.'); res.line(' *'); @@ -1734,15 +1734,17 @@ $generatorJava.cluster = function (cluster, javaClass, clientNearCfg) { res.line('return cfg;'); res.endBlock('}'); + res.needEmptyLine = true; + res.line('/**'); - res.line(' * Sample usage of ConfigurationFactory.'); + res.line(' * Sample usage of ' + javaClass + '.'); res.line(' *'); res.line(' * @param args Command line arguments, none required.'); res.line(' * @throws Exception If sample execution failed.'); res.line(' */'); res.startBlock('public static void main(String[] args) throws Exception {'); - res.startBlock('try (Ignite ignite = Ignition.start(ConfigurationFactory.createConfiguration())) {'); + res.startBlock('try (Ignite ignite = Ignition.start(' + javaClass + '.createConfiguration())) {'); res.line('System.out.println("Write some code here...");'); res.endBlock('}'); res.endBlock('}'); http://git-wip-us.apache.org/repos/asf/ignite/blob/63e9ffdc/modules/control-center-web/src/main/js/routes/summary.js ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/routes/summary.js b/modules/control-center-web/src/main/js/routes/summary.js index 12e7062..412748a 100644 --- a/modules/control-center-web/src/main/js/routes/summary.js +++ b/modules/control-center-web/src/main/js/routes/summary.js @@ -45,30 +45,28 @@ router.post('/download', function (req, res) { if (!cluster) return res.sendStatus(404); - var clientNearConfiguration = req.body.clientNearConfiguration; - var JSZip = require('jszip'); var zip = new JSZip(); // Set the archive name. - res.attachment(cluster.name + (clientNearConfiguration ? '-client' : '-server') + '-configuration.zip'); + res.attachment(cluster.name + '-configuration.zip'); var builder = $generatorProperties.sslProperties(cluster); - if (!clientNearConfiguration) { - zip.file('Dockerfile', $generatorDocker.clusterDocker(cluster, req.body.os)); + zip.file('Dockerfile', $generatorDocker.clusterDocker(cluster, req.body.os)); - builder = $generatorProperties.dataSourcesProperties(cluster, builder); - } + builder = $generatorProperties.dataSourcesProperties(cluster, builder); if (builder) zip.file('src/main/resources/secret.properties', builder.asString()); var srcPath = 'src/main/java/'; - zip.file('config/' + cluster.name + '.xml', $generatorXml.cluster(cluster, clientNearConfiguration)); - zip.file(srcPath + 'ConfigurationFactory.java', $generatorJava.cluster(cluster, true, clientNearConfiguration)); + zip.file('config/' + cluster.name + '.xml', $generatorXml.cluster(cluster)); + zip.file('config/' + cluster.name + '-client' + '.xml', $generatorXml.cluster(cluster, true)); + zip.file(srcPath + 'ConfigurationFactory.java', $generatorJava.cluster(cluster, 'ConfigurationFactory')); + zip.file(srcPath + 'ClientConfigurationFactory.java', $generatorJava.cluster(cluster, 'ClientConfigurationFactory', true)); zip.file('pom.xml', $generatorPom.pom(cluster.caches, '1.5.0').asString()); zip.file('README.txt', $generatorReadme.readme().asString()); http://git-wip-us.apache.org/repos/asf/ignite/blob/63e9ffdc/modules/control-center-web/src/main/js/views/configuration/summary.jade ---------------------------------------------------------------------- diff --git a/modules/control-center-web/src/main/js/views/configuration/summary.jade b/modules/control-center-web/src/main/js/views/configuration/summary.jade index 4427285..a7bffc7 100644 --- a/modules/control-center-web/src/main/js/views/configuration/summary.jade +++ b/modules/control-center-web/src/main/js/views/configuration/summary.jade @@ -27,10 +27,6 @@ include ../includes/controls mixin hard-link(ref, txt) a(style='color:#ec1c24' href=ref target='_blank') #{txt} -mixin btn-download(side) - .panel-tip-container(style='float: right;' data-placement='bottom' bs-tooltip='"Download #{side} configuration"') - button.btn.btn-primary.pull-right(type='submit' ng-click='$event.stopPropagation()') Download - mixin pojos(side) div(bs-pane title='POJO' ng-show='pojoAvailable()') .details-row @@ -53,26 +49,28 @@ mixin pojos(side) block content .docs-header h1 Configurations Summary - .docs-body(ng-controller='summaryController' dw-loading='loadingSummaryScreen' dw-loading-options='{text: "Loading summary screen...", className: "page-loading-overlay"}') + .docs-body(ng-controller='summaryController' dw-loading='loadingSummaryScreen' dw-loading-options='{text: "Loading summary screen...", className: "page-loading-overlay"}' method='post' action='summary/download') +block-callout('{{screenTip.workflowTitle}}', 'screenTip.workflowContent', '{{screenTip.whatsNextTitle}}', 'screenTip.whatsNextContent') hr .padding-dflt(ng-if='clusters.length == 0') | You have no clusters configured. Please configure them a(href='clusters') here. +main-table('Clusters:', 'clusters', 'clusterName', 'selectItem(row)', '{{$index + 1}}) {{row.name}}') - div(ng-show='selectedItem && tableVisibleRow(displayedRows, selectedItem)' role='tab' method='post' action='summary/download') - .padding-dflt(bs-collapse ng-init='serverExpanded=0' ng-model='serverExpanded') + .padding-top-dflt(bs-affix) + form.panel-tip-container(data-placement='bottom' bs-tooltip data-title='Download configuration' method='post' action='summary/download') + input(type='hidden' name='_id' value='{{selectedItem._id}}') + input(type='hidden' name='os' value='{{os}}') + input(type='hidden' name='useConstructor' value='{{configServer.useConstructor}}') + input(type='hidden' name='includeKeyFields' value='{{configServer.includeKeyFields}}') + button.btn.btn-primary(id='download' type='submit' ng-click='$event.stopPropagation()') Download + hr + div(ng-show='selectedItem && tableVisibleRow(displayedRows, selectedItem)' role='tab') + .panel-group(bs-collapse ng-init='panels.activePanels=[0,1]' ng-model='panels.activePanels' data-allow-multiple='true') .panel.panel-default - form.panel-heading(role='tab' method='post' action='summary/download' bs-collapse-toggle) - i.tipLabel.fa(ng-class='serverExpanded == 0 ? "fa-chevron-circle-up" : "fa-chevron-circle-down"') + .panel-heading(role='tab' bs-collapse-toggle) + i.fa(ng-class='panelExpanded(panels, "server") ? "fa-chevron-circle-up" : "fa-chevron-circle-down"') label Server - input(type='hidden' name='_id' value='{{selectedItem._id}}') - input(type='hidden' name='os' value='{{os}}') - input(type='hidden' name='javaClass' value='{{javaClassServer}}') - input(type='hidden' name='useConstructor' value='{{configServer.useConstructor}}') - input(type='hidden' name='includeKeyFields' value='{{configServer.includeKeyFields}}') - +btn-download('server') - .panel-collapse(role='tabpanel' bs-collapse-target) + .panel-collapse(id='server' role='tabpanel' bs-collapse-target) .summary-tabs(bs-tabs data-bs-active-pane="tabsServer.activeTab" ng-show='selectedItem' template='summary/summary-tabs') div(bs-pane title='XML') div(ui-ace='{ onLoad: aceInit, mode: "xml" }' ng-model='xmlServer') @@ -100,18 +98,11 @@ block content .col-xs-5.col-sm-4 input#os.form-control(type='text' ng-model='configServer.os' placeholder='debian:8' data-min-length='0' data-html='1' data-auto-select='true' bs-typeahead retain-selection bs-options='os for os in oss') div(ui-ace='{ onLoad: aceInit, mode: "dockerfile" }' ng-model='dockerServer') - .padding-dflt(bs-collapse ng-init='clientExpanded=0' ng-model='clientExpanded') .panel.panel-default - form.panel-heading(role='tab' method='post' action='summary/download' bs-collapse-toggle) - i.tipLabel.fa(ng-class='clientExpanded == 0 ? "fa-chevron-circle-up" : "fa-chevron-circle-down"') + .panel-heading(role='tab' bs-collapse-toggle) + i.fa(ng-class='panelExpanded(panels, "server") ? "fa-chevron-circle-up" : "fa-chevron-circle-down"') label Client - input(type='hidden' name='_id' value='{{selectedItem._id}}') - input(type='hidden' name='javaClass' value='{{javaClassClient}}') - input(type='hidden' name='clientNearConfiguration' value='{{backupItem}}') - input(type='hidden' name='useConstructor' value='{{configServer.useConstructor}}') - input(type='hidden' name='includeKeyFields' value='{{configServer.includeKeyFields}}') - +btn-download('client') - .panel-collapse(role='tabpanel' bs-collapse-target) + .panel-collapse(id='client' role='tabpanel' bs-collapse-target) div(ng-show='selectedItem') .details-row(ng-repeat='field in clientFields') +form-row-custom(['col-xs-4 col-sm-4 col-md-3'], ['col-xs-4 col-sm-4 col-md-3'], 'backupItem')
