diff options
author | DylanB95EST <dylan.byrne@est.tech> | 2022-07-06 13:54:01 +0100 |
---|---|---|
committer | Dylan Byrne <dylan.byrne@est.tech> | 2022-07-07 15:20:04 +0000 |
commit | 520dc2cf66a6355217ee0cff7505f6bfd3621d44 (patch) | |
tree | f07aae9060e51968bbe0b6b936719be25171e6cd /cps-ncmp-service/src/main/java/org | |
parent | 8fd49182aa62b20a779b908f4d412bc85f0d6087 (diff) |
Define Initial Data Sync Enabled Flag and state
- Define the initial Data Sync Cache enabled through
configuration parameter
- Set the data sync enabled flag based on this
- And in turn define the initial sync state of the
Data Sync
Issue-ID: CPS-1119
Change-Id: I43bf03c79481291bf47c9b672f7bf408d789df61
Signed-off-by: DylanB95EST <dylan.byrne@est.tech>
Diffstat (limited to 'cps-ncmp-service/src/main/java/org')
-rw-r--r-- | cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java index 0330991fd6..f18d843f81 100644 --- a/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java +++ b/cps-ncmp-service/src/main/java/org/onap/cps/ncmp/api/inventory/sync/ModuleSyncWatchdog.java @@ -31,6 +31,7 @@ import org.onap.cps.ncmp.api.inventory.CompositeState; import org.onap.cps.ncmp.api.inventory.DataStoreSyncState; import org.onap.cps.ncmp.api.inventory.InventoryPersistence; import org.onap.cps.ncmp.api.inventory.LockReasonCategory; +import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @@ -45,6 +46,9 @@ public class ModuleSyncWatchdog { private final ModuleSyncService moduleSyncService; + @Value("${data-sync.cache.enabled:false}") + private boolean isGlobalDataSyncCacheEnabled; + /** * Execute Cm Handle poll which changes the cm handle state from 'ADVISED' to 'READY'. */ @@ -96,11 +100,9 @@ public class ModuleSyncWatchdog { private Consumer<CompositeState> setCompositeStateToReadyWithInitialDataStoreSyncState() { return compositeState -> { + compositeState.setDataSyncEnabled(isGlobalDataSyncCacheEnabled); compositeState.setCmHandleState(CmHandleState.READY); - final CompositeState.Operational operational = CompositeState.Operational.builder() - .dataStoreSyncState(DataStoreSyncState.UNSYNCHRONIZED) - .lastSyncTime(CompositeState.nowInSyncTimeFormat()) - .build(); + final CompositeState.Operational operational = getDataStoreSyncState(compositeState.getDataSyncEnabled()); final CompositeState.DataStores dataStores = CompositeState.DataStores.builder() .operationalDataStore(operational) .build(); @@ -116,4 +118,11 @@ public class ModuleSyncWatchdog { .details(oldLockReasonDetails).build(); compositeState.setLockReason(lockReason); } + + private CompositeState.Operational getDataStoreSyncState(final boolean dataSyncEnabled) { + final DataStoreSyncState dataStoreSyncState = dataSyncEnabled + ? DataStoreSyncState.UNSYNCHRONIZED : DataStoreSyncState.NONE_REQUESTED; + return CompositeState.Operational.builder().dataStoreSyncState(dataStoreSyncState).build(); + } + } |