3 * Copyright (C) 2009 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
7 * The contents of this file are subject to the Mozilla Public License Version 1.1
8 * See LICENSE.TXT at the top of this package for the full license terms.
10 package eu
.etaxonomy
.cdm
.database
.update
;
12 import eu
.etaxonomy
.cdm
.common
.monitor
.IProgressMonitor
;
13 import eu
.etaxonomy
.cdm
.database
.ICdmDataSource
;
20 public interface ISchemaUpdater
extends IUpdater
<ISchemaUpdater
>{
23 * Invokes this CDM schema updater and updates the schema up to the current CDM
24 * schema version. Throws an exception if this updater's target version does
25 * not equal the current CDM schema version.
26 * @param datasource the datasource
27 * @param monitor the progress monitor and event listener
31 public boolean invoke(ICdmDataSource datasource
, IProgressMonitor monitor
) throws Exception
;
36 * Invokes this CDM schema updater and updates the schema up to the given
37 * target version. Throws an exception if this updaters target version does
38 * not equal the given target version.
39 * @param targetVersion
40 * @param datasource the datasource
41 * @param monitor the progress monitor and event listener
45 public boolean invoke(String targetVersion
, ICdmDataSource datasource
, IProgressMonitor monitor
) throws Exception
;
47 public String
getTargetVersion();