}
} state.resolve(false);
	public Vector getInstalledBundles() {		File metadata = getMetaDataLocation();		if (!metadata.isFile())			return null;		try {			DataInputStream in = new DataInputStream(new BufferedInputStream(new FileInputStream(metadata)));			try {				if (in.readByte() != BUNDLEDATA_VERSION)					return null;				// skip timeStamp - was read by readTimeStamp				in.readLong();				in.readUTF();				in.readInt();				in.readLong();								int bundleCount = in.readInt();				Vector result = new Vector(bundleCount);				for (int i = 0; i < bundleCount; i++) {					try {						try {							long id = in.readLong();							if (id != 0) {								EclipseBundleData data = (EclipseBundleData) getElementFactory().getBundleData(this);								loadMetaDataFor(data, in);								data.initializeExistingBundle(Long.toString(id));								if (Debug.DEBUG && Debug.DEBUG_GENERAL)									Debug.println("BundleData created: " + data);								result.addElement(data);							}						} catch (NumberFormatException e) {							// should never happen						}					} catch (IOException e) {						//Reset the time stamp						timeStamp = System.currentTimeMillis();						if (Debug.DEBUG && Debug.DEBUG_GENERAL) {							Debug.println("Error reading framework metadata: " + e.getMessage());							Debug.printStackTrace(e);						}					}				}								return result;			} finally {				in.close();			}		} catch (IOException e) {			if (Debug.DEBUG && Debug.DEBUG_GENERAL) {				Debug.println("Error reading framework metadata: " + e.getMessage());				Debug.printStackTrace(e);			}		}		return null;	}