1 /*-
2 * #%L
3 * prolobjectlink-jpi
4 * %%
5 * Copyright (C) 2020 - 2021 Prolobjectlink Project
6 * %%
7 * Permission is hereby granted, free of charge, to any person obtaining a copy
8 * of this software and associated documentation files (the "Software"), to deal
9 * in the Software without restriction, including without limitation the rights
10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 * copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23 * THE SOFTWARE.
24 * #L%
25 */
26 package io.github.prolobjectlink.prolog;
27
28 /**
29 *
30 * @author Jose Zalacain
31 * @since 1.1
32 */
33 public interface PrologDocumentable {
34
35 /**
36 * Check if exist at least one tag like documentation comment
37 *
38 * @since 1.2
39 */
40 public boolean hasDocumentation();
41
42 /**
43 * Check if exist description tag in doc comment
44 *
45 * @since 1.2
46 */
47 public boolean hasDescription();
48
49 /**
50 * Check if exist version tag in doc comment
51 *
52 * @since 1.2
53 */
54 public boolean hasVersion();
55
56 /**
57 * Check if exist author tag in doc comment
58 *
59 * @since 1.2
60 */
61 public boolean hasAuthor();
62
63 /**
64 * Check if exist since tag in doc comment
65 *
66 * @since 1.2
67 */
68 public boolean hasSince();
69
70 /**
71 * Check if exist see tag in doc comment
72 *
73 * @since 1.2
74 */
75 public boolean hasSee();
76
77 /**
78 * Set the description tag in doc comment
79 *
80 * @param description description for this doc object
81 * @since 1.2
82 */
83 public void setDescription(String description);
84
85 /**
86 * Set the version tag in doc comment
87 *
88 * @param version version for this doc object
89 * @since 1.2
90 */
91 public void setVersion(String version);
92
93 /**
94 * Set the author tag in doc comment
95 *
96 * @param author author for this doc object
97 * @since 1.2
98 */
99 public void setAuthor(String author);
100
101 /**
102 * Set the since tag in doc comment
103 *
104 * @param since since for this doc object
105 * @since 1.2
106 */
107 public void setSince(String since);
108
109 /**
110 * Set the see tag in doc comment
111 *
112 * @param see see for this doc object
113 * @since 1.2
114 */
115 public void setSee(String see);
116
117 /**
118 * Get the description tag in doc comment
119 *
120 * @since 1.2
121 */
122 public String getDescription();
123
124 /**
125 * Get the version tag in doc comment
126 *
127 * @since 1.2
128 */
129 public String getVersion();
130
131 /**
132 * Get the author tag in doc comment
133 *
134 * @since 1.2
135 */
136 public String getAuthor();
137
138 /**
139 * Get the since tag in doc comment
140 *
141 * @since 1.2
142 */
143 public String getSince();
144
145 /**
146 * Get the see tag in doc comment
147 *
148 * @since 1.2
149 */
150 public String getSee();
151
152 }