code: public InputStream getRawFile(Object projectIdOrPath, String commitOrBranchName, String filepath) throws GitLabApiException {
  
          if (isApiVersion(ApiVersion.V3)) {
              Form formData = new GitLabApiForm().withParam("file_path", filepath, true);
              Response response = getWithAccepts(Response.Status.OK, formData.asMap(), MediaType.MEDIA_TYPE_WILDCARD,
                  "projects", getProjectIdOrPath(projectIdOrPath), "repository", "blobs", commitOrBranchName);
              return (response.readEntity(InputStream.class));
          } else {
              Form formData = new GitLabApiForm().withParam("ref", commitOrBranchName, true);
              Response response = getWithAccepts(Response.Status.OK, formData.asMap(),  MediaType.MEDIA_TYPE_WILDCARD,
                  "projects", getProjectIdOrPath(projectIdOrPath), "repository", "files", urlEncode(filepath), "raw");
              return (response.readEntity(InputStream.class));
          }
      }
docs: Get the raw file contents for a file by commit sha and path.
  
  V3:
  <pre><code>GitLab Endpoint: GET /projects/:id/repository/blobs/:sha</code></pre>
  
  V4:
  <pre><code>GitLab Endpoint: GET /projects/:id/repository/files/:filepath</code></pre>
  
  @param projectIdOrPath the project in the form of an Integer(ID), String(path), or Project instance
  @param commitOrBranchName the commit or branch name to get the file contents for
  @param filepath the path of the file to get
  @return an InputStream to read the raw file from
  @throws GitLabApiException if any exception occurs