1 /*
2 * Created on Oct 28, 2007 by scytacki
3 *
4 * Copyright (c) 2007 Concord Consortium.
5 *
6 * This software is distributed under the GNU Lesser General Public License, v2.
7 *
8 * Permission is hereby granted, without written agreement and without license
9 * or royalty fees, to use, copy, modify, and distribute this software and its
10 * documentation for any purpose, provided that the above copyright notice and
11 * the following two paragraphs appear in all copies of this software.
12 *
13 * REGENTS SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
14 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
15 * PURPOSE. THE SOFTWAREAND ACCOMPANYING DOCUMENTATION, IF ANY, PROVIDED
16 * HEREUNDER IS PROVIDED "AS IS". REGENTS HAS NO OBLIGATION TO PROVIDE
17 * MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
18 *
19 * IN NO EVENT SHALL REGENTS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
20 * SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS,
21 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
22 * REGENTS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23 */
24
25 package net.sf.sail.core.curnit;
26
27 import java.awt.Component;
28 import java.io.File;
29 import java.io.FileNotFoundException;
30
31 import net.sf.sail.core.beans.SessionContext;
32 import net.sf.sail.core.uuid.CurnitUuid;
33
34 /**
35 * @author scytacki
36 *
37 */
38 public interface ICurnit
39 {
40 /**
41 * This will be called before getRootBean. In the traditional curnit this
42 * does the assembly.
43 */
44 public void initialize();
45
46 /**
47 * This bean will added to the SessionContext
48 *
49 * @return
50 */
51 public Object getRootBean();
52
53 /**
54 * @return
55 */
56 public CurnitUuid getCurnitId();
57
58 /**
59 * Provides interface for saving a curnit
60 *
61 * @param file - file to save
62 * @throws FileNotFoundException
63 * @throws Exception
64 */
65 public void saveCurnit(File file) throws FileNotFoundException,
66 Exception;
67
68 /**
69 * @param dataService
70 */
71 public void setSessionContext(SessionContext sessionContext);
72 }