code: protected CmsResource readResource(CmsDbContext dbc, String resourcePath, CmsResourceFilter filter)
      throws CmsException {
  
          // read the resource from the VFS
          CmsResource resource = m_driverManager.readResource(dbc, resourcePath, filter);
  
          // check if the user has read access to the resource
          checkPermissions(dbc, resource, CmsPermissionSet.ACCESS_READ, true, filter);
  
          // access was granted - return the resource
          return resource;
      }
docs: Reads a resource from the OpenCms VFS, using the specified resource filter.<p>
  
  @param dbc the current database context
  @param resourcePath the name of the resource to read (full path)
  @param filter the resource filter to use while reading
  
  @return the resource that was read
  
  @throws CmsException if something goes wrong
  
  @see CmsObject#readResource(String, CmsResourceFilter)
  @see CmsObject#readResource(String)
  @see CmsObject#readFile(CmsResource)