01: package net.sourceforge.squirrel_sql.fw.sql;
02:
03: /*
04: * Copyright (C) 2003 Colin Bell
05: * colbell@users.sourceforge.net
06: *
07: * This library is free software; you can redistribute it and/or
08: * modify it under the terms of the GNU Lesser General Public
09: * License as published by the Free Software Foundation; either
10: * version 2.1 of the License, or (at your option) 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 USA
20: */
21: import java.beans.IntrospectionException;
22: import java.beans.PropertyDescriptor;
23:
24: /**
25: * This is the <CODE>BeanInfo</CODE> class for <CODE>ForeignKeyInfo</CODE>.
26: *
27: * @author <A HREF="mailto:colbell@users.sourceforge.net">Colin Bell</A>
28: */
29: public class ForeignKeyInfoBeanInfo extends DatabaseObjectInfoBeanInfo
30: implements ForeignKeyInfo.IPropertyNames {
31: private static PropertyDescriptor[] s_dscrs;
32:
33: public ForeignKeyInfoBeanInfo() throws IntrospectionException {
34: super ();
35: synchronized (getClass()) {
36: if (s_dscrs == null) {
37: PropertyDescriptor[] sub = new PropertyDescriptor[2];
38: final Class<ForeignKeyInfo> clazz = ForeignKeyInfo.class;
39: sub[0] = new PropertyDescriptor(PK_CATALOG_NAME, clazz,
40: "getPrimaryKeyCatalogName", null);
41: sub[1] = new PropertyDescriptor(PK_SCHEMA_NAME, clazz,
42: "getPrimaryKeySchemaName", null);
43: PropertyDescriptor[] base = super
44: .getPropertyDescriptors();
45: if (base == null) {
46: base = new PropertyDescriptor[0];
47: }
48: s_dscrs = new PropertyDescriptor[base.length
49: + sub.length];
50: System.arraycopy(base, 0, s_dscrs, 0, base.length);
51: System.arraycopy(sub, 0, s_dscrs, base.length,
52: sub.length);
53: }
54: }
55: }
56:
57: public PropertyDescriptor[] getPropertyDescriptors() {
58: return s_dscrs;
59: }
60: }
|