Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
288 commits
Select commit Hold shift + click to select a range
ce18146
Added TODO to cv-data-tasks Application class
dmccoystephenson Mar 10, 2025
88bb1fd
Formatted ActiveTimHoldingController and ActiveTimController classes
dmccoystephenson Mar 10, 2025
ab47203
Implemented new service methods & added skeleton methods to relevant …
dmccoystephenson Mar 10, 2025
d57cd57
Implemented new controller endpoints
dmccoystephenson Mar 10, 2025
86674c4
Updated some logging in ActiveTimController
dmccoystephenson Mar 10, 2025
fe6c46e
Modified logging, added try/catch blocks & prevented duplicate deleti…
dmccoystephenson Mar 10, 2025
8073fbb
Made period for CleanupStaleActiveTimHoldingRecords task configurable
dmccoystephenson Mar 10, 2025
bf04a76
Created skeleton test methods for CleanupStaleActiveTimHoldingRecords…
dmccoystephenson Mar 11, 2025
3d30765
Created skeleton test methods for ActiveTimHoldingController, ActiveT…
dmccoystephenson Mar 11, 2025
28b6334
Created skeleton test method for new method in ActiveTimController
dmccoystephenson Mar 11, 2025
84a5059
Simplified log language
dmccoystephenson Mar 11, 2025
056fd89
Reduced noise in logging related to failures to trim region names
dmccoystephenson Mar 11, 2025
baf5f5b
Merge branch 'fix/insert-into-holding-for-all-destinations' of github…
dmccoystephenson Mar 11, 2025
3c55653
Added new constructor to WydotTim class
dmccoystephenson Mar 11, 2025
923dc65
Formatted WydotTim class
dmccoystephenson Mar 11, 2025
2b383c9
Added `@Getter` and `@Setter` annotations to WydotTim class
dmccoystephenson Mar 11, 2025
12e54c5
Used new WydotTim constructor in TimGenerationHelper
dmccoystephenson Mar 11, 2025
44c364d
Added annotation processor path to pom.xml
dmccoystephenson Mar 11, 2025
24b1016
Updated new WydotTim constructor to avoid changing functionality
dmccoystephenson Mar 11, 2025
2fac0ed
Added new `move-jars.sh` script
dmccoystephenson Mar 11, 2025
01a2103
Revert "Added `@Getter` and `@Setter` annotations to WydotTim class"
dmccoystephenson Mar 11, 2025
39922cf
Merge remote-tracking branch 'origin/fix/insert-into-holding-for-all-…
dmccoystephenson Mar 11, 2025
96b655b
Updated logging in `DeleteActiveTimsById` to more accurately portray …
dmccoystephenson Mar 11, 2025
f3a828e
Added `@Slf4j` annotation to ActiveTimController and moved to slf4j l…
dmccoystephenson Mar 11, 2025
db7b7ca
Implemented new unit tests in ActiveTimHoldingControllerTest.java
dmccoystephenson Mar 11, 2025
9ed3e5b
Implemented new unit tests in ActiveTimServiceTest.java
dmccoystephenson Mar 11, 2025
a514417
Formatted ActiveTimHoldingControllerTest
dmccoystephenson Mar 11, 2025
d2549bc
Formatted ActiveTimServiceTest
dmccoystephenson Mar 11, 2025
dcaa285
Implemented unit tests in ActiveTimHoldingServiceTest.java
dmccoystephenson Mar 11, 2025
6d97e95
Implemented new unit test in ActiveTimControllerTest.java
dmccoystephenson Mar 11, 2025
9951705
Formatted ActiveTimControllerTest
dmccoystephenson Mar 11, 2025
3f78d33
Refactored ActiveTimController to use try-with-resources wherever pos…
dmccoystephenson Mar 11, 2025
230de4f
Replaced `printStackTrace` invocations with better logging in ActiveT…
dmccoystephenson Mar 11, 2025
3a3a71c
Addressed some warnings in ActiveTimController
dmccoystephenson Mar 11, 2025
72b59e0
Refactored ActiveTimHoldingController to use try-with-resources where…
dmccoystephenson Mar 11, 2025
1640e95
Added `@Slf4j` annotation to ActiveTimHoldingController and replaced …
dmccoystephenson Mar 11, 2025
34cbe59
Addressed some warnings in ActiveTimHoldingController
dmccoystephenson Mar 11, 2025
a89b8b2
Updated logging in CleanupStaleActiveTimHoldingRecords class
dmccoystephenson Mar 11, 2025
7ba3ebd
Added some TODOs to the CleanupStaleActiveTimHoldingRecords class
dmccoystephenson Mar 11, 2025
82d7790
Removed duplicate functionality & updated ActiveTimService to use exi…
dmccoystephenson Mar 11, 2025
5d72830
Implemented unit tests in CleanupStaleActiveTimHoldingRecordsTest.java
dmccoystephenson Mar 12, 2025
76234e6
Reformatted modified .java files with hard wrap at 200 characters
dmccoystephenson Mar 12, 2025
417f9ab
Refactored CleanupStaleActiveTimHoldingRecords class to map active ti…
dmccoystephenson Mar 12, 2025
8b01c4c
Formatted CleanupStaleActiveTimHoldingRecords class
dmccoystephenson Mar 12, 2025
e075eb1
Updated MongoLogger to prevent multiple clients from being created
dmccoystephenson Mar 13, 2025
0d956be
Formatted MongoLogger
dmccoystephenson Mar 13, 2025
1a02b42
Addressed warnings in MongoLogger class
dmccoystephenson Mar 13, 2025
6c08f88
Added utility.logWithDate call to catch statement in MongoLogger
dmccoystephenson Mar 13, 2025
6ce9050
Update ode-mongo-logger/src/main/java/com/trihydro/mongologger/app/lo…
dmccoystephenson Mar 13, 2025
4641757
Refactored MongoLogger to allow for final instance variables and fewe…
dmccoystephenson Mar 13, 2025
780b464
Removed explicit type argument
dmccoystephenson Mar 13, 2025
2b35361
Formatted TimRsuService class
dmccoystephenson Mar 14, 2025
98343cb
Switched to using try-with-resources in TimRsuService class
dmccoystephenson Mar 14, 2025
7fcc700
Updated catch block in TimRsuService class to prevent logging unique …
dmccoystephenson Mar 14, 2025
a0564d3
Removed boxing in TimRsuService
dmccoystephenson Mar 14, 2025
8396cf9
Switched to constructor to allow for final instance variables in TimR…
dmccoystephenson Mar 14, 2025
f35aa92
Added LOGGING_LEVEL_COM_TRIHYDRO env var to logger-kafka-consumer ser…
dmccoystephenson Mar 14, 2025
c567997
Removed unused import in TimRsuService class
dmccoystephenson Mar 14, 2025
1030df8
Updated TimRsuServiceTest class
dmccoystephenson Mar 14, 2025
cec5f8b
Added additional unit test to TimRsuServiceTest class
dmccoystephenson Mar 14, 2025
a2b0eec
Updated return values for TimRsuService.AddTimRsu to increase testabi…
dmccoystephenson Mar 14, 2025
0be041a
Merge pull request #31 from Trihydro/mongo/single-mongo-client
payneBrandon Mar 18, 2025
8f29767
Merge remote-tracking branch 'origin/fix/prevent-logging-constraint-v…
dmccoystephenson Mar 20, 2025
5874c8e
Formatted `WydotTimIncidentController` class
dmccoystephenson Mar 20, 2025
0fb9809
Addressed comments on `WydotTimIncidentController` class
dmccoystephenson Mar 20, 2025
0ce46b4
Added `@Slf4j` annotation to WydotTimIncidentController class
dmccoystephenson Mar 20, 2025
695273f
Removed unused imports in WydotTimIncidentController class
dmccoystephenson Mar 20, 2025
683d7b6
Formatted SetItisCodes class
dmccoystephenson Mar 20, 2025
6eac999
Addressed warnings in SetItisCodes class
dmccoystephenson Mar 20, 2025
3e7e3fe
Added `@Slf4j` annotation to SetItisCodes class
dmccoystephenson Mar 20, 2025
1cb2eab
Formatted SetItisCodesTest class
dmccoystephenson Mar 20, 2025
2121b6c
Added passing unit test for `setItisCodesIncident` when default incid…
dmccoystephenson Mar 20, 2025
8b9c0b5
Added failing unit test for `setItisCodesIncident` when existing prob…
dmccoystephenson Mar 20, 2025
95c6dd9
Fixed failing unit test for `setItisCodesIncident` when existing prob…
dmccoystephenson Mar 20, 2025
59e325a
Refactored part of `setItisCodesIncident` for clarity
dmccoystephenson Mar 20, 2025
7307b99
Added comment to `setItisCodesIncident` for clarity
dmccoystephenson Mar 20, 2025
312af13
Added `problemOtherText` instance variable to WydotTimIncident class
dmccoystephenson Mar 20, 2025
3ff0bf5
Formatted WydotTimIncident class
dmccoystephenson Mar 20, 2025
554aab5
Implemented failing unit test for GVW restriction incident in SetItis…
dmccoystephenson Mar 21, 2025
ea704a9
Removed duplicate when statement in `testSetItisCodesIncident_OtherPr…
dmccoystephenson Mar 21, 2025
ed4d295
Added constructors to ItisCode class
dmccoystephenson Mar 21, 2025
375dbf2
Updated setItisCodesIncident to handle "other" problem case for GVW r…
dmccoystephenson Mar 21, 2025
dc2dbb4
Added more unit tests for GVW restriction incidents to SetItisCodesTest
dmccoystephenson Mar 21, 2025
170d21a
Removed utility instance variable from SetItisCodes class
dmccoystephenson Mar 21, 2025
86ec481
Replaced `InjectDependencies` with constructor in SetItisCodes class,…
dmccoystephenson Mar 21, 2025
a9dbc31
Removed constructors from ItisCode class
dmccoystephenson Mar 21, 2025
4859c6f
Merge pull request #33 from Trihydro/sync-dev-with-main-3-20-2025
dmccoystephenson Mar 24, 2025
d92e86f
Removed unused import in WydotTimBaseController
dmccoystephenson Mar 24, 2025
a6e4671
Merge pull request #28 from Trihydro/fix/prevent-division-by-zero
payneBrandon Mar 24, 2025
6662df8
Merge branch 'main' into fix/insert-into-holding-for-all-destinations
dmccoystephenson Mar 24, 2025
09b45aa
Merge pull request #29 from Trihydro/fix/insert-into-holding-for-all-…
dmccoystephenson Mar 25, 2025
040fd21
Merge branch 'main' into fix/handle-stale-ath-records
dmccoystephenson Mar 25, 2025
084778c
Merge pull request #35 from Trihydro/main
dmccoystephenson Mar 25, 2025
d5f5fa7
Update method comment to JavaDoc in TimRefreshController
dmccoystephenson Mar 25, 2025
285e204
Update refresh cron expression and standardize configuration
dmccoystephenson Mar 25, 2025
717a8a0
Formatted TimRefreshController
dmccoystephenson Mar 25, 2025
a5f176b
Addressed warnings for TimRefreshController class
dmccoystephenson Mar 25, 2025
5e94991
Added `@Slf4j` annotation to TimRefreshController class and transitio…
dmccoystephenson Mar 25, 2025
985f63d
Refactor constructor to use `this` for clarity.
dmccoystephenson Mar 25, 2025
2f3370d
Added `@Slfj4` annotation to DbInteractions class and transitioned to…
dmccoystephenson Mar 26, 2025
befaede
Removed utility instance variable from DbInteractions class
dmccoystephenson Mar 26, 2025
8306e2b
Refactor DbInteractions constructor to enforce final fields
dmccoystephenson Mar 26, 2025
dccc52e
Refactor DbInteractionsTest to remove @InjectMocks and initMocks
dmccoystephenson Mar 26, 2025
3b9b45d
Refactor `DbInteractions` to use try-with-resources for ResultSet.
dmccoystephenson Mar 26, 2025
38a8c00
Refactor DbInteractionsTest to use Mockito annotations
dmccoystephenson Mar 26, 2025
243b05b
Rename test methods for clarity and consistency
dmccoystephenson Mar 26, 2025
28c66f3
Add missing verifications to database interaction tests
dmccoystephenson Mar 26, 2025
cad9af3
Refactor DbInteractions fields to private visibility.
dmccoystephenson Mar 26, 2025
202814c
Add comprehensive JavaDoc comments to DbInteractions class
dmccoystephenson Mar 26, 2025
bcda5d1
Add LOGGING_LEVEL_COM_TRIHYDRO to environment variables
dmccoystephenson Mar 26, 2025
aa83d9f
Add LOGGING_LEVEL_COM_TRIHYDRO variable to services in root docker-co…
dmccoystephenson Mar 26, 2025
b03473f
Formatted classes in logger-kafka-consumer module that use `utility.l…
dmccoystephenson Mar 26, 2025
761c0cd
Added `@Slf4j` annotation to LoggerKafkaConsumer class and transition…
dmccoystephenson Mar 26, 2025
5341212
Added `@Slf4j` annotation to ActiveTimHoldingService class and transi…
dmccoystephenson Mar 26, 2025
91b671e
Added `@Slf4j` annotation to ActiveTimService class and transitioned …
dmccoystephenson Mar 26, 2025
b5ca466
Added `@Slf4j` annotation to DataFrameService class and transitioned …
dmccoystephenson Mar 26, 2025
3c7e8c5
Added `@Slf4j` annotation to TimService class and transitioned to cal…
dmccoystephenson Mar 26, 2025
56959d7
Addressed warnings in LoggerKafkaConsumer class
dmccoystephenson Mar 26, 2025
1545952
Refactor resource management to use try-with-resources in ActiveTimHo…
dmccoystephenson Mar 26, 2025
8cbbe6b
Refactor resource management to use try-with-resources in ActiveTimSe…
dmccoystephenson Mar 26, 2025
baf1e2a
Addressed warnings in ActiveTimService class
dmccoystephenson Mar 26, 2025
dacbc4c
Added TODO to ActiveTimService
dmccoystephenson Mar 26, 2025
e08d6a8
Added TODO to DataFrameService
dmccoystephenson Mar 26, 2025
41afca3
Refactor resource management to use try-with-resources in DataFrameSe…
dmccoystephenson Mar 26, 2025
1d44640
Addressed warnings in DataFrameService class
dmccoystephenson Mar 26, 2025
82834b2
Added TODO to TimService class
dmccoystephenson Mar 26, 2025
d34c921
Refactor resource management to use try-with-resources in TimService …
dmccoystephenson Mar 26, 2025
859ffdb
Addressed warnings in TimService class
dmccoystephenson Mar 26, 2025
02b4a19
Removed unused import in TimService class
dmccoystephenson Mar 26, 2025
ec9d6b0
Set `produces = "application/json"` for every endpoint that the TIM R…
dmccoystephenson Feb 26, 2025
a32609e
fix: Transitioned to try-with-resources for /expired endpoint in Acti…
dmccoystephenson Feb 19, 2025
e88a6f7
Fix: Updated RemoveExpiredActiveTims task to use batch processing, mi…
dmccoystephenson Feb 19, 2025
69ce37c
Added {limit} parameter to ActiveTImController.GetExpiredActiveTims()…
dmccoystephenson Feb 19, 2025
323269d
Updated RemoveExpiredActiveTims to break loop upon error accessing re…
dmccoystephenson Feb 19, 2025
fdd4763
Added batch limit to RemoveExpiredActiveTims
dmccoystephenson Feb 19, 2025
1722bba
Modified RemoveExpiredActiveTims to break loop upon failure to access…
dmccoystephenson Feb 19, 2025
5dc8a84
Modified ActiveTimController & ActiveTimService to use ? syntax for p…
dmccoystephenson Feb 20, 2025
2a5b441
Fix identical points check in calculateAnchorCoordinate
dmccoystephenson Mar 27, 2025
4275bcd
Refactor test code to use helper method for Milepost creation
dmccoystephenson Mar 27, 2025
9590a8e
Handle identical points exception with recovery logic
dmccoystephenson Mar 27, 2025
a3b9426
Called `log.warn` instead of `utility.logWithDate` in identical point…
dmccoystephenson Mar 27, 2025
6ac608b
Changed log level to error in identical points exception handling
dmccoystephenson Mar 27, 2025
be156b7
Refactor identical points handling with new exception handler
dmccoystephenson Mar 28, 2025
d28f083
Refactor test annotations to JUnit 5 standards
dmccoystephenson Mar 28, 2025
e3336a0
Add tests for IdenticalPointsException handling during TIM resubmit
dmccoystephenson Mar 28, 2025
9c104de
refactor: use top level try-catch for clearer code execution paths
mcook42 Apr 1, 2025
e48ce45
Merge pull request #43 from Trihydro/mcook42/suggest/stale-ath
dmccoystephenson Apr 2, 2025
453ab36
Refactor delete logic to support batch deletion of records.
dmccoystephenson Apr 2, 2025
6d606c7
Removed unused import in ActiveTimHoldingDeleteModel class
dmccoystephenson Apr 2, 2025
f878288
Removed `milepost-graph-db` directory
dmccoystephenson Apr 2, 2025
b41166a
Removed `milepost-graph-db` docker service
dmccoystephenson Apr 2, 2025
1e19a00
Update Neo4j URI reference to use environment variable
dmccoystephenson Apr 2, 2025
6c7c0e7
Add note on Neo4j database requirement to README
dmccoystephenson Apr 2, 2025
fb212d5
Update Neo4j URI to use DOCKER_HOST_IP in sample.env
dmccoystephenson Apr 2, 2025
273b538
Merge pull request #30 from Trihydro/fix/handle-stale-ath-records
payneBrandon Apr 2, 2025
414cb86
Merge branch 'main' into fix/prevent-logging-constraint-violation-tim…
dmccoystephenson Apr 2, 2025
0b87624
Used new constructor in `Milepost` class instead of private `createMi…
dmccoystephenson Apr 3, 2025
60d0d70
Merge branch 'fix/update-identical-points-detection' into fix/recover…
dmccoystephenson Apr 3, 2025
b580b7b
Removed outdated TODO from `TimGenerationHelperTest` class
dmccoystephenson Apr 3, 2025
5f1ed92
Merged `getAnchorPoint` method with its caller in IdenticalPointsExce…
dmccoystephenson Apr 3, 2025
b915849
Removed extraneous `getAnchorPoint` method in TimGenerationHelper class
dmccoystephenson Apr 3, 2025
6d98a31
Removed extraneous `getAnchorPoint` method in WydotTimBaseController …
dmccoystephenson Apr 3, 2025
1247abe
Update notUsed field naming to doNotUse
mwodahl Jan 10, 2025
0c40793
Update x/y pos, elevation, width fields to comply with J2735 2024
mwodahl Jan 10, 2025
07e27c6
Update field names in cv-data-service-library test resources
mwodahl Jan 10, 2025
f9ed12a
Update logger-kafka-consumer testing resource field names
mwodahl Jan 10, 2025
bea2c61
Update sample data field names for J2735 2024
mwodahl Jan 10, 2025
1781fe0
Update version from 1.4.0-SNAPSHOT to 2.0.0
mwodahl Jan 10, 2025
d3c6e99
Uncomment local-deployment services
mwodahl Jan 10, 2025
f68d73c
Remove DOCKER_HOST_IP from CONFIG_ODE_URL
mwodahl Jan 10, 2025
b2128e0
Update jpo-ode packages to use latest release
mwodahl Jan 30, 2025
e13a73f
Update doNotUse values
mwodahl Jan 31, 2025
df04faf
Extract UpdateTimModel set properties into a new method, update TimUp…
mwodahl Mar 7, 2025
63a7a56
Update ode tags to 2025-q1
mwodahl Mar 7, 2025
6fc6e48
Remove unnecessary doNotUse references
mwodahl Mar 12, 2025
0a6b561
Add additional ODE env vars to local-deployment docker-compose.yml
mwodahl Mar 27, 2025
e0ada54
Remove equals sign from ode env var
mwodahl Mar 27, 2025
e7ead44
Update direction calculation, convertTmcTimTopicToJson methods to han…
mwodahl Mar 13, 2025
35e3873
Remove unused imports
mwodahl Mar 13, 2025
e163ea2
Update construction test data to match OdeTimJson new format
mwodahl Mar 13, 2025
b680d8c
Updating parking test data to match updated OdeTimJson format
mwodahl Mar 13, 2025
48c8ba1
Update VSL testing data to match OdeTimJson new format
mwodahl Mar 13, 2025
e7cb21e
Update odeTim testing files to match OdeTimJson new format
mwodahl Mar 13, 2025
f2f8de6
Remove unnecessary test from TimDataConverterTest
mwodahl Mar 13, 2025
bd91ded
Update getRegion to use StringBuilder, parseBoolean
mwodahl Apr 2, 2025
b0842c9
Improved frame type value resolution in `ActiveTimController` to defa…
dmccoystephenson Apr 3, 2025
0ddb702
Merge pull request #47 from Trihydro/fix/handle-frame-type-value-fail…
dmccoystephenson Apr 4, 2025
e89fc46
Update README to use placeholder versions for jar files
dmccoystephenson Apr 4, 2025
efc923f
Merge branch 'git/merge-ode-2025-q1-compatibility-changes-from-cdot-f…
dmccoystephenson Apr 4, 2025
cb7a9b6
Modified `DbInteractions.validateDbConfig` to return early if dataSou…
dmccoystephenson Apr 4, 2025
6411863
Merge branch 'logs/reduce-database-record-log-volume' into logs/reduc…
dmccoystephenson Apr 4, 2025
397083c
Refine logging levels in TimService.java
dmccoystephenson Apr 4, 2025
861e83b
Merge remote-tracking branch 'origin/main' into git/pull-mismatchedin…
dmccoystephenson Apr 4, 2025
ff08cac
Merge pull request #45 from Trihydro/main
mcook42 Apr 7, 2025
0da0de1
Merge pull request #41 from Trihydro/fix/update-identical-points-dete…
mcook42 Apr 7, 2025
72894df
Merge pull request #39 from Trihydro/git/pull-mismatchedinputexceptio…
mcook42 Apr 7, 2025
2ac5b80
Merge branch 'dev' into feature/support-gvw-restriction-through-incid…
dmccoystephenson Apr 7, 2025
4375f68
Merge pull request #37 from Trihydro/logs/reduce-database-record-log-…
dmccoystephenson Apr 7, 2025
1ecbbab
Merge branch 'dev' into logs/reduce-logger-kafka-consumer-log-volume
dmccoystephenson Apr 7, 2025
1574877
Merge branch 'dev' into config/update-tim-refresh-interval
dmccoystephenson Apr 7, 2025
b5d237e
Merge branch 'dev' into neo4j/remove-tracked-database-and-docker-service
dmccoystephenson Apr 7, 2025
c27707d
Merge branch 'dev' into git/merge-ode-2025-q1-compatibility-changes-f…
dmccoystephenson Apr 7, 2025
5bbc3fd
Merge branch 'main' into fix/recover-from-identical-points-exception
dmccoystephenson Apr 7, 2025
479fef2
Merge branch 'dev' into git/pull-batch-processing-fix-from-azure
dmccoystephenson Apr 7, 2025
62a5dc6
Added note on GMT to sample.env
dmccoystephenson Apr 7, 2025
33d771a
Merge pull request #36 from Trihydro/config/update-tim-refresh-interval
dmccoystephenson Apr 7, 2025
1bdde7e
Merge branch 'dev' into neo4j/remove-tracked-database-and-docker-service
dmccoystephenson Apr 7, 2025
5b1f236
Merge pull request #44 from Trihydro/neo4j/remove-tracked-database-an…
dmccoystephenson Apr 7, 2025
4f6be22
Merge branch 'dev' into logs/reduce-logger-kafka-consumer-log-volume
dmccoystephenson Apr 7, 2025
8288a57
Merge branch 'dev' into git/pull-batch-processing-fix-from-azure
dmccoystephenson Apr 7, 2025
76740df
Merge branch 'dev' into git/merge-ode-2025-q1-compatibility-changes-f…
dmccoystephenson Apr 7, 2025
9d75305
Merge branch 'dev' into feature/support-gvw-restriction-through-incid…
dmccoystephenson Apr 7, 2025
0276c06
Renamed `setPropertiesForActiveTim` to `buildTimUpdateModelFromResult…
dmccoystephenson Apr 7, 2025
f622ef2
Switched to using the Slf4j logger
dmccoystephenson Apr 7, 2025
4c16bf1
Simplified logic in JsonToJavaConverter class
dmccoystephenson Apr 7, 2025
9b2d6e0
Simplify method name in IdenticalPointsExceptionHandler class
dmccoystephenson Apr 7, 2025
dd37514
Update references to method in IdenticalPointsExceptionHandler class
dmccoystephenson Apr 7, 2025
7c79e03
Merge pull request #42 from Trihydro/fix/recover-from-identical-point…
dmccoystephenson Apr 7, 2025
0831c0f
Use logger instead of printing stack trace directly
dmccoystephenson Apr 7, 2025
fe93cfa
Merge pull request #40 from Trihydro/git/pull-batch-processing-fix-fr…
dmccoystephenson Apr 7, 2025
4c4afc4
Merge pull request #46 from Trihydro/git/merge-ode-2025-q1-compatibil…
dmccoystephenson Apr 8, 2025
a2919fb
Merge remote-tracking branch 'origin/main' into release/v2.0
dmccoystephenson Apr 8, 2025
eb19be1
Add tests for getMsgCnt and update its access modifier
dmccoystephenson Apr 8, 2025
4caa5ce
Fix increment logic for msgCnt in TimGenerationHelper
dmccoystephenson Apr 8, 2025
15a827b
Refactor method name for clarity in message count handling.
dmccoystephenson Apr 8, 2025
cdd2cb6
Merge pull request #32 from Trihydro/fix/prevent-logging-constraint-v…
dmccoystephenson Apr 8, 2025
8ee29e3
Merge remote-tracking branch 'origin/dev' into logs/reduce-logger-kaf…
dmccoystephenson Apr 8, 2025
78e7282
Merge pull request #38 from Trihydro/logs/reduce-logger-kafka-consume…
mcook42 Apr 8, 2025
2da7b0a
Update message count handling logic to modify passed value
dmccoystephenson Apr 8, 2025
919ebd1
Merge pull request #50 from Trihydro/fix/incorrect-message-count-incr…
mcook42 Apr 8, 2025
87ed541
Merge branch 'main' into sync-dev-with-main-4-8-2025
dmccoystephenson Apr 8, 2025
013c8ed
Merge branch 'dev' into release/v2.0
dmccoystephenson Apr 8, 2025
690acca
Merge branch 'main' into release/v2.0
dmccoystephenson Apr 8, 2025
9c5b7e7
Merge pull request #51 from Trihydro/sync-dev-with-main-4-8-2025
dmccoystephenson Apr 9, 2025
f435655
Merge branch 'dev' into release/v2.0
dmccoystephenson Apr 9, 2025
78b970d
Merge branch 'dev' into feature/support-gvw-restriction-through-incid…
dmccoystephenson Apr 9, 2025
d64bb9f
Added warn log statement for when 'itis' or 'text' not found in item …
dmccoystephenson Apr 9, 2025
6f3fba5
Added another warn log statement for when 'itis' or 'text' not found …
dmccoystephenson Apr 9, 2025
e0c5c74
Set default frameType to 'advisory' when missing in JSON.
dmccoystephenson Apr 9, 2025
4921818
Replaced usages of `System.out` with slf4j logging in JsonToJavaConve…
dmccoystephenson Apr 9, 2025
8c912f4
Refactor: remove unused conversion methods and imports
dmccoystephenson Apr 9, 2025
bdb6408
Make ObjectMapper instance final in JsonToJavaConverter
dmccoystephenson Apr 9, 2025
a9aa1ec
Refactor TIM test data handling with external JSON file
dmccoystephenson Apr 9, 2025
13adeb1
Set ACM_LOG_LEVEL via environment variable for local deployment
dmccoystephenson Apr 9, 2025
3a4fe48
Merge pull request #34 from Trihydro/feature/support-gvw-restriction-…
dmccoystephenson Apr 10, 2025
ed575b4
Merge remote-tracking branch 'origin/dev' into pr/addressing-comments…
dmccoystephenson Apr 10, 2025
9a5970f
Merge remote-tracking branch 'origin/dev' into release/v2.0
dmccoystephenson Apr 10, 2025
98992ab
Merge branch 'release/v2.0' into pr/addressing-comments-for-release-2.0
dmccoystephenson Apr 10, 2025
a035a84
Merge pull request #52 from Trihydro/pr/addressing-comments-for-relea…
payneBrandon Apr 18, 2025
23f789f
Merge pull request #49 from Trihydro/release/v2.0
dmccoystephenson Apr 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/java
{
"name": "WyoCV",
"name": "TIMM",
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
"image": "mcr.microsoft.com/devcontainers/java:1-21-bullseye",

Expand Down
10 changes: 5 additions & 5 deletions .devcontainer/post-create.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@
# repository for the devcontainer to build and run correctly
REPO_PATH=$(dirname $(dirname $(realpath $0)))
REPO_NAME=$(basename ${REPO_PATH})
WYOCV_RES_DIR=/workspaces/${REPO_NAME}/resources
TIMM_RES_DIR=/workspaces/${REPO_NAME}/resources

echo "WYOCV_RES_DIR: ${WYOCV_RES_DIR}"
echo "TIMM_RES_DIR: ${TIMM_RES_DIR}"

# Install UCP and Postgres to the local Maven repository
mvn install:install-file -Dfile="${WYOCV_RES_DIR}/ucp.jar" -DgroupId="com.oracle" -DartifactId=ucp -Dversion="12.2.0.1.0" -Dpackaging=jar
mvn install:install-file -Dfile="${WYOCV_RES_DIR}/postgresql-42.6.0.jar" -DgroupId="org.postgresql" -DartifactId=postgresql -Dversion="42.6.0" -Dpackaging=jar
mvn install:install-file -Dfile="${TIMM_RES_DIR}/ucp.jar" -DgroupId="com.oracle" -DartifactId=ucp -Dversion="12.2.0.1.0" -Dpackaging=jar
mvn install:install-file -Dfile="${TIMM_RES_DIR}/postgresql-42.6.0.jar" -DgroupId="org.postgresql" -DartifactId=postgresql -Dversion="42.6.0" -Dpackaging=jar

# Install python
apt update
Expand All @@ -19,4 +19,4 @@ apt install -y python3 python3-pip
ln -s "$(ls ~/.vscode-server/bin/* -dt | head -1)/node" /usr/local/bin

# Uncomment and modify the certificate name on the following line to import a certificate into the Java keystore
# keytool -import -alias resdf -storepass changeit -noprompt -cacerts -file ${WYOCV_RES_DIR}/<certificate-name>.cer
# keytool -import -alias resdf -storepass changeit -noprompt -cacerts -file ${TIMM_RES_DIR}/<certificate-name>.cer
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ Thumbs.db
**/failsafe-summary.xml

jars/*.jar
wyocv-jars-*.tar.gz
timm-jars-*.tar.gz

*.bkp

Expand Down
201 changes: 201 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
22 changes: 11 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# WyoCV Applications
# TIM Manager
![data-flow-diagram](/images/diagrams/data-flow-diagram.png)

The WyoCV Applications are a suite of tools for interacting with the Wyoming DOT ODE, with an emphasis on Traveler Information Messages (TIMs). The tool suite include modules for both sides of interaction, from the ode-wrapper used to simplify interactions with pushing TIMs, to the ode-data-logger used to subscribe to ODE Kafka topics and deposit data into a database. Each module within the project contains its own README file to help understand specific functionality.
The TIM Manager (TIMM) is a suite of tools for interacting with the Operational Data Environment (ODE), with an emphasis on Traveler Information Messages (TIMs). The tool suite include modules for both sides of interaction, from the ode-wrapper used to simplify interactions with pushing TIMs, to the ode-data-logger used to subscribe to ODE Kafka topics and deposit data into a database. Each module within the project contains its own README file to help understand specific functionality.

## Table of Contents
- [Useful Links](#useful-links)
Expand Down Expand Up @@ -46,9 +46,9 @@ These instructions will get you a copy of the project up and running on your loc
git clone https://github.com/Trihydro/TIM-Manager.git
```

2. Open the `wyocv` workspace in VS Code
2. Open the `timm` workspace in VS Code
```
code wyocv.code-workspace
code timm.code-workspace
```

3. Open the project in a development container
Expand Down Expand Up @@ -93,33 +93,33 @@ To deploy the suite, first build all modules using
```
mvn clean install
```
This will create the `target` folder under each module. From here, create a new folder structure to deploy using the `docker-compose.yml`, `.env`, and respective `.jar` file and `Dockerfile`. A basic example using the WyoCV applications as seen here follows:
This will create the `target` folder under each module. From here, create a new folder structure to deploy using the `docker-compose.yml`, `.env`, and respective `.jar` file and `Dockerfile`. A basic example using the TIMM applications as seen here follows:

```
.
├── cv-data-controller
│ ├── cv-data-controller-1.4.0-SNAPSHOT.jar
│ ├── cv-data-controller-x.x.x.jar
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion(non-blocking): use x.y.z for the version to follow semver guidance https://semver.org/

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've opened Trihydro#57 for this

│ ├── Dockerfile
├── cv-data-tasks
│ ├── cv-data-tasks-1.4.0-SNAPSHOT.jar
│ ├── cv-data-tasks-x.x.x.jar
│ ├── Dockerfile
├── docker-compose.yml
├── ode-data-logger
│ ├── Dockerfile
│ ├── ode-data-logger-1.4.0-SNAPSHOT.jar
│ ├── ode-data-logger-x.x.x.jar
├── ode-mongo-logger
│ ├── Dockerfile
│ ├── ode-mongo-logger-1.4.0-SNAPSHOT.jar
│ ├── ode-mongo-logger-x.x.x.jar
├── ode-wrapper
│ ├── Dockerfile
│ ├── ode-wrapper-1.4.0-SNAPSHOT.jar
│ ├── ode-wrapper-x.x.x.jar
├── ode-wrapper-docs
│ └── swagger-ui-master
│ ├── Dockerfile
│ ├── (swagger folder structure)
└── tim-refresh
├── Dockerfile
├── tim-refresh-1.4.0-SNAPSHOT.jar
├── tim-refresh-x.x.x.jar

```

Expand Down
4 changes: 2 additions & 2 deletions cert-expiration/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
FROM maven:3.8-eclipse-temurin-21-alpine

ADD . /home/wyocv/wyocv_applications/cert-expiration
ADD . /home/timm/timm_applications/cert-expiration

CMD java -jar /home/wyocv/wyocv_applications/cert-expiration/cert-expiration-1.4.0-SNAPSHOT.jar
CMD java -jar /home/timm/timm_applications/cert-expiration/cert-expiration-2.0.0.jar
8 changes: 4 additions & 4 deletions cert-expiration/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Traveler Information Messages (TIMs) are signed by a Hardware Security Module (H
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See [deployment](#deployment) for notes on how to deploy the project on a live system.

### Docker
The following instructions are intended to be executed from the root directory of the WyoCV project:
The following instructions are intended to be executed from the root directory of the TIMM project:
1. Reopen the project in the provided dev container by clicking on the blue button in the bottom left corner of the window and selecting "Reopen in Container"
1. Open a terminal in the dev container by clicking on the `Terminal` menu and selecting `New Terminal`
1. Compile the project by running the following command:
Expand Down Expand Up @@ -49,7 +49,7 @@ The following instructions are intended to be executed from the root directory o

1. Update the .env file with the appropriate values. See the [Configuration](#configuration) section for more information.
1. Verify that Kafka is running and accessible at the address specified in the .env file.
1. If running integration tests, verify that the CV Data Controller, WyoCV database & ODE service is running and accessible at the address specified in the .env file.
1. If running integration tests, verify that the CV Data Controller, TIMM database & ODE service is running and accessible at the address specified in the .env file.
1. Build & run the docker container with the following command:
```
docker compose up -d --build cert-expiration
Expand All @@ -75,11 +75,11 @@ To run the application using the provided launch configuration:
1. Click on the `Run and Debug` button at the top of the `Run` tab
1. Select the `Cert Expiration (Launch)` configuration from the dropdown menu
1. Verify that Kafka is running and accessible at the address specified in the .env file.
1. If running integration tests, verify that the CV Data Controller, WyoCV database & ODE service is running and accessible at the address specified in the .env file.
1. If running integration tests, verify that the CV Data Controller, TIMM database & ODE service is running and accessible at the address specified in the .env file.
1. Click the green play button to start the application

## Deployment
This application is deployed using Docker, and is part of the larger WyoCVApplication suite. The associated Dockerfile is configured for the development ODE environment. See the main [README](../README.md) for the project and associated [docker-compose](../docker-compose.yml), and [sample.env](../sample.env) file for further deployment configurations.
This application is deployed using Docker, and is part of the larger TIM Manager. The associated Dockerfile is configured for the development ODE environment. See the main [README](../README.md) for the project and associated [docker-compose](../docker-compose.yml), and [sample.env](../sample.env) file for further deployment configurations.

## Configuration
**SOME OF THESE PROPERTIES ARE SENSITIVE. DO NOT PUBLISH THEM TO VERSION CONTROL**
Expand Down
Loading