View Javadoc
1   package fr.ifremer.quadrige3.synchro.service;
2   
3   /*-
4    * #%L
5    * Quadrige3 Core :: Quadrige3 Synchro Core
6    * $Id:$
7    * $HeadURL:$
8    * %%
9    * Copyright (C) 2017 Ifremer
10   * %%
11   * This program is free software: you can redistribute it and/or modify
12   * it under the terms of the GNU Affero General Public License as published by
13   * the Free Software Foundation, either version 3 of the License, or
14   * (at your option) any later version.
15   * 
16   * This program is distributed in the hope that it will be useful,
17   * but WITHOUT ANY WARRANTY; without even the implied warranty of
18   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19   * GNU General Public License for more details.
20   * 
21   * You should have received a copy of the GNU Affero General Public License
22   * along with this program.  If not, see <http://www.gnu.org/licenses/>.
23   * #L%
24   */
25  
26  /**
27   * <p>
28   * SynchroDirection class.
29   * </p>
30   * 
31   */
32  public enum SynchroDirection {
33  
34  	// Directions used with a synchro-server (2 phases synchro)
35  	IMPORT_SERVER2TEMP,
36  	IMPORT_TEMP2LOCAL,
37  	EXPORT_LOCAL2TEMP,
38  	EXPORT_TEMP2SERVER,
39  
40  	// Directions used with direct connection between local and server database
41  	IMPORT_NO_TEMP,
42  	EXPORT_NO_TEMP,
43  
44  	// Directions used for file import/export
45  	IMPORT_FILE2LOCAL,
46  	EXPORT_LOCAL2FILE;
47  
48  	/**
49  	 * <p>
50  	 * isExport.
51  	 * </p>
52  	 * 
53  	 * @return a boolean.
54  	 */
55  	public boolean isExport() {
56  		return this == EXPORT_LOCAL2TEMP
57  				|| this == EXPORT_TEMP2SERVER
58  				|| this == EXPORT_NO_TEMP;
59  	}
60  
61  	/**
62  	 * <p>
63  	 * isImport.
64  	 * </p>
65  	 * 
66  	 * @return a boolean.
67  	 */
68  	public boolean isImport() {
69  		return !isExport();
70  	}
71  }