View Javadoc

1   /*
2    * SymmetricDS is an open source database synchronization solution.
3    *   
4    * Copyright (C) Eric Long <erilong@users.sourceforge.net>,
5    *               Chris Henson <chenson42@users.sourceforge.net>
6    *
7    * This library is free software; you can redistribute it and/or
8    * modify it under the terms of the GNU Lesser General Public
9    * License as published by the Free Software Foundation; either
10   * version 3 of the License, or (at your option) any later version.
11   *
12   * This library is distributed in the hope that it will be useful,
13   * but WITHOUT ANY WARRANTY; without even the implied warranty of
14   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15   * Lesser General Public License for more details.
16   *
17   * You should have received a copy of the GNU Lesser General Public
18   * License along with this library; if not, see
19   * <http://www.gnu.org/licenses/>.
20   */
21  
22  package org.jumpmind.symmetric.load;
23  
24  import org.jumpmind.symmetric.ext.IExtensionPoint;
25  import org.springframework.transaction.annotation.Transactional;
26  
27  @Transactional
28  public interface IDataLoaderFilter extends IExtensionPoint {
29  
30      /***
31       * @return true if the row should be loaded. false if the filter has handled
32       *         the row and it should be ignored.
33       */
34      public boolean filterInsert(IDataLoaderContext context, String[] columnValues);
35  
36      /***
37       * @return true if the row should be loaded. false if the filter has handled
38       *         the row and it should be ignored.
39       */
40      public boolean filterUpdate(IDataLoaderContext context, String[] columnValues, String[] keyValues);
41  
42      /***
43       * @return true if the row should be loaded. false if the filter has handled
44       *         the row and it should be ignored.
45       */
46      public boolean filterDelete(IDataLoaderContext context, String[] keyValues);
47  
48  }