001package io.avaje.http.generator.core.javadoc; 002 003 004import java.util.Collections; 005import java.util.Map; 006 007/** 008 * Parsed javadoc. 009 */ 010public class Javadoc { 011 012 static final Javadoc EMPTY = new Javadoc(); 013 014 private final String summary; 015 016 private final String description; 017 018 private final Map<String, String> params; 019 020 private final String returnDescription; 021 022 private final boolean deprecated; 023 024 /** 025 * Parse and return the Javadoc. 026 */ 027 public static Javadoc parse(String content) { 028 return new JavadocParser().parse(content); 029 } 030 031 Javadoc(String summary, String description, Map<String, String> params, String returnDescription, boolean deprecated) { 032 this.summary = summary; 033 this.description = description; 034 this.params = params; 035 this.returnDescription = returnDescription; 036 this.deprecated = deprecated; 037 } 038 039 private Javadoc() { 040 this.summary = ""; 041 this.description = ""; 042 this.returnDescription = ""; 043 this.params = Collections.emptyMap(); 044 this.deprecated = false; 045 } 046 047 public String getSummary() { 048 return summary; 049 } 050 051 public String getDescription() { 052 return description; 053 } 054 055 public Map<String, String> getParams() { 056 return params; 057 } 058 059 public String getReturnDescription() { 060 return returnDescription; 061 } 062 063 public boolean isDeprecated() { 064 return deprecated; 065 } 066}