Skip to content

Commit e76f4dd

Browse files
authored
Merge pull request #30 from ical4j/develop
Refactored property validation
2 parents b61ee2e + ca638cb commit e76f4dd

Some content is hidden

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

71 files changed

+1076
-459
lines changed

.env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CHANGELOG_START_TAG=ical4j-vcard-2.0.0-alpha8
1+
CHANGELOG_START_TAG=ical4j-vcard-2.0.0
22
CHANGELOG_END_TAG=HEAD
33

44
GRADLE_VERSION=8.4

.github/workflows/publish-snapshots.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@ on:
55
branches:
66
- 'develop'
77

8-
permissions: read-all
8+
permissions:
9+
contents: read
10+
checks: write
11+
pull-requests: write
912

1013
jobs:
1114
test:

.palantir/revapi.yml

Lines changed: 297 additions & 0 deletions
Large diffs are not rendered by default.

build.gradle

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
plugins {
2-
id 'java'
32
id 'java-library'
43
id 'groovy'
54
id 'maven-publish'
@@ -9,7 +8,6 @@ plugins {
98
id "com.palantir.revapi" version "1.7.0"
109
// id "net.ltgt.errorprone" version "2.0.2" apply false
1110
id "biz.aQute.bnd.builder" version "$bndVersion"
12-
id 'org.javamodularity.moduleplugin' version '1.8.15'
1311
}
1412

1513
sourceCompatibility = 11
@@ -32,8 +30,6 @@ java {
3230
}
3331
}
3432

35-
sourcesJar.dependsOn ':compileModuleInfoJava'
36-
3733
dependencies {
3834
api "org.mnode.ical4j:ical4j:$ical4jVersion", "commons-io:commons-io:$commonsIoVersion"
3935

@@ -58,17 +54,7 @@ dependencies {
5854
}
5955
}
6056

61-
compileTestJava {
62-
moduleOptions {
63-
compileOnClasspath = true
64-
}
65-
}
66-
6757
test {
68-
moduleOptions {
69-
runOnClasspath = true
70-
}
71-
7258
useJUnitPlatform()
7359

7460
finalizedBy jacocoTestCoverageVerification, jacocoTestReport // Ensure Jacoco is run after tests have completed
@@ -133,8 +119,6 @@ jar {
133119
'Implementation-Vendor': 'Ben Fortuna'
134120
)
135121
}
136-
137-
duplicatesStrategy = DuplicatesStrategy.WARN
138122
}
139123

