private static String formatConfiguration(Configuration configuration) {
		StringBuilder result = new StringBuilder(16);
		if (configuration.language != null) {
			result.append('-');
			result.append(configuration.language);
		}
		if (configuration.country != null) {
			result.append('-');
			result.append('r');
			result.append(configuration.country);
		}
		if (configuration.orientation != 0) {
			result.append('-');
			result.append(getString(configuration.orientation - 1,
					new String[] { "port", "land", "square" }));
		}
		if (configuration.touchscreen != 0) {
			result.append('-');
			result.append(getString(configuration.touchscreen - 1,
					new String[] { "notouch", "stylus", "finger" }));
		}
		if (configuration.keyboardHidden != 0) {
			result.append('-');
			result.append(getString(configuration.keyboardHidden - 1,
					new String[] { "keysexposed", "keyshidden" }));
		}
		if (configuration.keyboard != 0) {
			result.append('-');
			result.append(getString(configuration.keyboard - 1, new String[] {
					"nokeys", "qwerty", "12key" }));
		}
		if (configuration.navigation != 0) {
			result.append('-');
			result.append(getString(configuration.navigation - 1, new String[] {
					"notouch", "dpad", "trackball", "wheel" }));
		}
		if (configuration.screenWidth != 0 && configuration.screenHeight != 0) {
			result.append('-');
			result.append(Math.max(configuration.screenWidth,
					configuration.screenHeight));
			result.append('x');
			result.append(Math.min(configuration.screenWidth,
					configuration.screenHeight));
		}
		return result.toString();
	}