Skip to content

Commit a7d70c5

Browse files
author
Greg Meyer
authored
Merge pull request #5 from DirectProjectJavaRI/develop
Releasing 7.0
2 parents e9f29e8 + 1c31f73 commit a7d70c5

File tree

77 files changed

+2769
-1882
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+2769
-1882
lines changed

pom.xml

Lines changed: 50 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<modelVersion>4.0.0</modelVersion>
44
<groupId>org.nhind</groupId>
55
<artifactId>config-store</artifactId>
6-
<version>6.0.1</version>
6+
<version>7.0</version>
77
<packaging>jar</packaging>
88
<name>NHIN Direct Java RI - Configuration Persistence Layer</name>
99
<description>NHIN Direct Security And Trust Agent</description>
@@ -18,7 +18,7 @@
1818
<parent>
1919
<groupId>org.springframework.boot</groupId>
2020
<artifactId>spring-boot-dependencies</artifactId>
21-
<version>2.1.6.RELEASE</version>
21+
<version>2.2.4.RELEASE</version>
2222
</parent>
2323
<developers>
2424
<developer>
@@ -48,29 +48,47 @@
4848
<url>http://nhindirect.org/BSDLicense</url>
4949
</license>
5050
</licenses>
51+
<repositories>
52+
<repository>
53+
<id>spring-milestones</id>
54+
<name>Spring Milestones</name>
55+
<url>https://repo.spring.io/milestone</url>
56+
</repository>
57+
</repositories>
5158
<dependencies>
5259
<dependency>
5360
<groupId>org.springframework.boot</groupId>
5461
<artifactId>spring-boot-starter</artifactId>
55-
</dependency>
62+
</dependency>
63+
<dependency>
64+
<groupId>org.flywaydb</groupId>
65+
<artifactId>flyway-core</artifactId>
66+
<version>6.1.4</version>
67+
</dependency>
5668
<dependency>
57-
<groupId>org.springframework.boot</groupId>
58-
<artifactId>spring-boot-starter-data-jpa</artifactId>
59-
</dependency>
69+
<groupId>org.springframework.data</groupId>
70+
<artifactId>spring-data-r2dbc</artifactId>
71+
<version>1.0.0.RELEASE</version>
72+
</dependency>
73+
<dependency>
74+
<groupId>io.projectreactor</groupId>
75+
<artifactId>reactor-test</artifactId>
76+
<scope>test</scope>
77+
</dependency>
6078
<dependency>
6179
<groupId>org.nhind</groupId>
6280
<artifactId>direct-policy</artifactId>
63-
<version>6.0</version>
81+
<version>7.0</version>
6482
</dependency>
6583
<dependency>
6684
<groupId>org.nhind</groupId>
6785
<artifactId>config-model</artifactId>
68-
<version>6.0</version>
86+
<version>7.0</version>
6987
</dependency>
7088
<dependency>
7189
<groupId>org.nhind</groupId>
7290
<artifactId>direct-common</artifactId>
73-
<version>6.0</version>
91+
<version>7.0</version>
7492
</dependency>
7593
<dependency>
7694
<groupId>commons-io</groupId>
@@ -80,26 +98,22 @@
8098
<dependency>
8199
<groupId>org.apache.commons</groupId>
82100
<artifactId>commons-collections4</artifactId>
83-
<version>4.2</version>
101+
<version>4.4</version>
84102
</dependency>
85-
<dependency>
86-
<groupId>org.hibernate</groupId>
87-
<artifactId>hibernate-core</artifactId>
88-
</dependency>
89-
<dependency>
90-
<groupId>org.hibernate</groupId>
91-
<artifactId>hibernate-entitymanager</artifactId>
92-
</dependency>
93103
<dependency>
94104
<groupId>org.bouncycastle</groupId>
95105
<artifactId>bcprov-jdk15on</artifactId>
96-
<version>1.60</version>
106+
<version>1.64</version>
97107
</dependency>
98108
<dependency>
99109
<groupId>dnsjava</groupId>
100110
<artifactId>dnsjava</artifactId>
101111
<version>2.0.8</version>
102112
</dependency>
113+
<dependency>
114+
<groupId>joda-time</groupId>
115+
<artifactId>joda-time</artifactId>
116+
</dependency>
103117
<dependency>
104118
<groupId>org.mockito</groupId>
105119
<artifactId>mockito-core</artifactId>
@@ -125,7 +139,19 @@
125139
<groupId>com.h2database</groupId>
126140
<artifactId>h2</artifactId>
127141
<scope>test</scope>
128-
</dependency>
142+
</dependency>
143+
<dependency>
144+
<groupId>org.springframework.boot.experimental</groupId>
145+
<artifactId>spring-boot-starter-r2dbc-h2</artifactId>
146+
<version>0.1.0.M1</version>
147+
<scope>test</scope>
148+
</dependency>
149+
<dependency>
150+
<groupId>io.r2dbc</groupId>
151+
<artifactId>r2dbc-h2</artifactId>
152+
<version>0.8.1.RELEASE</version>
153+
<scope>test</scope>
154+
</dependency>
129155
</dependencies>
130156
<build>
131157
<extensions>
@@ -229,7 +255,7 @@
229255
<plugin>
230256
<groupId>org.apache.maven.plugins</groupId>
231257
<artifactId>maven-javadoc-plugin</artifactId>
232-
<version>2.9.1</version>
258+
<version>3.0.1</version>
233259
<configuration>
234260
<additionalparam>-Xdoclint:none</additionalparam>
235261
<failOnError>false</failOnError>
@@ -238,6 +264,7 @@
238264
<docfilessubdirs>true</docfilessubdirs>
239265
<source>1.8</source>
240266
<show>public</show>
267+
<failOnError>false</failOnError>
241268
</configuration>
242269
<executions>
243270
<execution>
@@ -248,8 +275,7 @@
248275
</goals>
249276
</execution>
250277
</executions>
251-
</plugin>
252-
<!-- for releases only
278+
</plugin>
253279
<plugin>
254280
<groupId>org.apache.maven.plugins</groupId>
255281
<artifactId>maven-gpg-plugin</artifactId>
@@ -263,7 +289,6 @@
263289
</execution>
264290
</executions>
265291
</plugin>
266-
-->
267292
</plugins>
268293
</build>
269294
<reporting>
@@ -276,7 +301,7 @@
276301
<plugin>
277302
<groupId>org.apache.maven.plugins</groupId>
278303
<artifactId>maven-javadoc-plugin</artifactId>
279-
<version>2.9.1</version>
304+
<version>3.0.1</version>
280305
<configuration>
281306
<additionalparam>-Xdoclint:none</additionalparam>
282307
<failOnError>false</failOnError>

