package com.highway2urhell.transformer; import javassist.CtClass; import javassist.CtMethod; public class ActiveMQConnectionFactoryTransformer extends AbstractLeechTransformer { public ActiveMQConnectionFactoryTransformer() { super("org/apache/activemq/ActiveMQConnectionFactory"); addImportPackage("java.util", "java.util.Map"); } @Override protected void doTransform(CtClass cc) throws Exception { CtMethod c = cc.getMethod("setBrokerURL", "(Ljava/lang/String;)V"); String h2hHookCode = "" + "List listEntryPath = new ArrayList();" + "EntryPathData entry = new EntryPathData();" + "entry.setClassName(\"org.apache.activemq.ActiveMQConnectionFactory\");" + "entry.setMethodName(\"broker\");" + "entry.setUri(brokerURL);" + "entry.setAudit(Boolean.FALSE);" + "entry.setTypePath(TypePath.DYNAMIC);" + "listEntryPath.add(entry);" + "CoreEngine.getInstance().getFramework(\"ACTIVEMQ_CONNECTION_FACTORY\").receiveData(listEntryPath);"; c.insertBefore(h2hHookCode); } }