String[] contributorIds = getContributorIds(namespace); for (int i = 0; i < contributorIds.length; i++) { int[] extensions = registryObjects.getExtensionsFrom(contributorIds[i]); for (int j = 0; j < extensions.length; j++) { Extension ext = (Extension) registryObjects.getObject(extensions[j], RegistryObjectManager.EXTENSION); if (extensionId.equals(ext.getUniqueIdentifier()) && registryObjects.getExtensionPointObject(ext.getExtensionPointIdentifier()) != null) { return (IExtension) registryObjects.getHandle(extensions[j], RegistryObjectManager.EXTENSION); } }
ExtensionHandle[] extensions = registryObjects.getExtensionsFromNamespace(namespace); for (int i = 0; i < extensions.length; i++) { ExtensionHandle suspect = extensions[i]; if (extensionId.equals(suspect.getUniqueIdentifier())) return suspect;
	public IExtension getExtension(String extensionId) {		if (extensionId == null)			return null;		int lastdot = extensionId.lastIndexOf('.');		if (lastdot == -1)			return null;		String namespace = extensionId.substring(0, lastdot);		String[] contributorIds = getContributorIds(namespace);		for (int i = 0; i < contributorIds.length; i++) {			int[] extensions = registryObjects.getExtensionsFrom(contributorIds[i]);			for (int j = 0; j < extensions.length; j++) {				Extension ext = (Extension) registryObjects.getObject(extensions[j], RegistryObjectManager.EXTENSION);				if (extensionId.equals(ext.getUniqueIdentifier()) && registryObjects.getExtensionPointObject(ext.getExtensionPointIdentifier()) != null) {					return (IExtension) registryObjects.getHandle(extensions[j], RegistryObjectManager.EXTENSION);				}			}		}		return null;	}