// CJL-IB6 changed reference to InterClient 2.0 public Object getObjectInstance( Object refObj, javax.naming.Name name, javax.naming.Context nameCtx, java.util.Hashtable env) throws Exception { javax.naming.Reference ref = (javax.naming.Reference) refObj; if (ref.getClassName().equals("interbase.interclient.DataSource")) { DataSource sds = new DataSource(); // standard properties sds.setDatabaseName((String) ref.get("databaseName").getContent()); sds.setDataSourceName((String) ref.get("dataSourceName").getContent()); sds.setDescription((String) ref.get("description").getContent()); sds.setNetworkProtocol((String) ref.get("networkProtocol").getContent()); sds.setPassword((String) ref.get("password").getContent()); sds.setPortNumber(Integer.parseInt((String) ref.get("portNumber").getContent())); sds.setRoleName((String) ref.get("roleName").getContent()); sds.setServerName((String) ref.get("serverName").getContent()); sds.setUser((String) ref.get("user").getContent()); // non-standard properties sds.setCharSet((String) ref.get("charSet").getContent()); sds.setSuggestedCachePages( Integer.parseInt((String) ref.get("suggestedCachePages").getContent())); sds.setSweepOnConnect( new Boolean((String) ref.get("sweepOnConnect").getContent()).booleanValue()); sds.setServerManagerHost((String) ref.get("serverManagerHost").getContent()); return sds; } else { return null; } }