src/main/java/org/nhindirect/config/repository/AddressRepository.java

Lines changed: 19 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,22 +24,30 @@ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2424
import java.util.List;
2525

2626
import org.nhindirect.config.store.Address;
27-
import org.nhindirect.config.store.Domain;
2827
import org.nhindirect.config.store.EntityStatus;
29-
import org.springframework.data.jpa.repository.JpaRepository;
30-
import org.springframework.data.jpa.repository.Query;
31-
import org.springframework.data.repository.query.Param;
28+
import org.springframework.data.r2dbc.repository.Query;
29+
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
3230

33-
public interface AddressRepository extends JpaRepository<Address, Long>
31+
import reactor.core.publisher.Flux;
32+
import reactor.core.publisher.Mono;
33+
34+
public interface AddressRepository extends ReactiveCrudRepository<Address, Long>
3435
{
35-
public Address findByEmailAddressIgnoreCase(String emailAddress);
36+
@Query("select * from address a where upper(a.emailAddress) = upper(:emailAddress)")
37+
public Mono<Address> findByEmailAddressIgnoreCase(String emailAddress);
38+
39+
@Query("select * from address a where upper(a.endpoint) = upper(:endpoint)")
40+
public Flux<Address> findByEndpointIgnoreCase(String endpoint);
3641

37-
public List<Address> findByEndpointIgnoreCase(String endpoint);
42+
@Query("select * from address a where upper(a.emailAddress) in (:emailAddresses) and a.status = :status")
43+
public Flux<Address> findByEmailAddressInIgnoreCaseAndStatus(List<String> emailAddresses, EntityStatus status);
3844

39-
@Query("select a from Address a where upper(a.emailAddress) in :emailAddresses and a.status = :status")
40-
public List<Address> findByEmailAddressInIgnoreCaseAndStatus(@Param("emailAddresses") List<String> emailAddresses, @Param("status") EntityStatus status);
45+
@Query("select * from address a where a.domainId = :domainId")
46+
public Flux<Address> findByDomainId(Long domainId);
4147

42-
public List<Address> findByDomain(Domain domain);
48+
@Query("delete from address where domainId = :domainId")
49+
public Mono<Void> deleteByDomainId(Long domainId);
4350

44-
public void deleteByEmailAddressIgnoreCase(String emailAddress);
51+
@Query("delete from address where upper(emailAddress) = upper(:emailAddress)")
52+
public Mono<Void> deleteByEmailAddressIgnoreCase(String emailAddress);
4553
}

