You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by im...@apache.org on 2015/09/29 11:10:55 UTC

[1/4] stratos git commit: This closes #470 on GitHub

Repository: stratos
Updated Branches:
  refs/heads/stratos-4.1.x dfa4486f3 -> bf5b7150b


This closes #470 on GitHub


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

Branch: refs/heads/stratos-4.1.x
Commit: bf5b7150b59c8509c628fb48a93f1115899e70fa
Parents: f3635da
Author: Imesh Gunaratne <im...@apache.org>
Authored: Tue Sep 29 14:40:49 2015 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Tue Sep 29 14:40:49 2015 +0530

----------------------------------------------------------------------

----------------------------------------------------------------------



[3/4] stratos git commit: Changing info message in gadgets when there is no filtering values are selected

Posted by im...@apache.org.
Changing info message in gadgets when there is no filtering values are selected


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

Branch: refs/heads/stratos-4.1.x
Commit: f3635da753d9522aa0acdb81e517af7544c0a06d
Parents: 24adbc3
Author: Thanuja <th...@wso2.com>
Authored: Tue Sep 29 13:58:17 2015 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Tue Sep 29 14:40:49 2015 +0530

----------------------------------------------------------------------
 .../Gadget_Member_Count/Member_Count/js/main.js                    | 2 +-
 .../Gadget_Member_Information/Member_Information/js/main.js        | 2 +-
 .../Gadget_Member_Status/Member_Status/js/main.js                  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/f3635da7/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/main.js
----------------------------------------------------------------------
diff --git a/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/main.js b/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/main.js
index 303e282..0865932 100644
--- a/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/main.js
+++ b/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Count/Member_Count/js/main.js
@@ -163,7 +163,7 @@ function drawChart(data) {
         }
     } else {
         jQuery("#placeholder").html("");
-        jQuery("#placeholder").append('<div id="noChart"><table><tr><td style="padding:30px 20px 0px 20px"><img src="../../portal/images/noEvents.png" align="left" style="width:24;height:24"/></td><td><br/><b><p><br/> Data is not available for plotting with selected values</p></b></td></tr></table></div>');
+        jQuery("#placeholder").append('<div id="noChart"><table><tr><td style="padding:30px 20px 0px 20px"><img src="../../portal/images/noEvents.png" align="left" style="width:24;height:24"/></td><td><br/><b><p><br/>Please select an application and cluster to view data</p></b></td></tr></table></div>');
     }
     //releasing the latch so that we can request data again from the backend.
     dataLoaded = true;

http://git-wip-us.apache.org/repos/asf/stratos/blob/f3635da7/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Information/Member_Information/js/main.js
----------------------------------------------------------------------
diff --git a/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Information/Member_Information/js/main.js b/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Information/Member_Information/js/main.js
index f0e449e..0333f2b 100644
--- a/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Information/Member_Information/js/main.js
+++ b/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Information/Member_Information/js/main.js
@@ -161,7 +161,7 @@ function drawChart(data) {
     }
     else {
         jQuery("#placeholder").html("");
-        jQuery("#placeholder").append('<div id="noChart"><table><tr><td style="padding:30px 20px 0px 20px"><img src="../../portal/images/noEvents.png" align="left" style="width:24;height:24"/></td><td><br/><b><p><br/> Data is not available for plotting with selected values</p></b></td></tr></table></div>');
+        jQuery("#placeholder").append('<div id="noChart"><table><tr><td style="padding:30px 20px 0px 20px"><img src="../../portal/images/noEvents.png" align="left" style="width:24;height:24"/></td><td><br/><b><p><br/>Please select an application and cluster to view data</p></b></td></tr></table></div>');
     }
     //releasing the latch so that we can request data again from the backend.
     dataLoaded = true;

