Example #1
0
  // 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;
    }
  }