File tree 3 files changed +38
-8
lines changed
core/src/main/java/org/mobilitydata/gtfsvalidator/table
main/src/main/java/org/mobilitydata/gtfsvalidator
3 files changed +38
-8
lines changed Original file line number Diff line number Diff line change @@ -32,7 +32,6 @@ public final class AnyTableLoader {
32
32
private static final FluentLogger logger = FluentLogger .forEnclosingClass ();
33
33
private static final List <Class <? extends FileValidator >> singleFileValidatorsWithParsingErrors =
34
34
new ArrayList <>();
35
-
36
35
private static final List <Class <? extends SingleEntityValidator >>
37
36
singleEntityValidatorsWithParsingErrors = new ArrayList <>();
38
37
Original file line number Diff line number Diff line change 17
17
package org .mobilitydata .gtfsvalidator .table ;
18
18
19
19
import java .util .Locale ;
20
- import org .mobilitydata .gtfsvalidator .annotation .EndRange ;
21
- import org .mobilitydata .gtfsvalidator .annotation .FieldType ;
22
- import org .mobilitydata .gtfsvalidator .annotation .FieldTypeEnum ;
23
- import org .mobilitydata .gtfsvalidator .annotation .GtfsTable ;
24
- import org .mobilitydata .gtfsvalidator .annotation .Recommended ;
25
- import org .mobilitydata .gtfsvalidator .annotation .Required ;
20
+ import org .mobilitydata .gtfsvalidator .annotation .*;
26
21
import org .mobilitydata .gtfsvalidator .type .GtfsDate ;
27
22
28
23
@ GtfsTable (value = "feed_info.txt" , singleRow = true )
29
- @ Recommended
24
+ @ ConditionallyRequired
30
25
public interface GtfsFeedInfoSchema extends GtfsEntity {
31
26
@ Required
32
27
String feedPublisherName ();
Original file line number Diff line number Diff line change
1
+ package org .mobilitydata .gtfsvalidator .validator ;
2
+
3
+ import javax .inject .Inject ;
4
+ import org .mobilitydata .gtfsvalidator .annotation .GtfsValidator ;
5
+ import org .mobilitydata .gtfsvalidator .notice .MissingRecommendedFileNotice ;
6
+ import org .mobilitydata .gtfsvalidator .notice .MissingRequiredFileNotice ;
7
+ import org .mobilitydata .gtfsvalidator .notice .NoticeContainer ;
8
+ import org .mobilitydata .gtfsvalidator .table .GtfsFeedInfo ;
9
+ import org .mobilitydata .gtfsvalidator .table .GtfsFeedInfoTableContainer ;
10
+ import org .mobilitydata .gtfsvalidator .table .GtfsTranslationTableContainer ;
11
+
12
+ @ GtfsValidator
13
+ public class MissingFeedInfoValidator extends FileValidator {
14
+
15
+ private final GtfsFeedInfoTableContainer feedInfoTable ;
16
+ private final GtfsTranslationTableContainer translationTable ;
17
+
18
+ @ Inject
19
+ public MissingFeedInfoValidator (
20
+ GtfsFeedInfoTableContainer feedInfoTable , GtfsTranslationTableContainer translationTable ) {
21
+ this .feedInfoTable = feedInfoTable ;
22
+ this .translationTable = translationTable ;
23
+ }
24
+
25
+ @ Override
26
+ public void validate (NoticeContainer noticeContainer ) {
27
+ if (feedInfoTable .isMissingFile ()) {
28
+ if (translationTable .isMissingFile ()) {
29
+ noticeContainer .addValidationNotice (
30
+ new MissingRecommendedFileNotice (GtfsFeedInfo .FILENAME ));
31
+ } else {
32
+ noticeContainer .addValidationNotice (new MissingRequiredFileNotice (GtfsFeedInfo .FILENAME ));
33
+ }
34
+ }
35
+ }
36
+ }
You can’t perform that action at this time.
0 commit comments