Skip to content

Commit e563098

Browse files
committed
[feature] Process @PermissionRequired annotation using a Java Annotation Processor
1 parent cbad34d commit e563098

File tree

13 files changed

+678
-228
lines changed

13 files changed

+678
-228
lines changed

elemental-parent/pom.xml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,16 @@
112112
<surefire.reuseForks>true</surefire.reuseForks>
113113
</properties>
114114

115+
<dependencyManagement>
116+
<dependencies>
117+
<dependency>
118+
<groupId>com.google.code.findbugs</groupId>
119+
<artifactId>jsr305</artifactId>
120+
<version>3.0.2</version>
121+
</dependency>
122+
</dependencies>
123+
</dependencyManagement>
124+
115125
<build>
116126
<pluginManagement>
117127
<plugins>

exist-core-build-tools/pom.xml

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
4+
Elemental
5+
Copyright (C) 2024, Evolved Binary Ltd
6+
7+
8+
https://www.evolvedbinary.com | https://www.elemental.xyz
9+
10+
This library is free software; you can redistribute it and/or
11+
modify it under the terms of the GNU Lesser General Public
12+
License as published by the Free Software Foundation; version 2.1.
13+
14+
This library is distributed in the hope that it will be useful,
15+
but WITHOUT ANY WARRANTY; without even the implied warranty of
16+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17+
Lesser General Public License for more details.
18+
19+
You should have received a copy of the GNU Lesser General Public
20+
License along with this library; if not, write to the Free Software
21+
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22+
23+
-->
24+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
25+
<modelVersion>4.0.0</modelVersion>
26+
27+
<parent>
28+
<groupId>xyz.elemental</groupId>
29+
<artifactId>elemental-parent</artifactId>
30+
<version>7.3.0-SNAPSHOT</version>
31+
<relativePath>../elemental-parent</relativePath>
32+
</parent>
33+
34+
<artifactId>exist-core-build-tools</artifactId>
35+
<packaging>jar</packaging>
36+
37+
<name>eXist-db Core Build Tools</name>
38+
<description>Tools for building exist-core</description>
39+
40+
<scm>
41+
<connection>scm:git:https://github.com/evolvedbinary/elemental.git</connection>
42+
<developerConnection>scm:git:https://github.com/evolvedbinary/elemental.git</developerConnection>
43+
<url>scm:git:https://github.com/evolvedbinary/elemental.git</url>
44+
<tag>HEAD</tag>
45+
</scm>
46+
47+
<dependencies>
48+
<dependency>
49+
<groupId>com.google.code.findbugs</groupId>
50+
<artifactId>jsr305</artifactId>
51+
</dependency>
52+
<dependency>
53+
<groupId>com.palantir.javapoet</groupId>
54+
<artifactId>javapoet</artifactId>
55+
<version>0.7.0</version>
56+
</dependency>
57+
</dependencies>
58+
59+
<build>
60+
<plugins>
61+
<plugin>
62+
<groupId>com.mycila</groupId>
63+
<artifactId>license-maven-plugin</artifactId>
64+
<configuration>
65+
<licenseSets>
66+
<licenseSet>
67+
<!--
68+
Elemental License - (LGPL 2.1 only)
69+
-->
70+
<header>${project.parent.relativePath}/elemental-LGPL-21-ONLY-license.template.txt</header>
71+
<includes>
72+
<include>src/main/java/xyz/elemental/build/tools/spoon/processors/PermissionRequiredProcessor.java</include>
73+
</includes>
74+
</licenseSet>
75+
</licenseSets>
76+
</configuration>
77+
<executions>
78+
<execution>
79+
<id>check-headers</id>
80+
<phase>verify</phase>
81+
<goals>
82+
<goal>check</goal>
83+
</goals>
84+
</execution>
85+
</executions>
86+
</plugin>
87+
88+
<plugin>
89+
<groupId>org.apache.maven.plugins</groupId>
90+
<artifactId>maven-compiler-plugin</artifactId>
91+
<configuration>
92+
<!--
93+
NOTE(AR) needed so that we don't try and process ourselves
94+
i.e. the META-INF/services/javax.annotation.processing.Processor defined in this project
95+
-->
96+
<proc>none</proc>
97+
</configuration>
98+
</plugin>
99+
</plugins>
100+
</build>
101+
102+
</project>

0 commit comments

Comments
 (0)