class DataTypeCollection extends Response {

	public static DataTypeCollection buildFromCache(ResponseCache.CacheIdentifier ci) {
		DataTypeCollection result;
		FileInputStream fileIn = null;
		ObjectInputStream in = null;
		File cacheFile;
		try {
			cacheFile = ci.getFile();
		} catch (IOException ex) {
			log.warn("Could not create new cache file", ex);
			return null;
		}
		try {
			try {
				fileIn = new FileInputStream(cacheFile);
			} catch (FileNotFoundException ex) {
				log.warn("Could not find cache file {}", cacheFile.getPath(), ex);
				return null;
			}

			try {
				in = new ObjectInputStream(fileIn);
			} catch (IOException ex) {
				log.warn("Could not read cache file {}", cacheFile.getPath(), ex);
				return null;
			}

			try {
				result = (DataTypeCollection) in.readObject();
			} catch (IOException ex) {
				log.warn("Could not inflate cache file {}", cacheFile.getPath(), ex);
				return null;
			} catch (ClassNotFoundException ex) {
				log.warn("Could not inflate cache file {}", cacheFile.getPath(), ex);
				return null;
			}
		} finally {
			IOUtils.closeQuietly(in);
			IOUtils.closeQuietly(fileIn);
		}
		return result;
	}

	public  DataTypeCollection();
	public  DataTypeCollection(String type, DataTypeBean... dataTypeArray);
	public  DataTypeCollection(String type, VariableSimpleIF... variableSimpleIFArray);

}