Package java.lang.instrument

Examples of java.lang.instrument.Instrumentation


    }

    public static Instrumentation
    getInstrumentationOrThrow()
    {
        Instrumentation result = getInstrumentation();
        if ( result == null )
            {
            throw new NullPointerException("instrumentation instance not initialized");
            }
        return result;
View Full Code Here


    private static class PersistenceClassLoaderHandlerImpl implements PersistenceClassLoaderHandler {
        private final Map<String,List<ClassFileTransformer>> transformers = new TreeMap<String,List<ClassFileTransformer>>();

        public void addTransformer(String unitId, ClassLoader classLoader, ClassFileTransformer classFileTransformer) {
            Instrumentation instrumentation = Agent.getInstrumentation();
            if (instrumentation != null) {
                instrumentation.addTransformer(classFileTransformer);

                if (unitId != null) {
                    List<ClassFileTransformer> transformers = this.transformers.get(unitId);
                    if (transformers == null) {
                        transformers = new ArrayList<ClassFileTransformer>(1);
View Full Code Here

        }

        public void destroy(String unitId) {
            List<ClassFileTransformer> transformers = this.transformers.remove(unitId);
            if (transformers != null) {
                Instrumentation instrumentation = Agent.getInstrumentation();
                if (instrumentation != null) {
                    for (ClassFileTransformer transformer : transformers) {
                        instrumentation.removeTransformer(transformer);
                    }
                } else {
                    logger.error("assembler.noAgent");
                }
            }
View Full Code Here

        ClassLoader loader = new FilteredChildFirstClassLoader(getClass().getClassLoader(), "org.apache.openejb.core.cmp.jpa");

        PersistenceClassLoaderHandler persistenceClassLoaderHandler = new PersistenceClassLoaderHandler() {

            public void addTransformer(String unitId, ClassLoader classLoader, ClassFileTransformer classFileTransformer) {
                Instrumentation instrumentation = Agent.getInstrumentation();
                if (instrumentation != null) {
                    instrumentation.addTransformer(new ControllableTransformer(classFileTransformer));
                }
            }

            public void destroy(String unitId) {
            }
View Full Code Here

    private EntityManagerFactory createEntityManagerFactory() throws Exception {
        PersistenceClassLoaderHandler persistenceClassLoaderHandler = new PersistenceClassLoaderHandler() {

            public void addTransformer(String unitId, ClassLoader classLoader, ClassFileTransformer classFileTransformer) {
                Instrumentation instrumentation = Agent.getInstrumentation();
                instrumentation.addTransformer(classFileTransformer);
            }

            public void destroy(String unitId) {
            }
View Full Code Here

     * @param log
     * @return True if the agent is loaded successfully
     */
    public static synchronized boolean loadDynamicAgent(Log log) {
        if (loadAttempted == false && disableDynamicAgent == false) {
            Instrumentation inst =
                InstrumentationFactory.getInstrumentation(log);
            if (inst != null) {
                premain("", inst);
                return true;
            }
View Full Code Here

        }
    }

    private static class Handler implements PersistenceClassLoaderHandler {
        public void addTransformer(String unitId, ClassLoader classLoader, ClassFileTransformer classFileTransformer) {
            Instrumentation instrumentation = Agent.getInstrumentation();
            if (instrumentation != null) {
                instrumentation.addTransformer(new Transformer(classFileTransformer));
            }
        }
View Full Code Here

     * if retransformation is possible.
     */
    public static boolean canRedefineClasses(Log log) {
        if (_canRedefine == null) {
            try {
                Instrumentation inst = InstrumentationFactory.getInstrumentation(log);
                if (inst == null) {
                    _canRedefine = Boolean.FALSE;
                } else if (JavaVersions.VERSION == 5) {
                    // if instrumentation is non-null and we're using Java 5,
                    // isRetransformClassesSupported isn't available,
View Full Code Here

   * @param clazz
   * @param barr
   * @return
   */
  public static boolean redefineClassEL(Class clazz, byte[] barr){
    Instrumentation inst = InstrumentationFactory.getInstance();
      if(inst!=null && inst.isRedefineClassesSupported()) {
        try {
            inst.redefineClasses(new ClassDefinition(clazz,barr));
        return true;
      }
        catch (Throwable t) {t.printStackTrace();}
      }
      return false;
View Full Code Here

      }
      return false;
  }

  public static void redefineClass(Class clazz, byte[] barr) throws ClassNotFoundException, UnmodifiableClassException{
    Instrumentation inst = InstrumentationFactory.getInstance();
      inst.redefineClasses(new ClassDefinition(clazz,barr));
  }
View Full Code Here

TOP

Related Classes of java.lang.instrument.Instrumentation

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.