KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > jorm > mapper > fos > generator > FosMappingMOP


1 /**
2  * JORM: an implementation of a generic mapping system for persistent Java
3  * objects. Two mapping are supported: to RDBMS and to binary files.
4  * Copyright (C) 2001-2003 France Telecom R&D - INRIA
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19  *
20  * Contact: jorm-team@objectweb.org
21  *
22  */

23
24 package org.objectweb.jorm.mapper.fos.generator;
25
26 import org.objectweb.jorm.generator.api.MOP;
27 import org.objectweb.jorm.generator.lib.CommonGenerator;
28 import org.objectweb.jorm.util.api.Loggable;
29 import org.objectweb.jorm.mapper.fos.metainfo.FosClassMapping;
30 import org.objectweb.jorm.metainfo.api.Class;
31 import org.objectweb.jorm.api.PException;
32 import org.objectweb.util.monolog.api.Logger;
33 import org.objectweb.util.monolog.api.LoggerFactory;
34 import org.apache.velocity.context.Context;
35
36 /**
37  * @author P. Dechamboux
38  */

39 public class FosMappingMOP implements MOP, Loggable {
40     protected Logger logger = null;
41     protected LoggerFactory loggerFactory = null;
42
43     public void initContext(Context ctx, Class JavaDoc clazz,
44                             String JavaDoc projectName,
45                             String JavaDoc mapperName) throws PException {
46         ctx.put("mappingMOPTools", this);
47     }
48
49     public String JavaDoc[] getTemplateLibraries() {
50         String JavaDoc[] libs = {CommonGenerator.MAPPER_TEMPLATE_DIR + "fos/generator/FosMapping.vm"};
51         return libs;
52     }
53
54     public String JavaDoc getDirName(FosClassMapping m, String JavaDoc cn) {
55         if (m.getDirName() == null) {
56             return cn;
57         }
58         return "\"" + m.getDirName() + "\"";
59     }
60     // IMPLEMENTATION OF METHDOS FROM THE Loggable INTERFACE
61

62     public Logger getLogger() {
63         return logger;
64     }
65
66     public LoggerFactory getLoggerFactory() {
67         return loggerFactory;
68     }
69
70     public void setLogger(Logger l) {
71         logger = l;
72     }
73
74     public void setLoggerFactory(LoggerFactory lf) {
75         loggerFactory = lf;
76         if (loggerFactory != null && logger == null)
77             loggerFactory.getLogger(getClass().getName());
78     }
79 }
80
Popular Tags