~ubuntu-branches/ubuntu/oneiric/mysql-connector-java/oneiric

« back to all changes in this revision

Viewing changes to src/com/mysql/jdbc/jdbc2/optional/MysqlDataSourceFactory.java

  • Committer: Bazaar Package Importer
  • Author(s): Marcus Better
  • Date: 2006-12-29 13:29:04 UTC
  • mfrom: (1.1.3 upstream) (3.1.1 etch)
  • Revision ID: james.westby@ubuntu.com-20061229132904-uj7edcmwgtuxh6li
Tags: 5.0.4+dfsg-2
Corrected the symlink `/usr/share/java/mysql.jar'. Thanks to Javier
Kohen. (Closes: #404858)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*
2
 
 Copyright (C) 2002-2004 MySQL AB
 
2
 Copyright (C) 2002-2006 MySQL AB
3
3
 
4
4
 This program is free software; you can redistribute it and/or modify
5
5
 it under the terms of version 2 of the GNU General Public License as 
28
28
 
29
29
import javax.naming.Context;
30
30
import javax.naming.Name;
 
31
import javax.naming.RefAddr;
31
32
import javax.naming.Reference;
32
33
import javax.naming.spi.ObjectFactory;
33
34
 
84
85
 
85
86
                        int portNumber = 3306;
86
87
 
87
 
                        String portNumberAsString = (String) ref.get("port").getContent();
88
 
 
 
88
                        String portNumberAsString = nullSafeRefAddrStringGet("port", ref);
 
89
                        
89
90
                        if (portNumberAsString != null) {
90
91
                                portNumber = Integer.parseInt(portNumberAsString);
91
92
                        }
92
93
 
93
94
                        dataSource.setPort(portNumber);
94
 
 
95
 
                        String user = (String) ref.get(
96
 
                                        NonRegisteringDriver.USER_PROPERTY_KEY).getContent();
 
95
                        
 
96
                        String user = nullSafeRefAddrStringGet(NonRegisteringDriver.USER_PROPERTY_KEY, ref);
97
97
 
98
98
                        if (user != null) {
99
99
                                dataSource.setUser(user);
100
100
                        }
101
101
 
102
 
                        String password = (String) ref.get(
103
 
                                        NonRegisteringDriver.PASSWORD_PROPERTY_KEY).getContent();
 
102
                        String password = nullSafeRefAddrStringGet(NonRegisteringDriver.PASSWORD_PROPERTY_KEY, ref);
104
103
 
105
104
                        if (password != null) {
106
105
                                dataSource.setPassword(password);
107
106
                        }
108
107
 
109
 
                        String serverName = (String) ref.get("serverName").getContent();
 
108
                        String serverName = nullSafeRefAddrStringGet("serverName", ref);
110
109
 
111
110
                        if (serverName != null) {
112
111
                                dataSource.setServerName(serverName);
113
112
                        }
114
113
 
115
 
                        String databaseName = (String) ref.get("databaseName").getContent();
 
114
                        String databaseName = nullSafeRefAddrStringGet("databaseName", ref);
116
115
 
117
116
                        if (databaseName != null) {
118
117
                                dataSource.setDatabaseName(databaseName);
119
118
                        }
120
119
 
121
 
                        String explicitUrlAsString = (String) ref.get("explicitUrl")
122
 
                                        .getContent();
 
120
                        String explicitUrlAsString = nullSafeRefAddrStringGet("explicitUrl", ref);
123
121
 
124
122
                        if (explicitUrlAsString != null) {
125
123
                                if (Boolean.valueOf(explicitUrlAsString).booleanValue()) {
126
 
                                        dataSource.setUrl((String) ref.get("url").getContent());
 
124
                                        dataSource.setUrl(nullSafeRefAddrStringGet("url", ref));
127
125
                                }
128
126
                        }
129
127
 
135
133
                // We can't create an instance of the reference
136
134
                return null;
137
135
        }
 
136
        
 
137
        private String nullSafeRefAddrStringGet(String referenceName, Reference ref) {
 
138
                RefAddr refAddr = ref.get(referenceName);
 
139
                
 
140
                String asString = refAddr != null ? (String)refAddr.getContent() : null;
 
141
                
 
142
                return asString;
 
143
        }
138
144
}