setBootDelegation();
	protected void initializeProperties(Properties adaptorProperties) {		properties = System.getProperties();		Enumeration enumKeys = adaptorProperties.propertyNames();		while (enumKeys.hasMoreElements()) {			String key = (String) enumKeys.nextElement();			if (properties.getProperty(key) == null) {				properties.put(key, adaptorProperties.getProperty(key));			}		}		properties.put(Constants.FRAMEWORK_VENDOR, Constants.OSGI_FRAMEWORK_VENDOR);		properties.put(Constants.FRAMEWORK_VERSION, Constants.OSGI_FRAMEWORK_VERSION);		// Needed for communication with Bundle Server		properties.put(Constants.OSGI_IMPL_VERSION_KEY, Constants.OSGI_IMPL_VERSION);		String value = properties.getProperty(Constants.FRAMEWORK_PROCESSOR);		if (value == null) {			value = properties.getProperty(Constants.JVM_OS_ARCH);			if (value != null) {				properties.put(Constants.FRAMEWORK_PROCESSOR, value);			}		}		value = properties.getProperty(Constants.FRAMEWORK_OS_NAME);		if (value == null) {			value = properties.getProperty(Constants.JVM_OS_NAME);			try {				String canonicalValue = (String) aliasMapper.aliasOSName(value);				if (canonicalValue != null) {					value = canonicalValue;				}			} catch (ClassCastException ex) {				//A vector was returned from the alias mapper.				//The alias mapped to more than one canonical value				//such as "win32" for example			}			if (value != null) {				properties.put(Constants.FRAMEWORK_OS_NAME, value);			}		}		value = properties.getProperty(Constants.FRAMEWORK_OS_VERSION);		if (value == null) {			value = properties.getProperty(Constants.JVM_OS_VERSION);			if (value != null) {				int space = value.indexOf(' ');				if (space > 0) {					value = value.substring(0, space);				}				properties.put(Constants.FRAMEWORK_OS_VERSION, value);			}		}		value = properties.getProperty(Constants.FRAMEWORK_LANGUAGE);		if (value == null) {			value = properties.getProperty(Constants.JVM_USER_LANGUAGE);			// set default locale for VM			if (value != null) {				properties.put(Constants.FRAMEWORK_LANGUAGE, value);				StringTokenizer tokenizer = new StringTokenizer(value, "_"); //$NON-NLS-1$				int segments = tokenizer.countTokens();				try {					switch (segments) {						case 2 :							Locale userLocale = new Locale(tokenizer.nextToken(), tokenizer.nextToken());							Locale.setDefault(userLocale);							break;						case 3 :							userLocale = new Locale(tokenizer.nextToken(), tokenizer.nextToken(), tokenizer.nextToken());							Locale.setDefault(userLocale);							break;					}				} catch (NoSuchElementException e) {					// fall through and use the default				}			}		}		setExecutionEnvironment();	}