public String getPathForDoc(Document document) {
    if (document == null) {
      return null;
    }
    VirtualFile virtualFile = FileDocumentManager.getInstance().getFile(document);
    if (virtualFile == null) {
      return null;
    }

    String path;
    try {
      path = virtualFile.getPath();
    } catch (NullPointerException e) {
      return null;
    }
    if (!context.isShared(path)) {
      return null;
    }

    return path;
  }