[jboss-cvs] JBossAS SVN: r57760 - in trunk/aspects/src/main/org/jboss/aop: . deployers
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Oct 20 13:13:34 EDT 2006
Author: kabir.khan at jboss.com
Date: 2006-10-20 13:13:32 -0400 (Fri, 20 Oct 2006)
New Revision: 57760
Added:
trunk/aspects/src/main/org/jboss/aop/deployers/
trunk/aspects/src/main/org/jboss/aop/deployers/AspectDeployer.java
trunk/aspects/src/main/org/jboss/aop/deployers/AspectManager.java
Log:
Added: trunk/aspects/src/main/org/jboss/aop/deployers/AspectDeployer.java
===================================================================
--- trunk/aspects/src/main/org/jboss/aop/deployers/AspectDeployer.java 2006-10-20 17:05:17 UTC (rev 57759)
+++ trunk/aspects/src/main/org/jboss/aop/deployers/AspectDeployer.java 2006-10-20 17:13:32 UTC (rev 57760)
@@ -0,0 +1,322 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, Red Hat Middleware LLC., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.aop.deployers;
+
+import org.jboss.aop.AspectAnnotationLoader;
+import org.jboss.aop.AspectManager;
+import org.jboss.aop.AspectXmlLoader;
+import org.jboss.aop.deployment.JBossScopedClassLoaderHelper;
+import org.jboss.deployers.plugins.deployer.AbstractSimpleDeployer;
+import org.jboss.deployers.spi.deployer.DeploymentUnit;
+import org.jboss.deployers.spi.DeploymentException;
+import org.jboss.deployment.DeploymentInfo;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.virtual.VirtualFileFilter;
+import org.jboss.virtual.VisitorAttributes;
+import org.jboss.virtual.plugins.context.jar.JarUtils;
+import org.jboss.virtual.plugins.vfs.helpers.FilterVirtualFileVisitor;
+import org.jboss.virtual.plugins.vfs.helpers.SuffixesExcludeFilter;
+import org.jboss.logging.Logger;
+import org.w3c.dom.Document;
+
+import java.io.DataInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URL;
+import java.util.List;
+
+import javassist.bytecode.ClassFile;
+
+/**
+ * Deployer for Aspects
+ *
+ * @author <a href="mailto:bill at jboss.org">Bill Burke</a>
+ * @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
+ */
+public class AspectDeployer extends AbstractSimpleDeployer
+{
+ private static final Logger log = Logger.getLogger(AspectDeployer.class);
+ private static final String AOP_JAR_SUFFIX = ".aop";
+ private static final String AOP_DD_SUFFIX = "-aop.xml";
+
+ @Override
+ public int getRelativeOrder()
+ {
+ //TODO Replace with constant from Deployer interface
+ return 4100;//POSTPROCESS_CLASSLOADING_DEPLOYER;
+ }
+
+ public void deploy(DeploymentUnit unit) throws DeploymentException
+ {
+ List<VirtualFile> files = unit.getMetaDataFiles(null, AOP_DD_SUFFIX);
+
+ if (isAopArchiveOrFolder(unit))
+ {
+ deployAnnotations(unit);
+ }
+
+ if (files.size() > 0)
+ {
+ deployXml(unit, files);
+ }
+ }
+
+ public void undeploy(DeploymentUnit unit)
+ {
+ List<VirtualFile> files = unit.getMetaDataFiles(null, AOP_DD_SUFFIX);
+
+ if (isAopArchiveOrFolder(unit))
+ {
+ undeployAnnotations(unit);
+ }
+
+ if (files.size() > 0)
+ {
+ undeployXml(unit, files);
+ }
+ }
+
+ private void deployXml(DeploymentUnit unit, List<VirtualFile> files) throws DeploymentException
+ {
+ ClassLoader scl = getScopedClassLoader(unit);
+
+ if (scl != null)
+ {
+ log.info("AOP deployment is scoped using classloader " + scl);
+ }
+
+ for (VirtualFile vf : files)
+ {
+ try
+ {
+ log.debug("deploying: " + vf.toURL());
+ InputStream is = vf.openStream();
+ try
+ {
+ Document doc = AspectXmlLoader.loadDocument(is);
+ AspectXmlLoader loader = new AspectXmlLoader();
+
+ if (scl != null)
+ {
+ loader.setManager(AspectManager.instance(scl));
+ loader.setClassLoader(scl);
+ }
+ else
+ {
+ loader.setManager(AspectManager.instance());
+ }
+ loader.deployXML(doc, vf.toURL(), unit.getClassLoader());
+ }
+ finally
+ {
+ is.close();
+ }
+ }
+ catch (Exception e)
+ {
+ throw new DeploymentException(e);
+ }
+ }
+ }
+
+ private void undeployXml(DeploymentUnit unit, List<VirtualFile> files)
+ {
+ for (VirtualFile vf : files)
+ {
+ try
+ {
+ log.debug("undeploying: " + vf.toURL());
+ InputStream is = vf.openStream();
+ try
+ {
+ Document doc = AspectXmlLoader.loadDocument(is);
+ AspectXmlLoader loader = new AspectXmlLoader();
+ loader.setManager(AspectManager.instance());
+ loader.undeployXML(doc, vf.toURL());
+ }
+ finally
+ {
+ is.close();
+ }
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException(e);
+ }
+ }
+
+ AspectManager.instance().unregisterClassLoader(unit.getClassLoader());
+ }
+
+ private void deployAnnotations(DeploymentUnit unit) throws DeploymentException
+ {
+ AspectAnnotationLoader loader = new AspectAnnotationLoader(AspectManager.instance());
+ List<VirtualFile> files = getClasses(unit);
+ for(VirtualFile file : files)
+ {
+ ClassFile cf = loadClassFile(file);
+
+ try
+ {
+ log.debug("Deploying possibly annotated class " + cf.getName());
+ loader.deployClassFile(cf);
+ }
+ catch (Exception e)
+ {
+ throw new DeploymentException("Error reading annotations for " + file, e);
+ }
+ }
+ }
+
+ private void undeployAnnotations(DeploymentUnit unit)
+ {
+ AspectAnnotationLoader loader = new AspectAnnotationLoader(AspectManager.instance());
+ List<VirtualFile> files = getClasses(unit);
+ for(VirtualFile file : files)
+ {
+ ClassFile cf = loadClassFile(file);
+
+ try
+ {
+ log.debug("Undeploying possibly annotated class " + cf.getName());
+ loader.undeployClassFile(cf);
+ }
+ catch (Exception e)
+ {
+ throw new RuntimeException("Error reading annotations for " + file, e);
+ }
+ }
+ }
+
+ private ClassFile loadClassFile(VirtualFile file)
+ {
+ DataInputStream din = null;
+ ClassFile cf = null;
+ try
+ {
+ InputStream in = file.openStream();
+ din = new DataInputStream(in);
+ cf = new ClassFile(din);
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException("Error reading " + file, e);
+ }
+ finally
+ {
+ try
+ {
+ din.close();
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException("Error closing input stream for " + file, e);
+ }
+ }
+
+ return cf;
+ }
+
+ private List<VirtualFile> getClasses(DeploymentUnit unit)
+ {
+ VisitorAttributes va = new VisitorAttributes();
+ va.setLeavesOnly(true);
+ ClassFileFilter filter = new ClassFileFilter();
+ RecurseAOPFilter aopFilter = new RecurseAOPFilter();
+ va.setRecurseFilter(aopFilter);
+ FilterVirtualFileVisitor visitor = new FilterVirtualFileVisitor(filter, va);
+
+ for (VirtualFile vf : unit.getDeploymentContext().getClassPath())
+ {
+ try
+ {
+ vf.visit(visitor);
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException(e);
+ }
+ }
+ return visitor.getMatched();
+
+ }
+
+ private boolean isAopArchiveOrFolder(DeploymentUnit unit)
+ {
+ String name = unit.getName();
+
+ //If name is of format 'blah-blah.aop!/' get rid of the trailing '!' and '/', and see if it ends with .aop
+ int index = name.length();
+ if (name.charAt(name.length() - 1) == '/')
+ {
+ index--;
+ }
+ if (name.charAt(name.length() - 2) == '!')
+ {
+ index--;
+ }
+ String realName = (index == name.length()) ? name : name.substring(0, index);
+
+ return (realName.endsWith(AOP_JAR_SUFFIX));
+ }
+
+ private ClassLoader getScopedClassLoader(DeploymentUnit unit)
+ {
+ //Scoped AOP deployments are only available when deployed as part of a scoped sar, ear etc.
+ //It can contain an aop.xml file, or it can be part of a .aop file
+ //Linking a standalone -aop.xml file onto a scoped deployment is not possible at the moment
+ if (JBossScopedClassLoaderHelper.isScopedClassLoader(unit.getClassLoader()))
+ {
+ return unit.getClassLoader();
+ }
+
+ return null;
+ }
+
+ private static class ClassFileFilter implements VirtualFileFilter
+ {
+ public boolean accepts(VirtualFile file)
+ {
+ try
+ {
+ return file.isLeaf() && file.getName().endsWith(".class");
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException(e);
+ }
+ }
+ }
+
+ private static class RecurseAOPFilter implements VirtualFileFilter
+ {
+ public boolean accepts(VirtualFile file)
+ {
+ if (file.getName().endsWith(".aop"))
+ {
+ return true;
+ }
+ return false;
+ }
+ }
+
+}
Added: trunk/aspects/src/main/org/jboss/aop/deployers/AspectManager.java
===================================================================
--- trunk/aspects/src/main/org/jboss/aop/deployers/AspectManager.java 2006-10-20 17:05:17 UTC (rev 57759)
+++ trunk/aspects/src/main/org/jboss/aop/deployers/AspectManager.java 2006-10-20 17:13:32 UTC (rev 57760)
@@ -0,0 +1,618 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.aop.deployers;
+
+import java.io.File;
+
+import javax.management.InstanceAlreadyExistsException;
+import javax.management.JMException;
+import javax.management.ListenerNotFoundException;
+import javax.management.MBeanNotificationInfo;
+import javax.management.MBeanRegistrationException;
+import javax.management.MBeanServer;
+import javax.management.MalformedObjectNameException;
+import javax.management.NotCompliantMBeanException;
+import javax.management.Notification;
+import javax.management.NotificationFilter;
+import javax.management.NotificationListener;
+import javax.management.ObjectName;
+
+import org.jboss.aop.deployment.AspectManagerServiceJDK5;
+import org.jboss.deployment.DeploymentInfo;
+import org.jboss.logging.Logger;
+
+/**
+ *
+ * @author <a href="kabir.khan at jboss.com">Kabir Khan</a>
+ * @version $Revision: 1.1 $
+ */
+public class AspectManager
+{
+ AspectManagerServiceJDK5 delegate = new AspectManagerServiceJDK5("base-aspects.xml");
+ MBeanServer server;
+
+ public void setMbeanServer(MBeanServer server)
+ {
+ if (server != null)
+ {
+ try
+ {
+ server.registerMBean(delegate, new ObjectName("jboss.aop:service=AspectManager"));
+ }
+ catch (Exception e)
+ {
+ // AutoGenerated
+ throw new RuntimeException("Problem registering jboss.aop:service=AspectManager with JMXServer", e);
+ }
+ }
+ else
+ {
+ if (this.server == null)
+ {
+ try
+ {
+ server.unregisterMBean(new ObjectName("jboss.aop:service=AspectManager"));
+ }
+ catch (Exception e)
+ {
+ // AutoGenerated
+ throw new RuntimeException("Problem unregistering jboss.aop:service=AspectManager with JMXServer", e);
+ }
+ }
+ }
+ this.server = server;
+ }
+
+ public MBeanServer getMbeanServer()
+ {
+ return server;
+ }
+
+ /**
+ * @param listener
+ * @param filter
+ * @param handback
+ * @see org.jboss.mx.util.JBossNotificationBroadcasterSupport#addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
+ */
+ public void addNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback)
+ {
+ delegate.addNotificationListener(listener, filter, handback);
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#aspectDefinitions()
+ */
+ public String aspectDefinitions()
+ {
+ return delegate.aspectDefinitions();
+ }
+
+ /**
+ * @param classname
+ * @see org.jboss.aop.deployment.AspectManagerService#attachClass(java.lang.String)
+ */
+ public void attachClass(String classname)
+ {
+ delegate.attachClass(classname);
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#bindings()
+ */
+ public String bindings()
+ {
+ return delegate.bindings();
+ }
+
+ /**
+ * @throws Exception
+ * @see org.jboss.system.ServiceMBeanSupport#create()
+ */
+ public void create() throws Exception
+ {
+ delegate.create();
+ }
+
+ /**
+ *
+ * @see org.jboss.system.ServiceMBeanSupport#destroy()
+ */
+ public void destroy()
+ {
+ delegate.destroy();
+ }
+
+ /**
+ * @param obj
+ * @return
+ * @see java.lang.Object#equals(java.lang.Object)
+ */
+ public boolean equals(Object obj)
+ {
+ return delegate.equals(obj);
+ }
+
+ /**
+ * @return
+ * @throws JMException
+ * @see org.jboss.system.ServiceMBeanSupport#getDeploymentInfo()
+ */
+ public DeploymentInfo getDeploymentInfo() throws JMException
+ {
+ return delegate.getDeploymentInfo();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getEnableLoadtimeWeaving()
+ */
+ public boolean getEnableLoadtimeWeaving()
+ {
+ return delegate.getEnableLoadtimeWeaving();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getEnableTransformer()
+ */
+ public boolean getEnableTransformer()
+ {
+ return delegate.getEnableTransformer();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getExclude()
+ */
+ public String getExclude()
+ {
+ return delegate.getExclude();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getIgnore()
+ */
+ public String getIgnore()
+ {
+ return delegate.getIgnore();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getInclude()
+ */
+ public String getInclude()
+ {
+ return delegate.getInclude();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getInstrumentor()
+ */
+ public String getInstrumentor()
+ {
+ return delegate.getInstrumentor();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.system.ServiceMBeanSupport#getLog()
+ */
+ public Logger getLog()
+ {
+ return delegate.getLog();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.system.ServiceMBeanSupport#getName()
+ */
+ public String getName()
+ {
+ return delegate.getName();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.mx.util.JBossNotificationBroadcasterSupport#getNotificationInfo()
+ */
+ public MBeanNotificationInfo[] getNotificationInfo()
+ {
+ return delegate.getNotificationInfo();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getOptimized()
+ */
+ public boolean getOptimized()
+ {
+ return delegate.getOptimized();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getPrune()
+ */
+ public boolean getPrune()
+ {
+ return delegate.getPrune();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.system.ServiceMBeanSupport#getServer()
+ */
+ public MBeanServer getServer()
+ {
+ return delegate.getServer();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.system.ServiceMBeanSupport#getServiceName()
+ */
+ public ObjectName getServiceName()
+ {
+ return delegate.getServiceName();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.system.ServiceMBeanSupport#getState()
+ */
+ public int getState()
+ {
+ return delegate.getState();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.system.ServiceMBeanSupport#getStateString()
+ */
+ public String getStateString()
+ {
+ return delegate.getStateString();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getSuppressReferenceErrors()
+ */
+ public boolean getSuppressReferenceErrors()
+ {
+ return delegate.getSuppressReferenceErrors();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getSuppressTransformationErrors()
+ */
+ public boolean getSuppressTransformationErrors()
+ {
+ return delegate.getSuppressTransformationErrors();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getTmpClassesDir()
+ */
+ public File getTmpClassesDir()
+ {
+ return delegate.getTmpClassesDir();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#getVerbose()
+ */
+ public boolean getVerbose()
+ {
+ return delegate.getVerbose();
+ }
+
+ /**
+ * @param listener
+ * @param notification
+ * @param handback
+ * @see org.jboss.mx.util.JBossNotificationBroadcasterSupport#handleNotification(javax.management.NotificationListener, javax.management.Notification, java.lang.Object)
+ */
+ public void handleNotification(NotificationListener listener, Notification notification, Object handback)
+ {
+ delegate.handleNotification(listener, notification, handback);
+ }
+
+ /**
+ * @return
+ * @see java.lang.Object#hashCode()
+ */
+ public int hashCode()
+ {
+ return delegate.hashCode();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#interceptorFactories()
+ */
+ public String interceptorFactories()
+ {
+ return delegate.interceptorFactories();
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#introductions()
+ */
+ public String introductions()
+ {
+ return delegate.introductions();
+ }
+
+ /**
+ * @param method
+ * @throws Exception
+ * @see org.jboss.system.ServiceMBeanSupport#jbossInternalLifecycle(java.lang.String)
+ */
+ public void jbossInternalLifecycle(String method) throws Exception
+ {
+ delegate.jbossInternalLifecycle(method);
+ }
+
+ /**
+ * @return
+ * @see org.jboss.mx.util.JBossNotificationBroadcasterSupport#nextNotificationSequenceNumber()
+ */
+ public long nextNotificationSequenceNumber()
+ {
+ return delegate.nextNotificationSequenceNumber();
+ }
+
+ /**
+ *
+ * @see org.jboss.system.ServiceMBeanSupport#postDeregister()
+ */
+ public void postDeregister()
+ {
+ delegate.postDeregister();
+ }
+
+ /**
+ * @param registrationDone
+ * @see org.jboss.system.ServiceMBeanSupport#postRegister(java.lang.Boolean)
+ */
+ public void postRegister(Boolean registrationDone)
+ {
+ delegate.postRegister(registrationDone);
+ }
+
+ /**
+ * @throws Exception
+ * @see org.jboss.system.ServiceMBeanSupport#preDeregister()
+ */
+ public void preDeregister() throws Exception
+ {
+ delegate.preDeregister();
+ }
+
+ /**
+ * @param server
+ * @param name
+ * @return
+ * @throws Exception
+ * @see org.jboss.system.ServiceMBeanSupport#preRegister(javax.management.MBeanServer, javax.management.ObjectName)
+ */
+ public ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception
+ {
+ return delegate.preRegister(server, name);
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#registeredClassLoaders()
+ */
+ public String registeredClassLoaders()
+ {
+ return delegate.registeredClassLoaders();
+ }
+
+ /**
+ * @param listener
+ * @param filter
+ * @param handback
+ * @throws ListenerNotFoundException
+ * @see org.jboss.mx.util.JBossNotificationBroadcasterSupport#removeNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object)
+ */
+ public void removeNotificationListener(NotificationListener listener, NotificationFilter filter, Object handback) throws ListenerNotFoundException
+ {
+ delegate.removeNotificationListener(listener, filter, handback);
+ }
+
+ /**
+ * @param listener
+ * @throws ListenerNotFoundException
+ * @see org.jboss.mx.util.JBossNotificationBroadcasterSupport#removeNotificationListener(javax.management.NotificationListener)
+ */
+ public void removeNotificationListener(NotificationListener listener) throws ListenerNotFoundException
+ {
+ delegate.removeNotificationListener(listener);
+ }
+
+ /**
+ * @param notification
+ * @see org.jboss.mx.util.JBossNotificationBroadcasterSupport#sendNotification(javax.management.Notification)
+ */
+ public void sendNotification(Notification notification)
+ {
+ delegate.sendNotification(notification);
+ }
+
+ /**
+ * @param enableTransformer
+ * @see org.jboss.aop.deployment.AspectManagerService#setEnableLoadtimeWeaving(boolean)
+ */
+ public void setEnableLoadtimeWeaving(boolean enableTransformer)
+ {
+ delegate.setEnableLoadtimeWeaving(enableTransformer);
+ }
+
+ /**
+ * @param enableTransformer
+ * @see org.jboss.aop.deployment.AspectManagerService#setEnableTransformer(boolean)
+ */
+ public void setEnableTransformer(boolean enableTransformer)
+ {
+ delegate.setEnableTransformer(enableTransformer);
+ }
+
+ /**
+ * @param exclude
+ * @see org.jboss.aop.deployment.AspectManagerService#setExclude(java.lang.String)
+ */
+ public void setExclude(String exclude)
+ {
+ delegate.setExclude(exclude);
+ }
+
+ /**
+ * @param ignore
+ * @see org.jboss.aop.deployment.AspectManagerService#setIgnore(java.lang.String)
+ */
+ public void setIgnore(String ignore)
+ {
+ delegate.setIgnore(ignore);
+ }
+
+ /**
+ * @param include
+ * @see org.jboss.aop.deployment.AspectManagerService#setInclude(java.lang.String)
+ */
+ public void setInclude(String include)
+ {
+ delegate.setInclude(include);
+ }
+
+ /**
+ * @param instrumentor
+ * @see org.jboss.aop.deployment.AspectManagerService#setInstrumentor(java.lang.String)
+ */
+ public void setInstrumentor(String instrumentor)
+ {
+ delegate.setInstrumentor(instrumentor);
+ }
+
+ /**
+ * @param verbose
+ * @see org.jboss.aop.deployment.AspectManagerService#setOptimized(boolean)
+ */
+ public void setOptimized(boolean verbose)
+ {
+ delegate.setOptimized(verbose);
+ }
+
+ /**
+ * @param prune
+ * @see org.jboss.aop.deployment.AspectManagerService#setPrune(boolean)
+ */
+ public void setPrune(boolean prune)
+ {
+ delegate.setPrune(prune);
+ }
+
+ /**
+ * @param suppressReferenceErrors
+ * @see org.jboss.aop.deployment.AspectManagerService#setSuppressReferenceErrors(boolean)
+ */
+ public void setSuppressReferenceErrors(boolean suppressReferenceErrors)
+ {
+ delegate.setSuppressReferenceErrors(suppressReferenceErrors);
+ }
+
+ /**
+ * @param suppressTransformationErrors
+ * @see org.jboss.aop.deployment.AspectManagerService#setSuppressTransformationErrors(boolean)
+ */
+ public void setSuppressTransformationErrors(boolean suppressTransformationErrors)
+ {
+ delegate.setSuppressTransformationErrors(suppressTransformationErrors);
+ }
+
+ /**
+ * @param tmpClassesDir
+ * @see org.jboss.aop.deployment.AspectManagerService#setTmpClassesDir(java.io.File)
+ */
+ public void setTmpClassesDir(File tmpClassesDir)
+ {
+ delegate.setTmpClassesDir(tmpClassesDir);
+ }
+
+ /**
+ * @param verbose
+ * @see org.jboss.aop.deployment.AspectManagerService#setVerbose(boolean)
+ */
+ public void setVerbose(boolean verbose)
+ {
+ delegate.setVerbose(verbose);
+ }
+
+ /**
+ * @return
+ * @see org.jboss.aop.deployment.AspectManagerService#stacks()
+ */
+ public String stacks()
+ {
+ return delegate.stacks();
+ }
+
+ /**
+ * @throws Exception
+ * @see org.jboss.system.ServiceMBeanSupport#start()
+ */
+ public void start() throws Exception
+ {
+ delegate.start();
+ }
+
+ /**
+ *
+ * @see org.jboss.system.ServiceMBeanSupport#stop()
+ */
+ public void stop()
+ {
+ delegate.stop();
+ }
+
+ /**
+ * @return
+ * @see java.lang.Object#toString()
+ */
+ public String toString()
+ {
+ return delegate.toString();
+ }
+
+
+}
More information about the jboss-cvs-commits
mailing list