Bump dawidd6/action-send-mail from 3 to 4
[yosql.git] / yosql-benchmarks / yosql-benchmarks-dao / pom.xml
blob5f6712bc7a97d0ac4ba2c88804663f4393e26cfd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ This file is part of yosql. It is subject to the license terms in the LICENSE file found in the top-level
4   ~ directory of this distribution and at https://creativecommons.org/publicdomain/zero/1.0/. No part of yosql,
5   ~ including this file, may be copied, modified, propagated, or distributed except according to the terms contained
6   ~ in the LICENSE file.
7   -->
8 <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9          xmlns="http://maven.apache.org/POM/4.0.0"
10          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
11     <modelVersion>4.0.0</modelVersion>
13     <!-- ordering follows https://maven.apache.org/developers/conventions/code.html#POM_Code_Convention -->
15     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
16     <!--                                 PARENT                                  -->
17     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
18     <!-- https://maven.apache.org/pom.html#Inheritance -->
19     <parent>
20         <groupId>wtf.metio.yosql.benchmarks</groupId>
21         <artifactId>yosql-benchmarks</artifactId>
22         <version>0.0.0-SNAPSHOT</version>
23     </parent>
25     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
26     <!--                               COORDINATES                               -->
27     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
28     <!-- https://maven.apache.org/pom.html#Maven_Coordinates -->
30     <artifactId>yosql-benchmarks-dao</artifactId>
32     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
33     <!--                               INFORMATIONS                              -->
34     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
35     <!-- https://maven.apache.org/pom.html#More_Project_Information -->
36     <name>YoSQL :: Benchmarks :: DAO</name>
38     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
39     <!--                               DEPENDENCIES                              -->
40     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
41     <!-- https://maven.apache.org/pom.html#Dependencies -->
42     <dependencies>
43         <dependency>
44             <groupId>org.openjdk.jmh</groupId>
45             <artifactId>jmh-core</artifactId>
46         </dependency>
47         <dependency>
48             <groupId>org.openjdk.jmh</groupId>
49             <artifactId>jmh-generator-annprocess</artifactId>
50             <scope>provided</scope>
51         </dependency>
52         <dependency>
53             <groupId>com.zaxxer</groupId>
54             <artifactId>HikariCP</artifactId>
55         </dependency>
56         <dependency>
57             <groupId>com.h2database</groupId>
58             <artifactId>h2</artifactId>
59         </dependency>
60         <dependency>
61             <groupId>org.apache.logging.log4j</groupId>
62             <artifactId>log4j-api</artifactId>
63         </dependency>
64         <dependency>
65             <groupId>org.apache.logging.log4j</groupId>
66             <artifactId>log4j-core</artifactId>
67         </dependency>
68         <dependency>
69             <groupId>ch.qos.logback</groupId>
70             <artifactId>logback-classic</artifactId>
71         </dependency>
72         <dependency>
73             <groupId>org.tinylog</groupId>
74             <artifactId>tinylog-impl</artifactId>
75         </dependency>
76     </dependencies>
78     <build>
79         <plugins>
80             <plugin>
81                 <groupId>wtf.metio.yosql.tooling</groupId>
82                 <artifactId>yosql-tooling-maven</artifactId>
83                 <version>${project.version}</version>
84                 <configuration>
85                     <files>
86                         <skipLines>6</skipLines>
87                     </files>
88                     <java>
89                         <apiVersion>16</apiVersion>
90                     </java>
91                 </configuration>
92                 <executions>
93                     <execution>
94                         <id>jul</id>
95                         <phase>generate-sources</phase>
96                         <goals>
97                             <goal>generate</goal>
98                         </goals>
99                         <configuration>
100                             <logging>
101                                 <api>JUL</api>
102                             </logging>
103                             <files>
104                                 <outputBaseDirectory>target/generated-sources/jul</outputBaseDirectory>
105                             </files>
106                             <repositories>
107                                 <basePackageName>wtf.metio.yosql.benchmark.dao.jul.persistence</basePackageName>
108                             </repositories>
109                             <converter>
110                                 <mapConverterClass>
111                                     wtf.metio.yosql.benchmark.dao.jul.persistence.converter.ToMapConverter
112                                 </mapConverterClass>
113                             </converter>
114                         </configuration>
115                     </execution>
116                     <execution>
117                         <id>log4j</id>
118                         <phase>generate-sources</phase>
119                         <goals>
120                             <goal>generate</goal>
121                         </goals>
122                         <configuration>
123                             <logging>
124                                 <api>LOG4J</api>
125                             </logging>
126                             <files>
127                                 <outputBaseDirectory>target/generated-sources/log4j</outputBaseDirectory>
128                             </files>
129                             <repositories>
130                                 <basePackageName>wtf.metio.yosql.benchmark.dao.log4j.persistence</basePackageName>
131                             </repositories>
132                             <converter>
133                                 <mapConverterClass>
134                                     wtf.metio.yosql.benchmark.dao.log4j.persistence.converter.ToMapConverter
135                                 </mapConverterClass>
136                             </converter>
137                         </configuration>
138                     </execution>
139                     <execution>
140                         <id>noop</id>
141                         <phase>generate-sources</phase>
142                         <goals>
143                             <goal>generate</goal>
144                         </goals>
145                         <configuration>
146                             <logging>
147                                 <api>NONE</api>
148                             </logging>
149                             <files>
150                                 <outputBaseDirectory>target/generated-sources/noop</outputBaseDirectory>
151                             </files>
152                             <repositories>
153                                 <basePackageName>wtf.metio.yosql.benchmark.dao.noop.persistence</basePackageName>
154                             </repositories>
155                             <converter>
156                                 <mapConverterClass>
157                                     wtf.metio.yosql.benchmark.dao.noop.persistence.converter.ToMapConverter
158                                 </mapConverterClass>
159                             </converter>
160                         </configuration>
161                     </execution>
162                     <execution>
163                         <id>slf4j</id>
164                         <phase>generate-sources</phase>
165                         <goals>
166                             <goal>generate</goal>
167                         </goals>
168                         <configuration>
169                             <logging>
170                                 <api>SLF4J</api>
171                             </logging>
172                             <files>
173                                 <outputBaseDirectory>target/generated-sources/slf4j</outputBaseDirectory>
174                             </files>
175                             <repositories>
176                                 <basePackageName>wtf.metio.yosql.benchmark.dao.slf4j.persistence</basePackageName>
177                             </repositories>
178                             <converter>
179                                 <mapConverterClass>
180                                     wtf.metio.yosql.benchmark.dao.slf4j.persistence.converter.ToMapConverter
181                                 </mapConverterClass>
182                             </converter>
183                         </configuration>
184                     </execution>
185                     <execution>
186                         <id>system</id>
187                         <phase>generate-sources</phase>
188                         <goals>
189                             <goal>generate</goal>
190                         </goals>
191                         <configuration>
192                             <logging>
193                                 <api>SYSTEM</api>
194                             </logging>
195                             <files>
196                                 <outputBaseDirectory>target/generated-sources/system</outputBaseDirectory>
197                             </files>
198                             <repositories>
199                                 <basePackageName>wtf.metio.yosql.benchmark.dao.system.persistence</basePackageName>
200                             </repositories>
201                             <converter>
202                                 <mapConverterClass>
203                                     wtf.metio.yosql.benchmark.dao.system.persistence.converter.ToMapConverter
204                                 </mapConverterClass>
205                             </converter>
206                         </configuration>
207                     </execution>
208                     <execution>
209                         <id>tinylog</id>
210                         <phase>generate-sources</phase>
211                         <goals>
212                             <goal>generate</goal>
213                         </goals>
214                         <configuration>
215                             <logging>
216                                 <api>TINYLOG</api>
217                             </logging>
218                             <files>
219                                 <outputBaseDirectory>target/generated-sources/tinylog</outputBaseDirectory>
220                             </files>
221                             <repositories>
222                                 <basePackageName>wtf.metio.yosql.benchmark.dao.tinylog.persistence</basePackageName>
223                             </repositories>
224                             <converter>
225                                 <mapConverterClass>
226                                     wtf.metio.yosql.benchmark.dao.tinylog.persistence.converter.ToMapConverter
227                                 </mapConverterClass>
228                             </converter>
229                         </configuration>
230                     </execution>
231                 </executions>
232             </plugin>
233             <plugin>
234                 <groupId>org.codehaus.mojo</groupId>
235                 <artifactId>build-helper-maven-plugin</artifactId>
236                 <executions>
237                     <execution>
238                         <id>add-source</id>
239                         <phase>generate-sources</phase>
240                         <goals>
241                             <goal>add-source</goal>
242                         </goals>
243                         <configuration>
244                             <sources>
245                                 <source>${project.build.directory}/generated-sources/jul</source>
246                                 <source>${project.build.directory}/generated-sources/log4j</source>
247                                 <source>${project.build.directory}/generated-sources/noop</source>
248                                 <source>${project.build.directory}/generated-sources/slf4j</source>
249                                 <source>${project.build.directory}/generated-sources/system</source>
250                                 <source>${project.build.directory}/generated-sources/tinylog</source>
251                             </sources>
252                         </configuration>
253                     </execution>
254                 </executions>
255             </plugin>
256         </plugins>
257     </build>
259     <profiles>
260         <profile>
261             <id>benchmarks</id>
262             <build>
263                 <plugins>
264                     <plugin>
265                         <groupId>com.baidu.maven</groupId>
266                         <artifactId>jmh-maven-plugin</artifactId>
267                         <executions>
268                             <execution>
269                                 <phase>verify</phase>
270                                 <goals>
271                                     <goal>jmh</goal>
272                                 </goals>
273                             </execution>
274                         </executions>
275                         <configuration>
276                             <forks>1</forks>
277                             <warmupForks>1</warmupForks>
278                             <threads>1</threads>
279                             <mode>avgt</mode>
280                             <timeUnit>us</timeUnit>
281                             <measurementTime>1s</measurementTime>
282                             <warmupTime>1s</warmupTime>
283                             <resultFormat>json</resultFormat>
284                             <resultFile>yosql-benchmarks-dao.json</resultFile>
285                         </configuration>
286                     </plugin>
287                 </plugins>
288             </build>
289         </profile>
290     </profiles>
292 </project>