1 /**
2 This file is part of GoldenGate Project (named also GoldenGate or GG).
3
4 Copyright 2009, Frederic Bregier, and individual contributors by the @author
5 tags. See the COPYRIGHT.txt in the distribution for a full listing of
6 individual contributors.
7
8 All GoldenGate Project is free software: you can redistribute it and/or
9 modify it under the terms of the GNU General Public License as published
10 by the Free Software Foundation, either version 3 of the License, or
11 (at your option) any later version.
12
13 GoldenGate is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
17
18 You should have received a copy of the GNU General Public License
19 along with GoldenGate . If not, see <http://www.gnu.org/licenses/>.
20 */
21 package goldengate.common.file;
22
23 /**
24 * Interface for SessionInterface
25 *
26 * @author Frederic Bregier
27 *
28 */
29 public interface SessionInterface {
30 /**
31 * @return the DirInterface
32 */
33 public DirInterface getDir();
34
35 /**
36 * @return the AuthInterface
37 */
38 public AuthInterface getAuth();
39
40 /**
41 * Clean the session
42 *
43 */
44 public void clear();
45
46 /**
47 *
48 * @return the BlockSize to use in FileInterface operations
49 */
50 public int getBlockSize();
51
52 /**
53 *
54 * @return the configuration
55 */
56 public FileParameterInterface getFileParameter();
57
58 /**
59 *
60 * @return the Restart
61 */
62 public Restart getRestart();
63
64 /**
65 *
66 * @return the extension to give to Unique File (STOU)
67 */
68 public String getUniqueExtension();
69 }