http://git-wip-us.apache.org/repos/asf/stratos/blob/f3635da7/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Status/Member_Status/js/main.js
----------------------------------------------------------------------
diff --git a/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Status/Member_Status/js/main.js b/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Status/Member_Status/js/main.js
index 641f875..d3aaf6d 100644
--- a/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Status/Member_Status/js/main.js
+++ b/extensions/das/metering-service/capps/stratos-metering-service/Gadget_Member_Status/Member_Status/js/main.js
@@ -165,7 +165,7 @@ function drawChart(data) {
         }
     } else {
         jQuery("#placeholder").html("");
-        jQuery("#placeholder").append('<div id="noChart"><table><tr><td style="padding:30px 20px 0px 20px"><img src="../../portal/images/noEvents.png" align="left" style="width:24;height:24"/></td><td><br/><b><p><br/> Data is not available for plotting with selected values</p></b></td></tr></table></div>');
+        jQuery("#placeholder").append('<div id="noChart"><table><tr><td style="padding:30px 20px 0px 20px"><img src="../../portal/images/noEvents.png" align="left" style="width:24;height:24"/></td><td><br/><b><p><br/>Please select an application and cluster to view data</p></b></td></tr></table></div>');
     }
     //releasing the latch so that we can request data again from the backend.
     dataLoaded = true;


[4/4] stratos git commit: Adding database creation command to mysqlscript.sql file

Posted by im...@apache.org.
Adding database creation command to mysqlscript.sql file


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

Branch: refs/heads/stratos-4.1.x
Commit: 8eb8de21b3d1d4808793fcdab6fd45ca00861f2b
Parents: dfa4486
Author: Thanuja <th...@wso2.com>
Authored: Tue Sep 29 09:38:19 2015 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Tue Sep 29 14:40:49 2015 +0530

----------------------------------------------------------------------
 extensions/das/metering-service/capps/mysqlscript.sql | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/8eb8de21/extensions/das/metering-service/capps/mysqlscript.sql
----------------------------------------------------------------------
diff --git a/extensions/das/metering-service/capps/mysqlscript.sql b/extensions/das/metering-service/capps/mysqlscript.sql
index f198060..7e783a9 100644
--- a/extensions/das/metering-service/capps/mysqlscript.sql
+++ b/extensions/das/metering-service/capps/mysqlscript.sql
@@ -1,3 +1,4 @@
+CREATE DATABASE ANALYTICS_PROCESSED_DATA_STORE;
 CREATE TABLE ANALYTICS_PROCESSED_DATA_STORE.MEMBER_STATUS(Time long, ApplicationId VARCHAR(150), ClusterAlias VARCHAR(150), MemberId VARCHAR(150), MemberStatus VARCHAR(50));
 CREATE TABLE ANALYTICS_PROCESSED_DATA_STORE.MEMBER_COUNT(Time long, ApplicationId VARCHAR(150), ClusterAlias VARCHAR(150), CreatedInstanceCount int, InitializedInstanceCount int, ActiveInstanceCount int, TerminatedInstanceCount int);
 CREATE TABLE ANALYTICS_PROCESSED_DATA_STORE.SCALING_DETAILS(Time VARCHAR(50), ScalingDecisionId VARCHAR(150), ClusterId VARCHAR(150), MinInstanceCount INT, MaxInstanceCount INT, RIFPredicted INT, RIFThreshold INT ,RIFRequiredInstances INT, MCPredicted INT, MCThreshold INT, MCRequiredInstances INT ,LAPredicted INT, LAThreshold INT,LARequiredInstances INT,RequiredInstanceCount INT ,ActiveInstanceCount INT, AdditionalInstanceCount INT, ScalingReason VARCHAR(150));


[2/4] stratos git commit: Adding ues patch

Posted by im...@apache.org.
Adding ues patch


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

Branch: refs/heads/stratos-4.1.x
Commit: 24adbc33d4f4c10a564a0318b22bb3111c1cba0a
Parents: 8eb8de2
Author: Thanuja <th...@wso2.com>
Authored: Tue Sep 29 10:48:46 2015 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Tue Sep 29 14:40:49 2015 +0530

----------------------------------------------------------------------
 .../das/metering-service/ues-patch/README.md    |   8 +
 .../metering-service/ues-patch/dashboard.jag    |  85 +++++++++
 .../ues-patch/ues-dashboards.js                 | 188 +++++++++++++++++++
 .../metering-service/ues-patch/ues-pubsub.js    |  27 +++
 4 files changed, 308 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/24adbc33/extensions/das/metering-service/ues-patch/README.md
