01: package net.sourceforge.squirrel_sql.client.gui.db;
02:
03: /*
04: * Copyright (C) 2001-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:
22: import net.sourceforge.squirrel_sql.fw.sql.ISQLAlias;
23:
24: import java.beans.IntrospectionException;
25: import java.beans.PropertyDescriptor;
26: import java.beans.SimpleBeanInfo;
27:
28: /**
29: * This is the <CODE>BeanInfo</CODE> class for <CODE>SQLAlias</CODE>.
30: *
31: * @author <A HREF="mailto:colbell@users.sourceforge.net">Colin Bell</A>
32: */
33: public class SQLAliasBeanInfo extends SimpleBeanInfo {
34: /**
35: * If more than one thread is constructing, volatile tells them to check an
36: * otherwise cached value.
37: */
38: private static volatile PropertyDescriptor[] s_desc;
39: private static Class<SQLAlias> CLAZZ = net.sourceforge.squirrel_sql.client.gui.db.SQLAlias.class;
40:
41: private interface IPropNames extends ISQLAlias.IPropertyNames {
42: // Empty body.
43: }
44:
45: public SQLAliasBeanInfo() throws IntrospectionException {
46: super ();
47: if (s_desc == null) {
48: s_desc = new PropertyDescriptor[] {
49: new PropertyDescriptor(IPropNames.ID, CLAZZ,
50: "getIdentifier", "setIdentifier"),
51: new PropertyDescriptor(IPropNames.NAME, CLAZZ,
52: "getName", "setName"),
53: new PropertyDescriptor(IPropNames.URL, CLAZZ,
54: "getUrl", "setUrl"),
55: new PropertyDescriptor(IPropNames.USER_NAME, CLAZZ,
56: "getUserName", "setUserName"),
57: new PropertyDescriptor(IPropNames.DRIVER, CLAZZ,
58: "getDriverIdentifier",
59: "setDriverIdentifier"),
60: new PropertyDescriptor(
61: IPropNames.USE_DRIVER_PROPERTIES, CLAZZ,
62: "getUseDriverProperties",
63: "setUseDriverProperties"),
64: new PropertyDescriptor(
65: IPropNames.DRIVER_PROPERTIES, CLAZZ,
66: "getDriverPropertiesClone",
67: "setDriverProperties"),
68: new PropertyDescriptor(IPropNames.PASSWORD, CLAZZ,
69: "getPassword", "setPassword"),
70: new PropertyDescriptor(IPropNames.AUTO_LOGON,
71: CLAZZ, "isAutoLogon", "setAutoLogon"),
72: new PropertyDescriptor(
73: IPropNames.CONNECT_AT_STARTUP, CLAZZ,
74: "isConnectAtStartup", "setConnectAtStartup"),
75: new PropertyDescriptor(
76: IPropNames.SCHEMA_PROPERTIES, CLAZZ,
77: "getSchemaProperties",
78: "setSchemaProperties") };
79: }
80: }
81:
82: public PropertyDescriptor[] getPropertyDescriptors() {
83: return s_desc;
84: }
85: }
|