[유치수] [NOBTS] add getTargetClass() on Modifier interface.

git-svn-id: http://svn.bds.nhncorp.com/pe/hippo-tomcat-profiler/trunk@486 84d0f5b1-2673-498c-a247-62c4ff18d310
This commit is contained in:
Chisu Yu
2012-08-01 07:11:16 +00:00
parent 96a7f2bba8
commit 17157bbc53
22 changed files with 101 additions and 20 deletions
@@ -44,13 +44,13 @@ public class DefaultModifierRegistry implements ModifierRegistry {
public void addTomcatModifier() {
Map<String, Modifier> registry = this.registry;
Modifier entryPointStandardHostValveModifier = new EntryPointStandardHostValveModifier(classPool);
registry.put("org/apache/catalina/core/StandardHostValve", entryPointStandardHostValveModifier);
registry.put(entryPointStandardHostValveModifier.getTargetClass(), entryPointStandardHostValveModifier);
Modifier tomcatStandardServiceModifier = new TomcatStandardServiceModifier(classPool);
registry.put("org/apache/catalina/core/StandardService", tomcatStandardServiceModifier);
registry.put(tomcatStandardServiceModifier.getTargetClass(), tomcatStandardServiceModifier);
Modifier tomcatConnectorModifier = new TomcatConnectorModifier(classPool);
registry.put("org/apache/catalina/connector/Connector", tomcatConnectorModifier);
registry.put(tomcatConnectorModifier.getTargetClass(), tomcatConnectorModifier);
}
public void addJdbcModifier() {
@@ -70,31 +70,31 @@ public class DefaultModifierRegistry implements ModifierRegistry {
// TODO MySqlDriver는 버전별로 Connection이 interface인지 class인지가 다름. 문제 없는지
// 확인필요.
Modifier mysqlConnectionImplModifier = new MySQLConnectionImplModifier(classPool);
registry.put("com/mysql/jdbc/ConnectionImpl", mysqlConnectionImplModifier);
registry.put(mysqlConnectionImplModifier.getTargetClass(), mysqlConnectionImplModifier);
Modifier mysqlStatementModifier = new MySQLStatementModifier(classPool);
registry.put("com/mysql/jdbc/StatementImpl", mysqlStatementModifier);
registry.put(mysqlStatementModifier.getTargetClass(), mysqlStatementModifier);
Modifier mysqlPreparedStatementModifier = new MySQLPreparedStatementModifier(classPool);
registry.put("com/mysql/jdbc/PreparedStatement", mysqlPreparedStatementModifier);
registry.put(mysqlPreparedStatementModifier.getTargetClass(), mysqlPreparedStatementModifier);
Modifier mysqlResultSetModifier = new MySQLResultSetModifier(classPool);
registry.put("com/mysql/jdbc/ResultSetImpl", mysqlResultSetModifier);
registry.put(mysqlResultSetModifier.getTargetClass(), mysqlResultSetModifier);
}
private void addMsSqlDriver() {
Map<String, Modifier> registry = this.registry;
Modifier mssqlConnectionModifier = new MSSQLConnectionModifier(classPool);
registry.put("net/sourceforge/jtds/jdbc/ConnectionJDBC2", mssqlConnectionModifier);
registry.put(mssqlConnectionModifier.getTargetClass(), mssqlConnectionModifier);
Modifier mssqlStatementModifier = new MSSQLStatementModifier(classPool);
registry.put("net/sourceforge/jtds/jdbc/JtdsStatement", mssqlStatementModifier);
registry.put(mssqlStatementModifier.getTargetClass(), mssqlStatementModifier);
Modifier mssqlPreparedStatementModifier = new MSSQLPreparedStatementModifier(classPool);
registry.put("net/sourceforge/jtds/jdbc/JtdsPreparedStatement", mssqlPreparedStatementModifier);
registry.put(mssqlPreparedStatementModifier.getTargetClass(), mssqlPreparedStatementModifier);
Modifier mssqlResultSetModifier = new MSSQLResultSetModifier(classPool);
registry.put("net/sourceforge/jtds/jdbc/JtdsResultSet", mssqlResultSetModifier);
registry.put(mssqlResultSetModifier.getTargetClass(), mssqlResultSetModifier);
}
@@ -102,38 +102,38 @@ public class DefaultModifierRegistry implements ModifierRegistry {
Map<String, Modifier> registry = this.registry;
// TODO oracle의 경우 connection에 대한 impl이 없음. 확인필요.
Modifier oraclePreparedStatementModifier = new OraclePreparedStatementModifier(classPool);
registry.put("oracle/jdbc/driver/OraclePreparedStatement", oraclePreparedStatementModifier);
registry.put(oraclePreparedStatementModifier.getTargetClass(), oraclePreparedStatementModifier);
Modifier oracleStatement = new OracleStatementModifier(classPool);
registry.put("oracle/jdbc/driver/OracleStatement", oracleStatement);
registry.put(oracleStatement.getTargetClass(), oracleStatement);
Modifier oracleResultSetModifier = new OracleResultSetModifier(classPool);
registry.put("oracle/jdbc/driver/OracleResultSetImpl", oracleResultSetModifier);
registry.put(oracleResultSetModifier.getTargetClass(), oracleResultSetModifier);
}
private void addCubridDriver() {
Map<String, Modifier> registry = this.registry;
// TODO cubrid의 경우도 connection에 대한 impl이 없음. 확인필요.
Modifier cubridStatementModifier = new CubridStatementModifier(classPool);
registry.put("cubrid/jdbc/driver/CUBRIDStatement", cubridStatementModifier);
registry.put(cubridStatementModifier.getTargetClass(), cubridStatementModifier);
Modifier cubridPreparedStatementModifier = new CubridPreparedStatementModifier(classPool);
registry.put("cubrid/jdbc/driver/CUBRIDPreparedStatement", cubridPreparedStatementModifier);
registry.put(cubridPreparedStatementModifier.getTargetClass(), cubridPreparedStatementModifier);
Modifier cubridResultSetModifier = new CubridResultSetModifier(classPool);
registry.put("cubrid/jdbc/driver/CUBRIDResultSet", cubridResultSetModifier);
registry.put(cubridResultSetModifier.getTargetClass(), cubridResultSetModifier);
Modifier cubridUStatementModifier = new CubridUStatementModifier(classPool);
registry.put("cubrid/jdbc/jci/UStatement", cubridUStatementModifier);
registry.put(cubridStatementModifier.getTargetClass(), cubridUStatementModifier);
}
private void addDbcpDriver() {
Map<String, Modifier> registry = this.registry;
// TODO cubrid의 경우도 connection에 대한 impl이 없음. 확인필요.
Modifier dbcpBasicDataSourceModifier = new DBCPBasicDataSourceModifier(classPool);
registry.put("org/apache/commons/dbcp/BasicDataSource", dbcpBasicDataSourceModifier);
registry.put(dbcpBasicDataSourceModifier.getTargetClass(), dbcpBasicDataSourceModifier);
Modifier dbcpPoolModifier = new DBCPPoolModifier(classPool);
registry.put("org/apache/commons/dbcp/PoolingDataSource$PoolGuardConnectionWrapper", dbcpPoolModifier);
registry.put(dbcpPoolModifier.getTargetClass(), dbcpPoolModifier);
}
}
@@ -2,4 +2,5 @@ package com.profiler.modifier;
public interface Modifier {
byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer);
String getTargetClass();
}
@@ -19,6 +19,10 @@ public class CubridPreparedStatementModifier extends AbstractModifier {
public CubridPreparedStatementModifier(ClassPool classPool) {
super(classPool);
}
public String getTargetClass() {
return "cubrid/jdbc/driver/CUBRIDPreparedStatement";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
@@ -17,6 +17,10 @@ public class CubridResultSetModifier extends AbstractModifier {
public CubridResultSetModifier(ClassPool classPool) {
super(classPool);
}
public String getTargetClass() {
return "cubrid/jdbc/driver/CUBRIDResultSet";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)) {
@@ -18,6 +18,10 @@ public class CubridStatementModifier extends AbstractModifier {
public CubridStatementModifier(ClassPool classPool) {
super(classPool);
}
public String getTargetClass() {
return "cubrid/jdbc/driver/CUBRIDStatement";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)) {
@@ -17,6 +17,10 @@ public class CubridUStatementModifier extends AbstractModifier {
public CubridUStatementModifier(ClassPool classPool) {
super(classPool);
}
public String getTargetClass() {
return "cubrid/jdbc/jci/UStatement";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
@@ -19,6 +19,10 @@ public class DBCPBasicDataSourceModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "org/apache/commons/dbcp/BasicDataSource";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -18,6 +18,10 @@ public class DBCPPoolModifier extends AbstractModifier {
public DBCPPoolModifier(ClassPool classPool) {
super(classPool);
}
public String getTargetClass() {
return "org/apache/commons/dbcp/PoolingDataSource$PoolGuardConnectionWrapper";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
@@ -18,6 +18,10 @@ public class MSSQLConnectionModifier extends AbstractModifier {
public MSSQLConnectionModifier(ClassPool classPool) {
super(classPool);
}
public String getTargetClass() {
return "net/sourceforge/jtds/jdbc/ConnectionJDBC2";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
@@ -20,6 +20,10 @@ public class MSSQLPreparedStatementModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "net/sourceforge/jtds/jdbc/JtdsPreparedStatement";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -18,6 +18,10 @@ public class MSSQLResultSetModifier extends AbstractModifier {
public MSSQLResultSetModifier(ClassPool classPool) {
super(classPool);
}
public String getTargetClass() {
return "net/sourceforge/jtds/jdbc/JtdsResultSet";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
@@ -18,6 +18,10 @@ public class MSSQLStatementModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "net/sourceforge/jtds/jdbc/JtdsStatement";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -19,6 +19,10 @@ public class MySQLConnectionImplModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "com/mysql/jdbc/ConnectionImpl";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -19,6 +19,10 @@ public class MySQLPreparedStatementModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "com/mysql/jdbc/PreparedStatement";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -18,6 +18,10 @@ public class MySQLResultSetModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "com/mysql/jdbc/ResultSetImpl";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -19,6 +19,10 @@ public class MySQLStatementModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "com/mysql/jdbc/StatementImpl";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -21,6 +21,10 @@ public class OraclePreparedStatementModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "oracle/jdbc/driver/OraclePreparedStatement";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -18,6 +18,10 @@ public class OracleResultSetModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "oracle/jdbc/driver/OracleResultSetImpl";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -17,6 +17,10 @@ public class OracleStatementModifier extends AbstractModifier {
public OracleStatementModifier(ClassPool classPool) {
super(classPool);
}
public String getTargetClass() {
return "oracle/jdbc/driver/OracleStatement";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
@@ -26,6 +26,10 @@ public class EntryPointStandardHostValveModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "org/apache/catalina/core/StandardHostValve";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -24,6 +24,10 @@ public class TomcatConnectorModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "org/apache/catalina/connector/Connector";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);
@@ -25,6 +25,10 @@ public class TomcatStandardServiceModifier extends AbstractModifier {
super(classPool);
}
public String getTargetClass() {
return "org/apache/catalina/core/StandardService";
}
public byte[] modify(ClassLoader classLoader, String javassistClassName, byte[] classFileBuffer) {
if (logger.isLoggable(Level.INFO)){
logger.info("Modifing. " + javassistClassName);