private boolean isSingleton(Bundle bundle) {
private static boolean isSingleton(Bundle bundle) {
	private boolean isSingleton(Bundle bundle) {		Dictionary allHeaders = bundle.getHeaders(""); //$NON-NLS-1$		String symbolicNameHeader = (String) allHeaders.get(Constants.BUNDLE_SYMBOLICNAME);		try {			if (symbolicNameHeader != null) {				ManifestElement[] symbolicNameElements = ManifestElement.parseHeader(Constants.BUNDLE_SYMBOLICNAME, symbolicNameHeader);				if (symbolicNameElements.length > 0) {					String singleton = symbolicNameElements[0].getDirective(Constants.SINGLETON_DIRECTIVE);					if (singleton == null)						singleton = symbolicNameElements[0].getAttribute(Constants.SINGLETON_DIRECTIVE);					if (!"true".equalsIgnoreCase(singleton)) { //$NON-NLS-1$						int status = IStatus.INFO;						String manifestVersion = (String) allHeaders.get(org.osgi.framework.Constants.BUNDLE_MANIFESTVERSION);						if (manifestVersion == null) {//the header was not defined for previous versions of the bundle							//3.0 bundles without a singleton attributes are still being accepted							if (OSGIUtils.getDefault().getBundle(symbolicNameElements[0].getValue()) == bundle) {								return true;							}							status = IStatus.ERROR;						}						if (registry.debug() || status == IStatus.ERROR) {							String message = NLS.bind(RegistryMessages.parse_nonSingleton, bundle.getLocation());							RuntimeLog.log(new Status(status, RegistryMessages.OWNER_NAME, 0, message, null));						}						return false;					}				}			}		} catch (BundleException e1) {			//This can't happen because the fwk would have rejected the bundle		}		return true;	}