%--
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.
--%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/portlet" prefix="portlet"%>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.sql.Connection" %>
<%@ page import="java.sql.DatabaseMetaData" %>
<%@ page import="java.sql.PreparedStatement" %>
<%@ page import="java.sql.ResultSet" %>
<%@ page import="java.sql.SQLException" %>
<%@ page import="org.apache.geronimo.monitoring.console.MRCConnector" %>
<%@ page import="org.apache.geronimo.monitoring.console.util.*" %>
<%
String message = (String) request.getAttribute("message");
if (!message.equals(""))
{
%>
<%=message %>
<%} %>
<%
DBManager DBase = new DBManager();
Connection con = DBase.getConnection();
PreparedStatement pStmt = con.prepareStatement("SELECT * FROM servers");
ResultSet rs = pStmt.executeQuery();
%>
Servers
Name |
IP/Hostname |
Status |
Stat. Query |
Actions |
<%
// data structure to store the server's info
class ServerInfo {
public String ip;
public int port;
public int protocol;
public String username;
public String password;
public String server_id;
public boolean enabled;
public String name;
}
ArrayList serverInfos = new ArrayList();
// for each server, save the information locally
while(rs.next()) {
ServerInfo s = new ServerInfo();
s.ip = rs.getString("ip");
s.username = rs.getString("username");
s.password = rs.getString("password");
s.server_id = rs.getString("server_id");
s.name = rs.getString("name");
s.enabled = rs.getInt("enabled") == 1 ? true : false;
s.port = rs.getInt("port");
s.protocol = rs.getInt("protocol");
serverInfos.add( s );
}
// for each server, draw it
for(int i = 0 ; i < serverInfos.size(); i++) {
String ip = serverInfos.get(i).ip;
String username = serverInfos.get(i).username;
String password = serverInfos.get(i).password;
String server_id = serverInfos.get(i).server_id;
int port = serverInfos.get(i).port;
int protocol = serverInfos.get(i).protocol;
boolean enabled = serverInfos.get(i).enabled;
String name = serverInfos.get(i).name;
boolean online = false;
Integer collecting = 0;
MRCConnector mrc = null;
Long snapshotDuration = new Long(0);
if (enabled) {
try {
mrc = new MRCConnector(ip, username, password, port, protocol);
online = true;
} catch (Exception e) {
online = false;
}
try {
snapshotDuration = mrc.getSnapshotDuration();
collecting = mrc.isSnapshotRunning();
} catch (Exception e) {
collecting = 0;
online = false;
}
}
%>
<%
if(enabled){
%>
"><%=name%> |
"><%=ip%> |
<%
}
else{
%>
<%=name%> |
<%=ip%> |
<%
}
if (online) { // online
%>
Online |
<%
} else if(enabled){ // offline
%>
Offline |
<%
} else { // Disabled
%>
Disabled |
<%
}
if (collecting == 0) { // not collecting statistics
%>
(stopped) |
<%
if(enabled) { // enable the links
%>
"> Enable Query |
<%
} else { // do not provide links
%>
Enable Query |
<%
}
%>
"> Edit |
<%
}
else if (collecting == -1) { // not collecting statistics
%>
Stopping... |
<%
if(enabled) { // enable the links
%>
Disable Query |
<%
} else { // do not provide links
%>
Enable Query |
<%
}
%>
"> Edit |
<%
}
else { // collecting statistics
if (enabled)
{
%>
<%=snapshotDuration/1000/60+" min. (running)"%> |
"> Disable Query |
"> Edit |
<%
}
else
{
%>
Stopped |
Disable Query |
"> Edit |
<%
}
}
if(enabled) { // enabled server
%>
"> Disable |
<%
} else { // disabled server
%>
"> Enable |
<%
}
%>
<%}
%>
<%
// close connection
con.close();
%>
|
|
|