1 23 24 package org.continuent.sequoia.common.jmx.management; 25 26 import java.io.Serializable ; 27 import java.util.ArrayList ; 28 import java.util.Iterator ; 29 import java.util.List ; 30 31 import org.continuent.sequoia.controller.backend.DatabaseBackend; 32 import org.continuent.sequoia.controller.virtualdatabase.VirtualDatabase; 33 34 44 public class BackendInfo implements Serializable 45 { 46 private static final long serialVersionUID = -9143159288188992488L; 47 48 private String name; 49 private String url; 50 private String driverPath; 51 private String driverClassName; 52 private String virtualDatabaseName; 53 private String connectionTestStatement; 54 private int nbOfWorkerThreads; 55 private int dynamicPrecision; 56 63 private boolean gatherSystemTables = false; 64 private String schemaName; 65 private String xml; 66 67 73 public BackendInfo(DatabaseBackend backend) 74 { 75 this.url = backend.getURL(); 76 this.name = backend.getName(); 77 this.driverPath = backend.getDriverPath(); 78 this.driverClassName = backend.getDriverClassName(); 79 this.virtualDatabaseName = backend.getVirtualDatabaseName(); 80 this.connectionTestStatement = backend.getConnectionTestStatement(); 81 this.nbOfWorkerThreads = backend.getNbOfWorkerThreads(); 82 this.dynamicPrecision = backend.getDynamicPrecision(); 83 this.schemaName = backend.getSchemaName(); 84 this.xml = backend.getXml(); 85 } 86 87 94 public DatabaseBackend getDatabaseBackend(VirtualDatabase vdb) 95 { 96 return new DatabaseBackend(vdb, name, driverPath, driverClassName, url, 97 true, connectionTestStatement, nbOfWorkerThreads); 98 } 99 100 105 public String getXml() 106 { 107 return xml; 108 } 109 110 115 public String getConnectionTestStatement() 116 { 117 return connectionTestStatement; 118 } 119 120 125 public String getDriverClassName() 126 { 127 return driverClassName; 128 } 129 130 135 public String getDriverPath() 136 { 137 return driverPath; 138 } 139 140 145 public int getDynamicPrecision() 146 { 147 return dynamicPrecision; 148 } 149 150 155 public String getName() 156 { 157 return name; 158 } 159 160 165 public final int getNbOfWorkerThreads() 166 { 167 return nbOfWorkerThreads; 168 } 169 170 175 public String getSchemaName() 176 { 177 return schemaName; 178 } 179 180 185 public String getUrl() 186 { 187 return url; 188 } 189 190 195 public String getVirtualDatabaseName() 196 { 197 return virtualDatabaseName; 198 } 199 200 205 public void setXml(String xml) 206 { 207 this.xml = null; 208 } 209 210 215 public String toString() 216 { 217 StringBuffer buff = new StringBuffer ("BackendInfo["); 218 buff.append("name=").append(name); 219 buff.append(", virtualDatabaseName").append(virtualDatabaseName); 220 buff.append(", url=").append(url); 221 buff.append("]"); 222 return buff.toString(); 223 } 224 225 239 public static List toDatabaseBackends( 240 VirtualDatabase vdb, List backendInfos) 241 { 242 if (backendInfos == null) 243 { 244 return new ArrayList (); 245 } 246 List backends = new ArrayList (backendInfos.size()); 248 for (Iterator iter = backendInfos.iterator(); iter.hasNext();) 249 { 250 BackendInfo info = (BackendInfo) iter.next(); 251 backends.add(info.getDatabaseBackend(vdb)); 252 } 253 return backends; 254 } 255 256 } | Popular Tags |