1 10 11 package org.mule.ra; 12 13 import java.io.IOException ; 14 import java.io.ObjectInputStream ; 15 16 import javax.naming.Reference ; 17 import javax.resource.ResourceException ; 18 import javax.resource.spi.ConnectionManager ; 19 20 import org.apache.commons.logging.Log; 21 import org.apache.commons.logging.LogFactory; 22 23 28 public class DefaultMuleConnectionFactory implements MuleConnectionFactory 29 { 30 33 private static final long serialVersionUID = 1552386015565975623L; 34 35 38 protected transient Log logger = LogFactory.getLog(this.getClass()); 39 40 private transient ConnectionManager manager; 41 private transient MuleManagedConnectionFactory factory; 42 private Reference reference; 43 private MuleConnectionRequestInfo info; 44 45 public DefaultMuleConnectionFactory(MuleManagedConnectionFactory factory, 46 ConnectionManager manager, 47 MuleConnectionRequestInfo info) 48 { 49 this.factory = factory; 50 this.manager = manager; 51 this.info = info; 52 } 53 54 private void readObject(ObjectInputStream ois) throws ClassNotFoundException , IOException 55 { 56 ois.defaultReadObject(); 57 this.logger = LogFactory.getLog(this.getClass()); 60 } 61 62 public MuleConnection createConnection() throws ResourceException 63 { 64 return createConnection(info); 65 } 66 67 public MuleConnection createConnection(MuleConnectionRequestInfo info) throws ResourceException 68 { 69 return (MuleConnection)manager.allocateConnection(factory, info); 71 } 78 79 public ConnectionManager getManager() 80 { 81 return manager; 82 } 83 84 public void setManager(ConnectionManager manager) 85 { 86 this.manager = manager; 87 } 88 89 public MuleManagedConnectionFactory getFactory() 90 { 91 return factory; 92 } 93 94 public void setFactory(MuleManagedConnectionFactory factory) 95 { 96 this.factory = factory; 97 } 98 99 public Reference getReference() 100 { 101 return reference; 102 } 103 104 public void setReference(Reference reference) 105 { 106 this.reference = reference; 107 } 108 109 public MuleConnectionRequestInfo getInfo() 110 { 111 return info; 112 } 113 114 public void setInfo(MuleConnectionRequestInfo info) 115 { 116 this.info = info; 117 } 118 } 119 | Popular Tags |