src/main/java/org/nhindirect/config/repository/AnchorRepository.java

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,24 +24,30 @@ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2424
import java.util.List;
2525

2626
import org.nhindirect.config.store.Anchor;
27-
import org.springframework.data.jpa.repository.JpaRepository;
28-
import org.springframework.data.jpa.repository.Query;
27+
import org.springframework.data.r2dbc.repository.Query;
2928
import org.springframework.data.repository.query.Param;
29+
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
3030
import org.springframework.transaction.annotation.Transactional;
3131

32-
public interface AnchorRepository extends JpaRepository<Anchor, Long>
32+
import reactor.core.publisher.Flux;
33+
import reactor.core.publisher.Mono;
34+
35+
public interface AnchorRepository extends ReactiveCrudRepository<Anchor, Long>
3336
{
3437
@Transactional
35-
public List<Anchor> findByOwnerIgnoreCase(String owner);
38+
@Query("select * from anchor a where upper(a.owner) = upper(:owner)")
39+
public Flux<Anchor> findByOwnerIgnoreCase(String owner);
3640

3741
@Transactional
38-
@Query("select a from Anchor a where upper(a.owner) in :owners")
39-
public List<Anchor> findByOwnerInIgnoreCase(@Param("owners") List<String> owners);
42+
@Query("select * from anchor a where upper(a.owner) in upper(:owners)")
43+
public Flux<Anchor> findByOwnerInIgnoreCase(@Param("owners") List<String> owners);
4044

4145
@Transactional
42-
public void deleteByOwnerIgnoreCase(String owner);
46+
@Query("delete from anchor where upper(owner) = upper(:owner)")
47+
public Mono<Void> deleteByOwnerIgnoreCase(String owner);
4348

4449
@Transactional
45-
public void deleteByIdIn(List<Long> ids);
50+
@Query("delete from anchor where id in (:ids)")
51+
public Mono<Void> deleteByIdIn(List<Long> ids);
4652

4753
}

src/main/java/org/nhindirect/config/repository/CertPolicyGroupDomainReltnRepository.java

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,24 +21,28 @@ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2121

2222
package org.nhindirect.config.repository;
2323

24-
import java.util.Collection;
25-
26-
import org.nhindirect.config.store.CertPolicyGroup;
2724
import org.nhindirect.config.store.CertPolicyGroupDomainReltn;
28-
import org.nhindirect.config.store.Domain;
29-
import org.springframework.data.jpa.repository.JpaRepository;
25+
import org.springframework.data.r2dbc.repository.Query;
26+
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
3027
import org.springframework.transaction.annotation.Transactional;
3128

