Skip to content

Commit 8fcf14c

Browse files
author
Psilo
committed
Merge branch 'develop'
2 parents f922393 + e625802 commit 8fcf14c

File tree

2 files changed

+35
-1
lines changed

2 files changed

+35
-1
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
<modelVersion>4.0.0</modelVersion>
1212
<artifactId>jre-utils</artifactId>
13-
<version>0.1.7</version>
13+
<version>0.1.8</version>
1414
<name>JreUtils</name>
1515
<packaging>jar</packaging>
1616

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package info.unterrainer.commons.jreutils;
2+
3+
import java.util.HashSet;
4+
import java.util.Set;
5+
6+
import lombok.Data;
7+
import lombok.RequiredArgsConstructor;
8+
import lombok.experimental.SuperBuilder;
9+
10+
@Data
11+
@RequiredArgsConstructor
12+
@SuperBuilder()
13+
public class SetIntersection {
14+
15+
private final Set<String> before;
16+
private final Set<String> after;
17+
18+
private final Set<String> create;
19+
private final Set<String> delete;
20+
private final Set<String> leave;
21+
22+
public static SetIntersection of(final Set<String> before, final Set<String> after) {
23+
Set<String> create = new HashSet<>(before);
24+
create.removeAll(after);
25+
26+
Set<String> delete = new HashSet<>(after);
27+
delete.removeAll(before);
28+
29+
Set<String> leave = new HashSet<>(before);
30+
leave.removeAll(create);
31+
32+
return new SetIntersection(before, after, create, delete, leave);
33+
}
34+
}

0 commit comments

Comments
 (0)