1 21 22 package uk.org.primrose.vendor.resin.jndi; 23 24 import java.util.ArrayList ; 25 import javax.naming.Reference ; 26 import javax.naming.StringRefAddr ; 27 import uk.org.primrose.pool.datasource.MasterPoolDataSourceFactory; 28 29 public class BindPrimroseFactory { 30 private String poolConfigFile = null; 31 private ArrayList pools = null; 32 public void setPoolConfigFile(String poolConfigFile) { 33 if (this.poolConfigFile == null) { 34 initialize(poolConfigFile); 35 } 36 37 this.poolConfigFile = poolConfigFile; 38 } 39 40 public String getPoolConfigFile() { 41 return this.poolConfigFile; 42 } 43 44 public void initialize(String poolConfigFile) { 45 try { 47 Reference ref = new Reference ("uk.org.primrose.pool.datasource.MasterPoolDataSourceFactory"); 49 String refType = "configFile"; 50 String refAddr = poolConfigFile; 51 StringRefAddr sra = new StringRefAddr (refType, refAddr); 52 ref.add(sra); 53 MasterPoolDataSourceFactory mpdsf = new MasterPoolDataSourceFactory(); 54 Object o = mpdsf.getObjectInstance(ref, null, null, null); 56 this.pools = (ArrayList )o; 57 58 } catch (Exception e) { 59 e.printStackTrace(System.out); 60 } 61 } 62 63 public ArrayList getPools() { 64 return pools; 65 } 66 67 68 } | Popular Tags |