01: /*
02: * sqlc 1
03: * SQL Compiler
04: * Copyright (C) 2003 Hammurapi Group
05: *
06: * This program is free software; you can redistribute it and/or
07: * modify it under the terms of the GNU Lesser General Public
08: * License as published by the Free Software Foundation; either
09: * version 2 of the License, or (at your option) any later version.
10: *
11: * This program 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: * URL: http://www.hammurapi.biz/products/sqlc/index.html
21: * e-Mail: support@hammurapi.biz
22: */
23: package biz.hammurapi.sql.metadata;
24:
25: import java.io.Serializable;
26: import java.util.HashMap;
27: import java.util.Iterator;
28: import java.util.Map;
29:
30: import biz.hammurapi.util.VisitableBase;
31: import biz.hammurapi.util.Visitor;
32:
33: /**
34: * @author Pavel Vlasov
35: *
36: * @version $Revision: 1.1 $
37: */
38: public class Catalog extends VisitableBase implements Serializable {
39: private String name;
40: private Map schemas = new HashMap();
41:
42: public String getName() {
43: return name;
44: }
45:
46: /**
47: * @param name
48: */
49: Catalog(String name) {
50: super ();
51: this .name = name;
52: }
53:
54: Schema getSchema(String name) {
55: Schema ret = (Schema) schemas.get(name);
56: if (ret == null) {
57: ret = new Schema(this , name);
58: schemas.put(name, ret);
59: }
60: return ret;
61: }
62:
63: /**
64: * Comment for <code>serialVersionUID</code>
65: */
66: private static final long serialVersionUID = -7898815690928828929L;
67:
68: protected void acceptChildren(Visitor visitor) {
69: Iterator it = schemas.values().iterator();
70: while (it.hasNext()) {
71: ((Schema) it.next()).accept(visitor);
72: }
73: }
74: }
|