private void addFile( @NonNull final Location location, @NonNull final String packageName, @NonNull final CachedFileObject fo) { LOG.log(Level.FINE, "File added to cache:{0}:{1}", new Object[] { fo.getFile(), root }); // check whether the softref has been freed: final Map<String, Map<File, CachedFileObject>> cache = getCacheLine(location, false); Map<File, CachedFileObject> dirContent = cache.get(packageName); if (dirContent == null) { dirContent = new HashMap<File, CachedFileObject>(); cache.put(packageName, dirContent); } dirContent.put(toFile(fo), fo); }
private JavaFileObject createDelegate() { if (wasCommitted()) { delegate = Pair.<FileObjects.FileBase,Boolean>of( (FileObjects.FileBase)FileObjects.fileFileObject(f, getRootFile(getFile(), getPackage()), filter, encoding), Boolean.TRUE); } else if (wasFlushed()) { delegate = Pair.<FileObjects.FileBase,Boolean>of( (FileObjects.FileBase)FileObjects.fileFileObject(shadowFile, getRootFile(shadowFile, getPackage()), filter, encoding), Boolean.TRUE); } return delegate.first(); }
public CachedFileObject(WriteBackTransaction wb, File file, String pkgName, String name, JavaFileFilterImplementation filter, Charset encoding) { super(file, pkgName, name, filter, encoding); this.writer = wb; delegate = Pair.<FileObjects.FileBase,Boolean>of( (FileObjects.FileBase)FileObjects.fileFileObject(f, getRootFile(getFile(), getPackage()), filter, encoding), Boolean.FALSE); }