return true;
if (((BundleDescriptionImpl)getBundle()).getEquinoxEE() < 0) return true; int eeIndex = ((Integer) pkgDes.getDirective(ExportPackageDescriptionImpl.EQUINOX_EE)).intValue(); return eeIndex < 0 || eeIndex == ((BundleDescriptionImpl)getBundle()).getEquinoxEE();
	public boolean isSatisfiedBy(BaseDescription supplier) {		if (!(supplier instanceof ExportPackageDescription))			return false;		ExportPackageDescription pkgDes = (ExportPackageDescription) supplier;		// If we are in strict mode, check to see if the export specifies friends.		// If it does, are we one of the friends 		String[] friends = (String[]) pkgDes.getDirective(Constants.FRIENDS_DIRECTIVE);		Boolean internal = (Boolean) pkgDes.getDirective(Constants.INTERNAL_DIRECTIVE);		if (internal.booleanValue() || friends != null) {			boolean strict = ((StateImpl) getBundle().getContainingState()).inStrictMode();			if (strict) {				if (internal.booleanValue())					return false;				boolean found = false;				if (friends != null && getBundle().getSymbolicName() != null)					for (int i = 0; i < friends.length; i++)						if (getBundle().getSymbolicName().equals(friends[i]))							found = true;				if (!found)					return false;			}		}		if (symbolicName != null) {			BundleDescription exporter = pkgDes.getExporter();			if (!symbolicName.equals(exporter.getSymbolicName()))				return false;			if (getBundleVersionRange() != null && !getBundleVersionRange().isIncluded(exporter.getVersion()))				return false;		}		String name = getName();		// shortcut '*'		// NOTE: wildcards are supported only in cases where this is a dynamic import		if (!"*".equals(name) && !(name.endsWith(".*") && pkgDes.getName().startsWith(name.substring(0, name.length() - 1))) && !pkgDes.getName().equals(name)) //$NON-NLS-1$ //$NON-NLS-2$			return false;		if (getVersionRange() != null && !getVersionRange().isIncluded(pkgDes.getVersion()))			return false;		Map importAttrs = getAttributes();		if (importAttrs != null) {			Map exportAttrs = pkgDes.getAttributes();			if (exportAttrs == null)				return false;			for (Iterator i = importAttrs.keySet().iterator(); i.hasNext();) {				String importKey = (String) i.next();				String importValue = (String) importAttrs.get(importKey);				String exportValue = (String) exportAttrs.get(importKey);				if (exportValue == null || !importValue.equals(exportValue))					return false;			}		}		String[] mandatory = (String[]) pkgDes.getDirective(Constants.MANDATORY_DIRECTIVE);		if (mandatory != null) {			for (int i = 0; i < mandatory.length; i++) {				if (Constants.BUNDLE_SYMBOLICNAME_ATTRIBUTE.equals(mandatory[i])) {					if (symbolicName == null)						return false;				} else if (Constants.BUNDLE_VERSION_ATTRIBUTE.equals(mandatory[i])) {					if (bundleVersionRange == null)						return false;				} else if (Constants.PACKAGE_SPECIFICATION_VERSION.equals(mandatory[i]) || Constants.VERSION_ATTRIBUTE.equals(mandatory[i])) {					if (getVersionRange() == null)						return false;				} else { // arbitrary attribute					if (importAttrs == null)						return false;					if (importAttrs.get(mandatory[i]) == null)						return false;				}			}		}		return true;	}