----------------------------------------------------------------------
diff --git a/extensions/das/metering-service/ues-patch/README.md b/extensions/das/metering-service/ues-patch/README.md
new file mode 100644
index 0000000..69e065c
--- /dev/null
+++ b/extensions/das/metering-service/ues-patch/README.md
@@ -0,0 +1,8 @@
+This folder (ues-patch) contains fix for DAS-3.0.0 analytics dashboard to  support reading request parameters from 
+dashboard url and publish the values to gadgets.
+
+You can find the related UES product jira here: https://wso2.org/jira/browse/UES-582
+Please follow below steps to apply the patch locally:
+
+1. Copy 'ues-dashboard.js' and 'ues-pubsub.js' files to <DAS-HOME>/repository/deployment/server/jaggeryapps/portal/js/ folder.
+2. Copy 'dashboard.jag' file to <DAS-HOME>/repository/deployment/server/jaggeryapps/portal/theme/templates/ folder.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/24adbc33/extensions/das/metering-service/ues-patch/dashboard.jag
----------------------------------------------------------------------
diff --git a/extensions/das/metering-service/ues-patch/dashboard.jag b/extensions/das/metering-service/ues-patch/dashboard.jag
new file mode 100644
index 0000000..cccda65
--- /dev/null
+++ b/extensions/das/metering-service/ues-patch/dashboard.jag
@@ -0,0 +1,85 @@
+<!doctype html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <link rel="icon" href="<%=urlPrefix%><%=utils.resolveUrl('images/favicon.png')%>" type="image/x-icon" />
+    <link rel="stylesheet" href="<%=urlPrefix%>css/bootstrap.min.css">
+    <link rel="stylesheet" href="<%=urlPrefix%>css/fontwso2.css">
+    <link rel="stylesheet" href="<%=urlPrefix%>css/fontwso2-extend.css">
+    <link rel="stylesheet" href="<%=urlPrefix%>css/OpenSans.css">
+    <link rel="stylesheet" href="<%=urlPrefix%>css/common.css">
+    <link rel="stylesheet" href="<%=urlPrefix%>css/dashboard.css">
+    <% include('/controllers/includes/theme-dashboard-styles.jag'); %>
+    <title>Dashboards</title>
+</head>
+<body>
+<div id="navigation" role="navigation" class="navbar navbar-inverse navbar-fixed-top">
+    <div class="container">
+        <div class="navbar-header">
+            <button data-target=".horizontal-bar" data-toggle="collapse" class="navbar-toggle" type="button">
+                <span class="sr-only">Toggle navigation</span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+                <span class="icon-bar"></span>
+            </button>
+            <a href="<%=dbRoot%>" class="navbar-brand"><%=dashboard.title%></a>
+        </div>
+        <div class="collapse navbar-collapse horizontal-bar">
+            <ul class="nav navbar-nav">
+                <li<% if(dashboard.landing === pageId) { %> class="active"<% } %>>
+                    <a href="<%=dbRoot%>">Home</a>
+                </li>
+                <%
+var pages = dashboard.pages;
+pages.forEach(function (p) {
+    if (dashboard.landing !== p.id) {
+        %>
+                <li<%if (p.id === pageId) { %> class="active"<% } %>>
+                            <a href="<%=dbRoot%><%=p.id%>"><%=p.title%></a>
+                        </li>
+                    <% } %>
+                <% }); %>
+            </ul>
+            <ul class="nav navbar-nav navbar-right">
+            <% if (user) { %>
+                <li>
+                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
+                               <%=user.username%> <span class="caret"></span>
+                    </a>
+                    <ul class="dropdown-menu" role="menu">
+                        <li><a href="<%=urlPrefix%>logout?destination=<%=dest%>">Logout</a></li>
+                    </ul>
+                </li>
+            <% } else { %>
+                <li><a href="<%=urlPrefix%>login?destination=<%=dest%>">Login</a></li>
+                <% } %>
+            </ul>
+        </div>
+           <!--/.nav-collapse -->
+     </div>
+</div>
+<div id="wrapper"></div>
+<!--<iframe id="sandbox" src="preview.jag"></iframe>-->
+<script src="<%=urlPrefix%>js/jquery-1.10.2.js"></script>
+<script src="<%=urlPrefix%>js/bootstrap.min.js"></script>
+<!-- TODO fix shindig url -->
+<script src="/shindig/gadgets/js/container:open-views:opensearch:rpc:xmlutil:pubsub-2.js?c=1&debug=1&container=default"></script>
+<script src="<%=urlPrefix%>js/ues.js"></script>
+<script src="<%=urlPrefix%>js/ues-prefs.js"></script>
+<% include('/controllers/includes/common-scripts.jag'); %>
+<% include('/controllers/includes/dashboard-scripts.jag'); %>
+<script src="<%=urlPrefix%>js/ues-gadgets.js"></script>
+<script src="<%=urlPrefix%>js/ues-dashboards.js"></script>
+<script src="<%=urlPrefix%>js/ues-pubsub.js"></script>
+<script src="<%=urlPrefix%>extensions/components/gadget/index.js"></script>
+<script src="<%=urlPrefix%>extensions/components/widget/index.js"></script>
+<script src="<%=urlPrefix%>extensions/uris/local/index.js"></script>
+<script src="<%=urlPrefix%>extensions/uris/store/index.js"></script>
+<% include('/controllers/includes/theme-dashboard-scripts.jag'); %>
+<script>
+    ues.dashboards.render($('#wrapper'), ues.global.dashboard, ues.global.page);
+</script>
+</body>
+</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/24adbc33/extensions/das/metering-service/ues-patch/ues-dashboards.js
----------------------------------------------------------------------
diff --git a/extensions/das/metering-service/ues-patch/ues-dashboards.js b/extensions/das/metering-service/ues-patch/ues-dashboards.js
new file mode 100644
index 0000000..9d0742e
--- /dev/null
+++ b/extensions/das/metering-service/ues-patch/ues-dashboards.js
@@ -0,0 +1,188 @@
+(function () {
+
+    var findPlugin = function (type) {
+        var plugin = ues.plugins.components[type];
+        if (!plugin) {
+            throw 'ues dashboard plugin for ' + type + ' cannot be found';
+        }
+        return plugin;
+    };
+
+    var createComponent = function (container, component, done) {
+        var type = component.content.type;
+        var plugin = findPlugin(type);
+        var sandbox = $('<div id="' + component.id + '" class="ues-component"></div>');
+        sandbox.appendTo(container);
+        plugin.create(sandbox, component, ues.hub, done);
+    };
+
+    var updateComponent = function (component, done) {
+        var plugin = findPlugin(component.content.type);
+        var container = $('#' + component.id);
+        plugin.update(container, component, ues.hub, done);
+    };
+
+    var destroyComponent = function (component, done) {
+        var plugin = findPlugin(component.content.type);
+        var container = $('#' + component.id);
+        plugin.destroy(container, component, ues.hub, done);
+    };
+
+    var componentId = function (clientId) {
+        return clientId.split('-').pop();
+    };
+
+    var wirings;
+
+    var publishForClient = ues.hub.publishForClient;
+    ues.hub.publishForClient = function (container, topic, data) {
+        console.log('publishing data container:%s, topic:%s, data:%j', container.getClientID(), topic, data);
+        var clientId = componentId(container.getClientID());
+        var channels = wirings[clientId + '.' + topic];
+        if (!channels) {
+            return;
+        }
+        channels.forEach(function (channel) {
+            publishForClient.apply(ues.hub, [container, channel, data]);
+        });
+    };
+
+
+    var publish = ues.hub.publish;
+    ues.hub.publish = function (topic, data){
+        $(".container").find('.ues-component').each(function () {
+            var id = $(this).attr('id');
+            var channel = id + "." + topic;
+            publish.apply(ues.hub, [channel, data]);
+        });
+    }
+
+    var wires = function (page) {
+        var content = page.content;
+        var area;
+        var blocks;
+        var wirez = {};
+
+        var wire = function (wirez, id, listeners) {
+            var event;
+            var listener;
+            for (event in listeners) {
+                if (listeners.hasOwnProperty(event)) {
+                    listener = listeners[event];
+                    if (!listener.on) {
+                        continue;
+                    }
+                    listener.on.forEach(function (notifier) {
+                        var channel = notifier.from + '.' + notifier.event;
+                        var wire = wirez[channel] || (wirez[channel] = []);
+                        wire.push(id + '.' + event);
+                    });
+                }
+            }
+        };
+
+        for (area in content) {
+            if (content.hasOwnProperty(area)) {
+                blocks = content[area];
+                blocks.forEach(function (block) {
+                    var listeners = block.content.listen;
+                    if (!listeners) {
+                        return;
+                    }
+                    wire(wirez, block.id, listeners);
+                });
+            }
+        }
+        console.log(wirez);
+        return wirez;
+    };
+
+    var setDocumentTitle = function (dashboard, page) {
+        document.title = dashboard.title + ' | ' + page.title;
+    };
+
+    var renderPage = function (element, dashboard, page, done) {
+        setDocumentTitle(dashboard, page);
+        wirings = wires(page);
+        var container;
+        var area;
+        var layout = $(page.layout.content);
+        var content = page.content;
+        element.html(layout);
+        for (area in content) {
+            if (content.hasOwnProperty(area)) {
+                container = $('#' + area, layout);
+                content[area].forEach(function (options) {
+                    createComponent(container, options, function (err) {
+                        if (err) {
+                            console.error(err);
+                        }
+                    });
+                });
+            }
+        }
+        if (!done) {
+            return;
+        }
+        done();
+    };
+
+    var findPage = function (dashboard, id) {
+        var i;
+        var page;
+        var pages = dashboard.pages;
+        var length = pages.length;
+        for (i = 0; i < length; i++) {
+            page = pages[i];
+            if (page.id === id) {
+                return page;
+            }
+        }
+    };
+
+    var renderDashboard = function (element, dashboard, name, done) {
+        name = name || dashboard.landing;
+        var page = findPage(dashboard, name);
+        if (!page) {
+            throw 'requested page : ' + name + ' cannot be found';
+        }
+        renderPage(element, dashboard, page, done);
+    };
+
+    var rewireDashboard = function (page) {
+        wirings = wires(page);
+    };
+
+    var resolveURI = function (uri) {
+        var index = uri.indexOf('://');
+        var scheme = uri.substring(0, index);
+        var uriPlugin = ues.plugins.uris[scheme];
+        if (!uriPlugin) {
+            return uri;
+        }
+        var path = uri.substring(index + 3);
+        return uriPlugin(path);
+    };
+
+    ues.components = {
+        create: createComponent,
+        update: updateComponent,
+        destroy: destroyComponent
+    };
+
+    ues.dashboards = {
+        render: renderDashboard,
+        rewire: rewireDashboard,
+        findPage: findPage,
+        resolveURI: resolveURI
+    };
+
+    ues.assets = {};
+
+    ues.plugins = {
+        assets: {},
+        components: {},
+        uris: {}
+    };
+
+}());
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/24adbc33/extensions/das/metering-service/ues-patch/ues-pubsub.js
----------------------------------------------------------------------
diff --git a/extensions/das/metering-service/ues-patch/ues-pubsub.js b/extensions/das/metering-service/ues-patch/ues-pubsub.js
new file mode 100644
index 0000000..b7b2537
--- /dev/null
+++ b/extensions/das/metering-service/ues-patch/ues-pubsub.js
@@ -0,0 +1,27 @@
+var applicationId;
+var clusterId;
+var vars;
+$(document).ready(function () {
+    var query = window.location.search.substring(1);
+    vars = query.split("&");
+
+    applicationId = getRequestParam('applicationId');
+    clusterId = getRequestParam('clusterId');
+
+    setTimeout(function () {
+        var data = {applicationId: applicationId, clusterId: clusterId};
+        console.log("Publishing request params: " + JSON.stringify(data));
+        ues.hub.publish("request-params",data);
+    }, 2000);
+
+});
+
+function getRequestParam(variable) {
+    for (var i = 0; i < vars.length; i++) {
+        var pair = vars[i].split("=");
+        if (pair[0] == variable) {
+            return pair[1];
+        }
+    }
+    return null;
+}