/* * Copyright (C) 2006-2016 DLR, Germany * * All rights reserved * * http://www.rcenvironment.de/ */ package de.rcenvironment.core.component.update.api; import java.io.IOException; import java.util.List; /** * Is responsible for persistent component descriptions updates. * * @author Doreen Seider */ public interface DistributedPersistentComponentDescriptionUpdateService { /** * @param descriptions {@link PersistentComponentDescription}s to check * @param silent if dialog shouldn't pop up * @return logically concatenated {@link PersistentDescriptionFormatVersion} an update must be performed for */ int getFormatVersionsAffectedByUpdate(List<PersistentComponentDescription> descriptions, boolean silent); /** * Performs updates for all given {@link PersistentComponentDescription}s (if needed). * @param formatVersion {@link PersistentDescriptionFormatVersion} the update must be performed for * @param descriptions given {@link PersistentComponentDescription}s to possibly update * @param silent if dialog shouldn't pop up * @return updated {@link PersistentComponentDescription}s * @throws IOException on parsing errors */ List<PersistentComponentDescription> performComponentDescriptionUpdates(int formatVersion, List<PersistentComponentDescription> descriptions, boolean silent) throws IOException; }