/** * for future data * @param mergeDiffInfo diff * @return change summary */ default S createFutureChangeSummary(MergeDiffInfo<R> mergeDiffInfo){ return createChangeSummary(mergeDiffInfo); } }
@Override public ScheduledDataMetadata<S> addFutureFactory(R futureFactory, NewScheduledDataMetadata futureFactoryMetadata, String user, String comment, MergeDiffInfo<R> mergeDiff) { final ScheduledDataMetadata<S> storedFactoryMetadata = new ScheduledDataMetadata<>( LocalDateTime.now(), UUID.randomUUID().toString(), user, comment, futureFactoryMetadata.newDataMetadata.baseVersionId, futureFactoryMetadata.newDataMetadata.dataModelVersion, changeSummaryCreator.createFutureChangeSummary(mergeDiff), futureFactoryMetadata.scheduled ); final DataAndScheduledMetadata<R,S> updateData = new DataAndScheduledMetadata<>(futureFactory, storedFactoryMetadata); future.put(updateData.metadata.id, updateData); return storedFactoryMetadata; }
@Override public void updateCurrentFactory(DataAndNewMetadata<R> update, String user, String comment, MergeDiffInfo<R> mergeDiff) { final StoredDataMetadata<S> storedDataMetadata = new StoredDataMetadata<>( LocalDateTime.now(), UUID.randomUUID().toString(), user, comment, update.metadata.baseVersionId, update.metadata.dataModelVersion, changeSummaryCreator.createChangeSummary(mergeDiff)); final DataAndStoredMetadata<R,S> updateData = new DataAndStoredMetadata<>(update.root, storedDataMetadata); storage.put(updateData.metadata.id, updateData); currentFactoryStorageId =updateData.metadata.id; }
@Override public void updateCurrentFactory(DataAndNewMetadata<R> update, String user, String comment, MergeDiffInfo<R> mergeDiff) { S changeSummary = null; if (mergeDiff!=null){ changeSummary=changeSummaryCreator.createChangeSummary(mergeDiff); } final StoredDataMetadata<S> storedDataMetadata = new StoredDataMetadata<>( LocalDateTime.now(), UUID.randomUUID().toString(), user, comment, update.metadata.baseVersionId, update.metadata.dataModelVersion, changeSummary ); final DataAndStoredMetadata<R,S> updateData = new DataAndStoredMetadata<>(update.root, storedDataMetadata); writeFile(currentFactoryPath, dataSerialisationManager.write(updateData.root)); writeFile(currentFactoryPathMetadata, dataSerialisationManager.writeStorageMetadata(updateData.metadata)); fileSystemFactoryStorageHistory.updateHistory(updateData.metadata,updateData.root); }