00001
00026 package org.objectweb.jonas.webapp.jonasadmin.catalina;
00027
00028 import java.io.Serializable;
00029
00030 import javax.management.ObjectName;
00031
00032 import org.objectweb.jonas.jmx.JonasManagementRepr;
00033
00037 public class ConnectorItem implements Serializable {
00038
00039
00040
00041 private String objectName = null;
00042 private String port = null;
00043 private String address = null;
00044 private String scheme = null;
00045 private String connectorType = null;
00046 private boolean applicationServerPort = false;
00047
00048
00049
00050 public ConnectorItem() {
00051 }
00052
00053 public ConnectorItem(ObjectName p_OnConnector, int p_ApplicationServerPort)
00054 throws Exception {
00055 setObjectName(p_OnConnector.toString());
00056 setPort(p_OnConnector.getKeyProperty("port"));
00057 applicationServerPort = port.equals(String.valueOf(p_ApplicationServerPort));
00058 setAddress((String) JonasManagementRepr.getAttribute(p_OnConnector, "address"));
00059 setScheme((String) JonasManagementRepr.getAttribute(p_OnConnector, "scheme"));
00060
00061 String sHandlerClassName = (String) JonasManagementRepr.getAttribute(p_OnConnector
00062 , "protocolHandlerClassName");
00063 int period = sHandlerClassName.lastIndexOf('.');
00064 String sHandlerType = sHandlerClassName.substring(period + 1);
00065 setConnectorType("HTTPS");
00066 if ("JkCoyoteHandler".equalsIgnoreCase(sHandlerType)) {
00067 setConnectorType("AJP");
00068 }
00069 else if (("Http11Protocol".equalsIgnoreCase(sHandlerType) == true)
00070 && ("http".equalsIgnoreCase(getScheme()) == true)) {
00071 setConnectorType("HTTP");
00072 }
00073 }
00074
00075
00076
00077 public String getPort() {
00078 return port;
00079 }
00080
00081 public void setPort(String port) {
00082 this.port = port;
00083 }
00084
00085 public String getAddress() {
00086 return address;
00087 }
00088
00089 public void setAddress(String address) {
00090 this.address = address;
00091 }
00092
00093 public String getScheme() {
00094 return scheme;
00095 }
00096
00097 public void setScheme(String scheme) {
00098 this.scheme = scheme;
00099 }
00100
00101 public String getObjectName() {
00102 return objectName;
00103 }
00104
00105 public void setObjectName(String objectName) {
00106 this.objectName = objectName;
00107 }
00108
00109 public String getConnectorType() {
00110 return connectorType;
00111 }
00112
00113 public void setConnectorType(String connectorType) {
00114 this.connectorType = connectorType;
00115 }
00116
00117 public boolean isApplicationServerPort() {
00118 return applicationServerPort;
00119 }
00120
00121 public String getLabel() {
00122 StringBuffer sb = new StringBuffer(getPort());
00123 if (getAddress() != null) {
00124 sb.append(" (");
00125 sb.append(getAddress());
00126 sb.append(")");
00127 }
00128 return sb.toString();
00129 }
00130 }