Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java')
-rw-r--r--bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java126
1 files changed, 0 insertions, 126 deletions
diff --git a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java b/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java
deleted file mode 100644
index 8e6d2efae..000000000
--- a/bundles/org.eclipse.equinox.weaving.aspectj/src/org/eclipse/equinox/weaving/aspectj/loadtime/OSGiWeavingAdaptor.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2006, 2008, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * David Knibb initial implementation
- * Matthew Webster Eclipse 3.2 changes
- * Heiko Seeberger AJDT 1.5.1 changes
- * Martin Lippert minor changes and bugfixes
- * Martin Lippert reworked
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.aspectj.loadtime;
-
-import java.io.IOException;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.aspectj.weaver.IUnwovenClassFile;
-import org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor;
-import org.eclipse.equinox.weaving.aspectj.AspectJWeavingStarter;
-
-/**
- * The weaving adaptor for AspectJs load-time weaving API that deals with the
- * OSGi specifics for load-time weaving
- */
-public class OSGiWeavingAdaptor extends ClassLoaderWeavingAdaptor {
-
- private final ClassLoader classLoader;
-
- private boolean initialized;
-
- private boolean initializing;
-
- private final String namespace;
-
- private final OSGiWeavingContext weavingContext;
-
- public OSGiWeavingAdaptor(final ClassLoader loader,
- final OSGiWeavingContext context, final String namespace) {
- super();
- this.classLoader = loader;
- this.weavingContext = context;
- this.namespace = namespace;
- }
-
- public Map<String, byte[]> getGeneratedClassesFor(final String className) {
- final Map<?, ?> generated = this.generatedClasses;
- final Map<String, byte[]> result = new HashMap<String, byte[]>();
-
- final Iterator<?> generatedClassNames = generated.keySet().iterator();
- while (generatedClassNames.hasNext()) {
- final String name = (String) generatedClassNames.next();
- final IUnwovenClassFile unwovenClass = (IUnwovenClassFile) generated
- .get(name);
-
- if (!className.equals(name)) {
- result.put(name, unwovenClass.getBytes());
- }
- }
-
- flushGeneratedClasses();
- return result;
- }
-
- /**
- * @see org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor#getNamespace()
- */
- @Override
- public String getNamespace() {
- return namespace;
- }
-
- public void initialize() {
- if (!initializing) {
- if (!initialized) {
- initializing = true;
- super.initialize(classLoader, weavingContext);
- initialized = true;
- initializing = false;
-
- if (AspectJWeavingStarter.verbose) {
- if (isEnabled())
- System.err
- .println("[org.eclipse.equinox.weaving.aspectj] info weaving bundle '"
- + weavingContext.getClassLoaderName()
- + "'");
- else
- System.err
- .println("[org.eclipse.equinox.weaving.aspectj] info not weaving bundle '"
- + weavingContext.getClassLoaderName()
- + "'");
- }
- }
- }
- }
-
- // Bug 215177: Adapt to updated (AJ 1.5.4) super class signature:
- /**
- * @see org.aspectj.weaver.tools.WeavingAdaptor#weaveClass(java.lang.String,
- * byte[], boolean)
- */
- @Override
- public byte[] weaveClass(final String name, byte[] bytes,
- final boolean mustWeave) throws IOException {
-
- /* Avoid recursion during adaptor initialization */
- if (!initializing) {
- if (!initialized) {
- initializing = true;
- initialize(classLoader, weavingContext);
- initialized = true;
- initializing = false;
- }
- // Bug 215177: Adapt to updated (AJ 1.5.4) super class signature:
- bytes = super.weaveClass(name, bytes, mustWeave);
- }
- return bytes;
- }
-
-}

Back to the top