protected abstract String extractRootPath(@NotNull String path);
public void addVirtualFileListener(final VirtualFileListener listener) {
synchronized (myListenerWrappers) {
VirtualFileListener wrapper = new VirtualFileFilteringListener(listener, this);
VirtualFileManager.getInstance().addVirtualFileListener(wrapper);
myListenerWrappers.put(listener, wrapper);
}
}