32-
public interface CertPolicyGroupDomainReltnRepository extends JpaRepository<CertPolicyGroupDomainReltn, Long>
29+
import reactor.core.publisher.Flux;
30+
import reactor.core.publisher.Mono;
31+
32+
public interface CertPolicyGroupDomainReltnRepository extends ReactiveCrudRepository<CertPolicyGroupDomainReltn, Long>
3333
{
34-
public Collection<CertPolicyGroupDomainReltn> findByDomain(Domain domain);
34+
@Query("select * from certpolicygroupdomainreltn r where r.domain_id = :domainId")
35+
public Flux<CertPolicyGroupDomainReltn> findByDomainId(Long domainId);
3536

37+
@Query("delete from certpolicygroupdomainreltn r where r.domain_id = :domainId and r.policy_group_id = :policyGroupId")
3638
@Transactional
37-
public void deleteByDomainAndCertPolicyGroup(Domain domain, CertPolicyGroup policyGroup);
39+
public Mono<Void> deleteByDomainIdAndCertPolicyGroupId(Long domainId, Long policyGroupId);
3840

41+
@Query("delete from certpolicygroupdomainreltn where domain_id = :domainId")
3942
@Transactional
40-
public void deleteByDomain(Domain domain);
43+
public Mono<Void> deleteByDomainId(Long domainId);
4144

45+
@Query("delete from certpolicygroupdomainreltn where policy_group_id = :policyGroupId")
4246
@Transactional
43-
public void deleteByCertPolicyGroup(CertPolicyGroup policyGroup);
47+
public Mono<Void> deleteByCertPolicyGroupId(Long policyGroupId);
4448
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package org.nhindirect.config.repository;
2+
3+
import org.nhindirect.config.store.CertPolicyGroupReltn;
4+
import org.springframework.data.r2dbc.repository.Query;
5+
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
6+
import org.springframework.transaction.annotation.Transactional;
7+
8+
import reactor.core.publisher.Flux;
9+
import reactor.core.publisher.Mono;
10+
11+
public interface CertPolicyGroupReltnRepository extends ReactiveCrudRepository<CertPolicyGroupReltn, Long>
12+
{
13+
@Query("select * from certpolicygroupreltn r where r.certPolicyId = :policyId")
14+
@Transactional
15+
public Flux<CertPolicyGroupReltn> findByPolicyId(Long policyId);
16+
17+
@Query("select * from certpolicygroupreltn r where r.certPolicyGroupId = :groupId")
18+
@Transactional
19+
public Flux<CertPolicyGroupReltn> findByGroupId(Long groupId);
20+
21+
@Query("delete from certpolicygroupreltn where certPolicyId = :policyId")
22+
@Transactional
23+
public Mono<Void> deleteByPolicyId(Long policyId);
24+
25+
@Query("delete from certpolicygroupreltn where certPolicyGroupId = :groupId")
26+
@Transactional
27+
public Mono<Void> deleteByGroupId(Long groupId);
28+
}

src/main/java/org/nhindirect/config/repository/CertPolicyGroupRepository.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,18 @@ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2424
import java.util.List;
2525

2626
import org.nhindirect.config.store.CertPolicyGroup;
27-
import org.springframework.data.jpa.repository.JpaRepository;
27+
import org.springframework.data.r2dbc.repository.Query;
28+
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
2829
import org.springframework.transaction.annotation.Transactional;
2930

30-
public interface CertPolicyGroupRepository extends JpaRepository<CertPolicyGroup, Long>
31+
import reactor.core.publisher.Mono;
32+
33+
public interface CertPolicyGroupRepository extends ReactiveCrudRepository<CertPolicyGroup, Long>
3134
{
32-
public CertPolicyGroup findByPolicyGroupNameIgnoreCase(String groupName);
35+
@Query("select * from certpolicygroup cpg where upper(cpg.policyGroupName) = upper(:groupName)")
36+
public Mono<CertPolicyGroup> findByPolicyGroupNameIgnoreCase(String groupName);
3337

3438
@Transactional
35-
public void deleteByIdIn(List<Long> ids);
39+
@Query("delete from certpolicygroup where id in (:ids)")
40+
public Mono<Void> deleteByIdIn(List<Long> ids);
3641
}

src/main/java/org/nhindirect/config/repository/CertPolicyRepository.java

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,19 @@ STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
2424
import java.util.List;
2525

2626
import org.nhindirect.config.store.CertPolicy;
27-
import org.springframework.data.jpa.repository.JpaRepository;
27+
import org.springframework.data.r2dbc.repository.Query;
28+
import org.springframework.data.repository.reactive.ReactiveCrudRepository;
29+
import org.springframework.transaction.annotation.Transactional;
2830

29-
public interface CertPolicyRepository extends JpaRepository<CertPolicy, Long>
31+
import reactor.core.publisher.Mono;
32+
33+
public interface CertPolicyRepository extends ReactiveCrudRepository<CertPolicy, Long>
3034
{
31-
public CertPolicy findByPolicyNameIgnoreCase(String policyName);
35+
@Query("select * from certpolicy cp where upper(cp.policyName) = upper(:policyName)")
36+
public Mono<CertPolicy> findByPolicyNameIgnoreCase(String policyName);
3237

33-
public void deleteByIdIn(List<Long> ids);
38+
@Transactional
39+
@Query("delete from certpolicy where id in (:ids)")
40+
public Mono<Void> deleteByIdIn(List<Long> ids);
3441

3542
}

0 commit comments

Comments
 (0)