void (@NotNull VFilePropertyChangeEvent e) { if (e.isRename()) { VirtualFile f = e.getFile(); boolean isVersioned = myGateway.isVersioned(f); Boolean wasVersioned = f.getUserData(WAS_VERSIONED_KEY); if (wasVersioned == null) return; f.putUserData(WAS_VERSIONED_KEY, null); if (!wasVersioned && !isVersioned) return; String oldName = (String)e.getOldValue(); myVcs.renamed(myGateway.getPathOrUrl(f), oldName); } else if (VirtualFile.PROP_WRITABLE.equals(e.getPropertyName())) { if (!isVersioned(e.getFile())) return; VirtualFile f = e.getFile(); if (!f.isDirectory()) { myVcs.readOnlyStatusChanged(myGateway.getPathOrUrl(f), !(Boolean)e.getOldValue()); } } }