Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java')
-rw-r--r--bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java151
1 files changed, 0 insertions, 151 deletions
diff --git a/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java b/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java
deleted file mode 100644
index df3026c54..000000000
--- a/bundles/org.eclipse.equinox.weaving.caching.j9/src/org/eclipse/equinox/weaving/internal/caching/j9/CachingService.java
+++ /dev/null
@@ -1,151 +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
- * Martin Lippert extracted caching service factory
- * Martin Lippert caching of generated classes
- *******************************************************************************/
-
-package org.eclipse.equinox.weaving.internal.caching.j9;
-
-import java.net.URL;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.util.Map;
-
-import com.ibm.oti.shared.HelperAlreadyDefinedException;
-import com.ibm.oti.shared.Shared;
-import com.ibm.oti.shared.SharedClassURLHelper;
-
-import org.eclipse.equinox.service.weaving.CacheEntry;
-import org.eclipse.equinox.service.weaving.ICachingService;
-import org.osgi.framework.Bundle;
-
-public class CachingService implements ICachingService {
-
- SharedClassURLHelper urlhelper;
-
- private final Bundle bundle;
-
- private final ClassLoader classLoader;
-
- private final String partition;
-
- public CachingService(final ClassLoader loader, final Bundle bundle,
- final String key) {
- if (CachingServicePlugin.DEBUG)
- System.out.println("> CachingService.<init>() bundle="
- + bundle.getSymbolicName() + ", loader=" + loader
- + ", key='" + key + "'");
- this.bundle = bundle;
- this.classLoader = loader;
- this.partition = hashNamespace(key + bundle.getBundleId()
- + bundle.getLastModified());
- try {
- urlhelper = Shared.getSharedClassHelperFactory().getURLHelper(
- classLoader);
- } catch (final HelperAlreadyDefinedException e) {
- e.printStackTrace();
- }
- if (CachingServicePlugin.DEBUG)
- System.out.println("< CachingService.<init>() partition='"
- + partition + "', urlhelper=" + urlhelper);
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#canCacheGeneratedClasses()
- */
- public boolean canCacheGeneratedClasses() {
- return false;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#findStoredClass(java.lang.String,
- * java.net.URL, java.lang.String)
- */
- public CacheEntry findStoredClass(final String namespace,
- final URL sourceFileURL, final String name) {
- final byte[] bytes = urlhelper.findSharedClass(partition,
- sourceFileURL, name);
- if (CachingServicePlugin.DEBUG && bytes != null)
- System.out.println("- CachingService.findStoredClass() bundle="
- + bundle.getSymbolicName() + ", name=" + name + ", url="
- + sourceFileURL + ", bytes=" + bytes);
-
- if (bytes != null) {
- return new CacheEntry(true, bytes);
- } else {
- return new CacheEntry(false, null);
- }
- }
-
- /**
- * Hash the shared class namespace using MD5
- *
- * @param keyToHash
- * @return the MD5 version of the input string
- */
- public String hashNamespace(final String namespace) {
- MessageDigest md = null;
- try {
- md = MessageDigest.getInstance("MD5");
- } catch (final NoSuchAlgorithmException e) {
- e.printStackTrace();
- }
- final byte[] bytes = md.digest(namespace.getBytes());
- final StringBuffer result = new StringBuffer();
- for (int i = 0; i < bytes.length; i++) {
- final byte b = bytes[i];
- int num;
- if (b < 0) {
- num = b + 256;
- } else {
- num = b;
- }
- String s = Integer.toHexString(num);
- while (s.length() < 2) {
- s = "0" + s;
- }
- result.append(s);
- }
- return new String(result);
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#stop()
- */
- public void stop() {
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#storeClass(java.lang.String,
- * java.net.URL, java.lang.Class, byte[])
- */
- public boolean storeClass(final String namespace, final URL sourceFileURL,
- final Class<?> clazz, final byte[] classbytes) {
- final boolean success = urlhelper.storeSharedClass(partition,
- sourceFileURL, clazz);
- if (CachingServicePlugin.DEBUG && success)
- System.out.println("- CachingService.storeClass() bundle="
- + bundle.getSymbolicName() + ", clazz=" + clazz + ", url="
- + sourceFileURL);
- return success;
- }
-
- /**
- * @see org.eclipse.equinox.service.weaving.ICachingService#storeClassAndGeneratedClasses(java.lang.String,
- * java.net.URL, java.lang.Class, byte[], java.util.Map)
- */
- public boolean storeClassAndGeneratedClasses(final String namespace,
- final URL sourceFileUrl, final Class<?> clazz,
- final byte[] classbytes, final Map<String, byte[]> generatedClasses) {
- return false;
- }
-
-}

Back to the top