[
https://issues.apache.org/jira/browse/GOBBLIN-1678?focusedWorklogId=801516&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-801516
]
ASF GitHub Bot logged work on GOBBLIN-1678:
-------------------------------------------
Author: ASF GitHub Bot
Created on: 17/Aug/22 22:36
Start Date: 17/Aug/22 22:36
Worklog Time Spent: 10m
Work Description: Will-Lo commented on code in PR #3536:
URL: https://github.com/apache/gobblin/pull/3536#discussion_r948497350
##########
gobblin-service/src/main/java/org/apache/gobblin/service/monitoring/GitMonitoringService.java:
##########
@@ -234,20 +219,22 @@ void processGitConfigChanges() throws GitAPIException,
IOException {
*/
void processGitConfigChangesHelper(List<DiffEntry> changes) throws
IOException {
for (DiffEntry change : changes) {
- switch (change.getChangeType()) {
- case ADD:
- case MODIFY:
- addChange(change);
- break;
- case DELETE:
- removeChange(change);
- break;
- case RENAME:
- removeChange(change);
- addChange(change);
- break;
- default:
- throw new RuntimeException("Unsupported change type " +
change.getChangeType());
+ for (GitDiffListener listener: this.listeners) {
+ switch (change.getChangeType()) {
+ case ADD:
Review Comment:
Each listener implements addChange() and removeChange(). The monitors would
register their own listeners. When a change is detected in this function, then
the listeners would apply the change to their underlying data structures such
as the flowGraph for the GitFlowGraphMonitor, or the FlowCatalog for the
GitConfigMonitor (but currently not active and disabled by default).
Issue Time Tracking
-------------------
Worklog Id: (was: 801516)
Time Spent: 1h 50m (was: 1h 40m)
> Refactor GaaS Flowgraph Monitor to be extensible
> ------------------------------------------------
>
> Key: GOBBLIN-1678
> URL: https://issues.apache.org/jira/browse/GOBBLIN-1678
> Project: Apache Gobblin
> Issue Type: Improvement
> Reporter: William Lo
> Priority: Major
> Time Spent: 1h 50m
> Remaining Estimate: 0h
>
> To support new implementations of a flow graph monitor, which allows for live
> updating of a flowgraph, we should reuse as much implementation from the
> existing git flowgraph monitor as possible.
> The current flowgraph monitor has coupled logic to perform a lot of the
> adding node/edges which can be reused for a file based flowgraph.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)