delegate = new ZipFileCodeBase(codeBaseLocator, tempFile);
delegateCodeBase = new ZipFileCodeBase(codeBaseLocator, tempFile);
	public NestedZipFileCodeBase(NestedZipFileCodeBaseLocator codeBaseLocator)			throws ResourceNotFoundException, IOException {		super(codeBaseLocator);		this.parentCodeBase = codeBaseLocator.getParentCodeBase();		this.resourceName = codeBaseLocator.getResourceName();				InputStream inputStream = null;		OutputStream outputStream = null;		try {			// Create a temp file			this.tempFile = File.createTempFile("findbugs", ".zip");			tempFile.deleteOnExit(); // just in case we crash before the codebase is closed						// Copy nested zipfile to the temporary file			inputStream = parentCodeBase.lookupResource(resourceName).openResource();			outputStream = new BufferedOutputStream(new FileOutputStream(tempFile));			IO.copy(inputStream, outputStream);			outputStream.flush();						// Create the delegate to read from the temporary file			delegate = new ZipFileCodeBase(codeBaseLocator, tempFile);		} finally {			if (inputStream != null) {				IO.close(inputStream);			}						if (outputStream != null) {				IO.close(outputStream);			}		}	}