KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > openccm > generator > java > core > api > JavaGenerator


1 /*====================================================================
2
3 OpenCCM: The Open CORBA Component Model Platform
4 Copyright (C) 2000-2004 INRIA & USTL - LIFL - GOAL
5 Contact: openccm@objectweb.org
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 2.1 of the License, or 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, write to the Free Software
19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20 USA
21
22 Initial developer(s): Christophe Demarey.
23 Contributor(s): ________________________________________.
24
25 ====================================================================*/

26
27 package org.objectweb.openccm.generator.java.core.api;
28
29 import org.objectweb.openccm.generator.java.ast.api.Repository;
30 import org.objectweb.openccm.generator.java.ast.api.InterfaceObject;
31 import java.util.List JavaDoc;
32
33
34 /**
35  * This is the Java generator interface.
36  *
37  * @author <a HREF="mailto:Christophe.Demarey@lifl.fr">Christophe Demarey</A>
38  */

39
40 public interface JavaGenerator
41          extends org.objectweb.openccm.generator.common.api.Generator
42 {
43     /**
44      * Initialize the generator.
45      *
46      * @param app_name - The application's name.
47      * @param templates - Templates files to use.
48      **/

49     public void
50     initialize( String JavaDoc app_name,
51                 List JavaDoc templates );
52
53     /**
54      * Generate java files from the repository.
55      *
56      * @param base_dir - The base directory where files will be generated.
57      **/

58     public void
59     generate(Repository rep, String JavaDoc base_dir);
60
61     /**
62      * Create the output file.
63      * This include creation of package directories if necessary.
64      *
65      * @param object - The class or interface to generate.
66      * @param id - An identifiant for this stream.
67      **/

68     public void
69     create_file(InterfaceObject object, String JavaDoc id);
70 }
71
72
Popular Tags