class AnnotationDTO {
        @JsonProperty
        private String revision;
        @JsonProperty
        private String author;
        @JsonProperty
        private String description;
        @JsonProperty
        private String version;

        // for testing
        AnnotationDTO() {
        }

        AnnotationDTO(String revision, String author, String description, String version) {
            this.revision = revision;
            this.author = author;
            this.description = description;
            this.version = version;
        }

        // for testing
        public String getAuthor() {
            return this.author;
        }

        // for testing
        public String getRevision() {
            return this.revision;
        }

        // for testing
        public String getDescription() {
            return this.description;
        }

        // for testing
        public String getVersion() {
            return this.version;
        }
    }

    @GET
    @CorsEnable
    @PathAuthorized
    @Produces(MediaType.APPLICATION_JSON)
    public List<AnnotationDTO> getContent(@Context HttpServletRequest request,
                                          @Context HttpServletResponse response,
                                          @QueryParam("path") final String path,
                                          @QueryParam("revision") final String revision)
            throws IOException, NoPathParameterException {<FILL_FUNCTION_BODY>


        File file = toFile(path);

        Annotation annotation = HistoryGuru.getInstance().annotate(file,
                revision == null || revision.isEmpty() ? null : revision);

        ArrayList<AnnotationDTO> annotationList = new ArrayList<>();
        for (int i = 1; i <= annotation.size(); i++) {
            annotationList.add(new AnnotationDTO(annotation.getRevision(i),
                    annotation.getAuthor(i),
                    annotation.getDesc(annotation.getRevision(i)),
                    annotation.getFileVersion(annotation.getRevision(i)) + "/" + annotation.getRevisions().size()));
        }

        return annotationList;
    
<no_super_class>