http://git-wip-us.apache.org/repos/asf/flink/blob/0601a762/flink-clients/src/main/resources/web-docs/js/program.js ---------------------------------------------------------------------- diff --git a/flink-clients/src/main/resources/web-docs/js/program.js b/flink-clients/src/main/resources/web-docs/js/program.js deleted file mode 100644 index 683185d..0000000 --- a/flink-clients/src/main/resources/web-docs/js/program.js +++ /dev/null @@ -1,233 +0,0 @@ -/*! - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -var maxColumnWidth = 200; -var minColumnWidth = 100; - -// global variable for the currently requested plan -var pactPlanRequested = 0; - -/* - * This function toggels the child checkbox on and of, depending on the parent's state - */ -function toggleShowPlanBox(box) -{ - var child = $('#suspendJobDuringPlanCheck'); - - if (box.is(':checked')) { - child.attr('disabled', false); - } - else { - child.attr('disabled', true); - } -} - -/* - * Shows an error message below the upload field. - */ -function showUploadError(message) -{ - $('#upload_error_text').fadeOut("fast", function () { $('#upload_error_text')[0].innerHTML = "" + message; - $('#upload_error_text').fadeIn("slow"); } ); -} - -/* - * Checks the selected file and triggers an upload, if all is correct. - */ -function processUpload() -{ - - var filename = $('#upload_file_input').val(); - var len = filename.length; - if (len == 0) { - showUploadError("Please select a file."); - } - else if (len > 4 && filename.substr(len - 4, len) == ".jar") { - $('#upload_form')[0].submit(); - } - else { - showUploadError("Please select a .jar file."); - } -} - -/* - * This function makes sure only one checkbox is selected. - * Upon selection it initializes the drawing of the pact plan. - * Upon deselection, it clears the pact plan. - */ -function toggleCheckboxes(box) -{ - - if (box.is(':checked')) { - $('.jobItemCheckbox').attr('checked', false); - box.attr('checked', true); - var id = box.parentsUntil('.JobListItems').parent().attr('id').substr(4); - var assemblerClass = box.attr('id'); - - $('#mainCanvas').html(''); - pactPlanRequested = id; - - $.ajax({ - type: "GET", - url: "pactPlan", - data: { job: id, assemblerClass: assemblerClass}, - success: function(response) { showPreviewPlan(response); } - }); - } - else { - $('#mainCanvas').html(''); - } -} - -/* - * Function that takes the returned plan and draws it. - */ -function showPreviewPlan(data) -{ - $("#mainCanvas").empty(); - var svgElement = "<div id=\"attach\"><svg id=\"svg-main\" width=500 height=500><g transform=\"translate(20, 20)\"/></svg></div>"; - $("#mainCanvas").append(svgElement); - drawGraph(data.plan, "#svg-main"); - pactPlanRequested = 0; - - //activate zoom buttons - activateZoomButtons(); -// } -} - -/* - * Asynchronously loads the jobs and creates a list of them. - */ -function loadJobList() -{ - $.get("jobs", { action: "list" }, createJobList); -} - -/* - * Triggers an AJAX request to delete a job. - */ -function deleteJob(id) -{ - var name = id.substr(4); - $.get("jobs", { action: "delete", filename: name }, loadJobList); -} - -/* - * Creates and lists the returned jobs. - */ -function createJobList(data) -{ - var markup = ""; - - var lines = data.split("\n"); - for (var i = 0; i < lines.length; i++) - { - if (lines[i] == null || lines[i].length == 0) { - continue; - } - - var date = "unknown date"; - var assemblerClass = "<em>no entry class specified</em>"; - - var tokens = lines[i].split("\t"); - var name = tokens[0]; - if (tokens.length > 1) { - date = tokens[1]; - if (tokens.length > 2) { - assemblerClass = tokens[2]; - } - } - - var entries = assemblerClass.split("#"); - var classes = entries[0].split(","); - - markup += '<div id="job_' + name + '" class="JobListItems"><table class="table"><tr>'; - markup += '<td colspan="2"><p class="JobListItemsName">' + name + '</p></td>'; - markup += '<td><p class="JobListItemsDate">' + date + '</p></td>'; - markup += '<td width="30px"><img class="jobItemDeleteIcon" src="img/delete-icon.png" width="24" height="24" /></td></tr>'; - - var j = 0; - for (var idx in classes) { - markup += '<tr><td width="30px;"><input id="' + classes[idx] + '" class="jobItemCheckbox" type="checkbox"></td>'; - markup += '<td colspan="3"><p class="JobListItemsDate" title="' + entries[++j] + '">' + classes[idx] + '</p></td></tr>'; - } - markup += '</table></div>'; - } - - // add the contents - $('#jobsContents').html(markup); - - // register the event handler that triggers the delete when the delete icon is clicked - $('.jobItemDeleteIcon').click(function () { deleteJob($(this).parentsUntil('.JobListItems').parent().attr('id')); } ); - - // register the event handler, that ensures only one checkbox is active - $('.jobItemCheckbox').change(function () { toggleCheckboxes($(this)) }); -} - -/* - * Function that checks and launches a pact job. - */ -function runJob () -{ - var job = $('.jobItemCheckbox:checked'); - if (job.length == 0) { - $('#run_error_text').fadeOut("fast", function () { $('#run_error_text')[0].innerHTML = "Select a job to run."; - $('#run_error_text').fadeIn("slow"); } ); - return; - } - - var jobName = job.parentsUntil('.JobListItems').parent().attr('id').substr(4); - var assemblerClass = job.attr('id'); - - var showPlan = $('#showPlanCheck').is(':checked'); - var suspendPlan = $('#suspendJobDuringPlanCheck').is(':checked'); - var options = $('#commandLineOptionsField').attr('value'); //TODO? Replace with .val() ? - var args = $('#commandLineArgsField').attr('value'); //TODO? Replace with .val() ? - - var url; - if (assemblerClass == "<em>no entry class specified</em>") { - url = "runJob?" + $.param({ action: "submit", options: options, job: jobName, arguments: args, show_plan: showPlan, suspend: suspendPlan}); - } else { - url = "runJob?" + $.param({ action: "submit", options: options, job: jobName, assemblerClass: assemblerClass, arguments: args, show_plan: showPlan, suspend: suspendPlan}); - } - - window.location = url; -} - -/* - * Document initialization. - */ -$(document).ready(function () -{ - // hide the error text sections - $('#upload_error_text').fadeOut("fast"); - $('#run_error_text').fadeOut("fast"); - - // register the event listener that keeps the hidden file form and the text fied in sync - $('#upload_file_input').change(function () { $('#upload_file_name_text').val($(this).val()) } ); - - // register the event handler for the upload button - $('#upload_submit_button').click(processUpload); - $('#run_button').click(runJob); - - // register the event handler that (in)activates the plan display checkbox - $('#showPlanCheck').change(function () { toggleShowPlanBox ($(this)); }); - - // start the ajax load of the jobs - loadJobList(); -});
http://git-wip-us.apache.org/repos/asf/flink/blob/0601a762/flink-clients/src/main/resources/web-docs/launch.html ---------------------------------------------------------------------- diff --git a/flink-clients/src/main/resources/web-docs/launch.html b/flink-clients/src/main/resources/web-docs/launch.html deleted file mode 100644 index e190b6a..0000000 --- a/flink-clients/src/main/resources/web-docs/launch.html +++ /dev/null @@ -1,109 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<!-- -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. ---> -<html> - -<head> - <title>Flink Query Interface</title> - - <meta http-equiv="content-type" content="text/html; charset=UTF-8"> - - <link rel="stylesheet" type="text/css" href="css/nephelefrontend.css" /> - <link rel="stylesheet" type="text/css" href="css/pactgraphs.css" /> - <link rel="stylesheet" type="text/css" href="css/graph.css" /> - <link rel="stylesheet" type="text/css" href="css/overlay.css" /> - <link rel="stylesheet" type="text/css" href="css/bootstrap.css" /> <!-- Changed Stuff --> - - <script type="text/javascript" src="js/jquery-2.1.0.js"></script> - <script type="text/javascript" src="js/graphCreator.js"></script> - <script type="text/javascript" src="js/d3.js" charset="utf-8"></script> - <script type="text/javascript" src="js/dagre-d3.js"></script> - <script type="text/javascript" src="js/bootstrap.min.js"></script> - <script type="text/javascript" src="js/jquery.tools.min.js"></script> - <script type="text/javascript" src="js/program.js"></script> -</head> - -<body> - <div class="mainHeading" style="min-width: 1225px;"> - <h1 style="margin-top:0"><img src="img/flink-logo.png" width="100" height="100" alt="Flink Logo" />Flink Web Submission Client - <div style="position:absolute; top:40px; right:110px;"> - <button id="zoomIn" type="button" class="btn btn-default">Zoom In</button> - <button id="zoomOut" type="button" class="btn btn-default">Zoom Out</button> - </div> - </h1> - </div> - - <!-- the main panel with the jobs list and the preview pane --> - <div style="position: absolute; top: 110px; bottom: 210px; left: 0px; right: 0px; min-width: 1225px;"> - <div id="jobsContents" class="boxed" style="position: absolute; top: 0px; bottom: 0px; left: 0px; width: 450px; overflow: auto;"></div> - <div class="boxed" style="position: absolute; top: 0px; bottom: 0px; left: 460px; right: 0px; overflow: auto;"> - <div id="mainCanvas" class="canvas" style="position: relative; height: 100%"></div> - </div> - </div> - - <!-- the footer containing the box with the run properties and the box with the upload field --> - <div class="footer" style="min-width: 1225px;"> - - <div class="boxed" style="float: left; width: 700px; height: 200px; position: relative;"> - <h3>Select program...</h3> - <div style="margin-top: 30px;"> - <div style="text-align: right;"> - <span class="formLabel">Flink Options:</span> - <input id="commandLineOptionsField" type="text" name="commandLineOptions" style="width: 520px;"/> - </div> - <div style="text-align: right; margin-top: 5px;"> - <span class="formLabel">Program Arguments:</span> - <input id="commandLineArgsField" type="text" name="commandLineArguments" style="width: 520px;"/> - </div> - <div class="spaced" style="margin-left: 20px;"> - <input type="checkbox" id="showPlanCheck" checked="checked"><span class="formLabel">Show optimizer plan</span> - <div id="suspendOption"><span> </span><input type="checkbox" id="suspendJobDuringPlanCheck" checked="checked"><span class="formLabel">Suspend execution while showing plan</span></div> - </div> - </div> - <div class="footer" style="text-align: right;"> - <span id="run_error_text" class="error_text"></span> - <input id="run_button" type="button" value="Run Job" style="width: 75px; margin-left: 100px;"/> - </div> - </div> - - <div class="boxed" style="float: left; width: 500px; height: 150px; position: relative;"> - <h3>Select a new program to upload...</h3> - <form id="upload_form" action="jobs" enctype="multipart/form-data" method="POST"> - <div style="position: relative; margin-top: 30px;"> - <input id="upload_file_name_text" type="text" name="file_name" disabled="disabled" style="position: absolute; top: 0px; right: 85px; width: 380px; z-index: 3;"/> - <input type="button" value="Browse" style="width: 75px; position: absolute; right: 0px; top: 0px; z-index: 1;" /> - <input id="upload_file_input" class="translucent" type="file" name="upload_jar_file" style="position: absolute; right: 0px; top: 0px; height: 30px; width=75px; z-index: 2;" /> - </div> - </form> - <div class="footer" style="text-align: right;"> - <span id="upload_error_text" class="error_text"></span> - <input id="upload_submit_button" type="button" value="Upload" style="width: 75px; margin-left: 100px;"/> - </div> - </div> - - </div> - - <!-- the overlay --> - <div class="simple_overlay" id="propertyO"> - <div id="propertyCanvas" class="propertyCanvas"> - </div> - </div> -</body> -</html>