140124
revapi {

gradle.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
ical4jVersion=4.0.4
1+
ical4jVersion=4.0.7
22
log4jVersion=2.23.1
33
commonsIoVersion=2.16.1
44
groovyVersion=3.0.22
@@ -7,4 +7,4 @@ junitVintageVersion=5.10.3
77
spockVersion=2.4-M1-groovy-3.0
88

99
jacoco_htmlReport=true
10-
revApiOldVersion=1.0.7
10+
revApiOldVersion=2.0.0

src/main/java/module-info.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
exports net.fortuna.ical4j.vcard.property.immutable;
1717
exports net.fortuna.ical4j.vcard.filter;
1818
exports net.fortuna.ical4j.vcard.parameter;
19+
exports net.fortuna.ical4j.vcard.validate;
1920

2021
uses net.fortuna.ical4j.vcard.ParameterFactory;
2122
uses net.fortuna.ical4j.vcard.PropertyFactory;

src/main/java/net/fortuna/ical4j/vcard/PropertyValidatorSupport.java

Lines changed: 0 additions & 311 deletions
This file was deleted.

src/main/java/net/fortuna/ical4j/vcard/property/Address.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,12 @@
3737
import net.fortuna.ical4j.util.CompatibilityHints;
3838
import net.fortuna.ical4j.validate.ValidationException;
3939
import net.fortuna.ical4j.validate.ValidationResult;
40-
import net.fortuna.ical4j.vcard.*;
40+
import net.fortuna.ical4j.vcard.Group;
41+
import net.fortuna.ical4j.vcard.GroupProperty;
42+
import net.fortuna.ical4j.vcard.PropertyFactory;
43+
import net.fortuna.ical4j.vcard.PropertyName;
4144
import net.fortuna.ical4j.vcard.parameter.Type;
45+
import net.fortuna.ical4j.vcard.validate.DeliveryPropertyValidators;
4246

4347
import java.util.Arrays;
4448

@@ -48,14 +52,17 @@
4852

4953
/**
5054
* ADDRESS property.
55+
*
56+
* <a href="https://www.rfc-editor.org/rfc/rfc6350.html#section-6.3.1">vCard - ADR</a>
57+
*
5158
* <p>
5259
* $Id$
5360
* <p>
5461
* Created on 23/08/2008
5562
*
5663
* @author Ben
5764
*/
58-
public class Address extends Property implements PropertyValidatorSupport, GroupProperty {
65+
public class Address extends Property implements GroupProperty {
5966

6067
private static final long serialVersionUID = 6538745668985015384L;
6168

@@ -313,7 +320,7 @@ public String getValue() {
313320
*/
314321
@Override
315322
public ValidationResult validate() throws ValidationException {
316-
return ADDRESS.validate(this);
323+
return DeliveryPropertyValidators.ADDRESS.validate(this);
317324
}
318325

319326
@Override

src/main/java/net/fortuna/ical4j/vcard/property/Agent.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,12 @@
3838
import net.fortuna.ical4j.util.Strings;
3939
import net.fortuna.ical4j.validate.ValidationException;
4040
import net.fortuna.ical4j.validate.ValidationResult;
41-
import net.fortuna.ical4j.vcard.*;
41+
import net.fortuna.ical4j.vcard.Group;
42+
import net.fortuna.ical4j.vcard.ParameterName;
43+
import net.fortuna.ical4j.vcard.PropertyFactory;
44+
import net.fortuna.ical4j.vcard.PropertyName;
4245
import net.fortuna.ical4j.vcard.parameter.Value;
46+
import net.fortuna.ical4j.vcard.validate.PropertyValidatorSupport;
4347

4448
import java.net.URI;
4549
import java.net.URISyntaxException;

src/main/java/net/fortuna/ical4j/vcard/property/Anniversary.java

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,12 @@
3737
import net.fortuna.ical4j.model.property.DateProperty;
3838
import net.fortuna.ical4j.validate.ValidationException;
3939
import net.fortuna.ical4j.validate.ValidationResult;
40-
import net.fortuna.ical4j.vcard.*;
40+
import net.fortuna.ical4j.vcard.Group;
41+
import net.fortuna.ical4j.vcard.ParameterName;
42+
import net.fortuna.ical4j.vcard.PropertyFactory;
43+
import net.fortuna.ical4j.vcard.PropertyName;
4144
import net.fortuna.ical4j.vcard.parameter.Value;
45+
import net.fortuna.ical4j.vcard.validate.IdentificationPropertyValidators;
4246

4347
import java.time.temporal.Temporal;
4448
import java.util.Optional;
@@ -47,14 +51,17 @@
4751

4852
/**
4953
* DEATH property.
54+
*
55+
* <a href="https://www.rfc-editor.org/rfc/rfc6350.html#section-6.2.6">vCard - ANNIVERSARY</a>
56+
*
5057
* <p>
5158
* $Id$
5259
* <p>
5360
* Created on 23/08/2008
5461
*
5562
* @author Ben
5663
*/
57-
public class Anniversary<T extends Temporal> extends DateProperty<T> implements Encodable, PropertyValidatorSupport {
64+
public class Anniversary<T extends Temporal> extends DateProperty<T> implements Encodable {
5865

5966
private static final long serialVersionUID = 3009228294165154307L;
6067

@@ -98,9 +105,9 @@ public void setValue(String aValue) {
98105
@Override
99106
public ValidationResult validate() throws ValidationException {
100107
if (Optional.of(Value.TEXT).equals(getParameter(ParameterName.VALUE.toString()))) {
101-
return ANNIVERSARY_TEXT.validate(this);
108+
return IdentificationPropertyValidators.ANNIVERSARY_TEXT.validate(this);
102109
}
103-
return ANNIVERSARY_DATE.validate(this);
110+
return IdentificationPropertyValidators.ANNIVERSARY_DATE.validate(this);
104111
}
105112

106113
@Override

0 commit comments

Comments
 (0)