User: patriot1burke Date: 01/09/21 14:59:12 Modified: src/main/org/jboss/ha/jndi HANamingService.java HAJNDI.java Log: it works now Revision Changes Path 1.6 +1 -77 jbossmx/src/main/org/jboss/ha/jndi/HANamingService.java Index: HANamingService.java =================================================================== RCS file: /cvsroot/jboss/jbossmx/src/main/org/jboss/ha/jndi/HANamingService.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- HANamingService.java 2001/09/20 23:29:27 1.5 +++ HANamingService.java 2001/09/21 21:59:12 1.6 @@ -61,7 +61,7 @@ @author oberg @author [EMAIL PROTECTED] - @version $Revision: 1.5 $ + @version $Revision: 1.6 $ */ public class HANamingService extends ServiceMBeanSupport implements Runnable, HANamingServiceMBean, DistributedReplicantManager.ReplicantListener { @@ -198,82 +198,6 @@ serverSocketFactory = (RMIServerSocketFactory) clazz.newInstance(); } - /* - public void replicantsChanged(String key, ArrayList newReplicants) - { - log.info("replicantsChanged"); - if (key.equals("HAJNDI")) - { - log.info("HAJNDI replicantChanged"); - synchronized(this.hatarget) - { - hatarget.setTargets(newReplicants.toArray()); - } - } - else if (key.equals("DistributedReplicantManager")) - { - log.info("DistributedReplicantManager replicantChanged"); - synchronized(this.hatarget) - { - hatarget.setManagers(newReplicants); - } - } - } - - public void initService() throws Exception - { - log.info("Initializing HAJNDI server"); - partition = (HAPartition)new InitialContext().lookup("/HAPartition/" + partitionName); - replicantManager = partition.getDistributedReplicantManager(); - log.info("Create remote object"); - theServer = new HAJNDI(partition); - log.info("Export RMI server"); - stub = UnicastRemoteObject.exportObject(theServer); - log.info("initialize HAJNDI"); - theServer.init(); - } - - public void startService() - throws Exception - { - log.info("Starting HAJNDI server"); - - log.info("Bind replicant to DistributedReplicantManager"); - replicantManager.add("HAJNDI", stub); - - log.info("Get all replicants for DistributedReplicantManager and HAJNDI"); - ArrayList managers = this.replicantManager.lookupReplicants("DistributedReplicantManager"); - ArrayList replicants = this.replicantManager.lookupReplicants("HAJNDI"); - - log.info("Create HAJNDI RMI Proxy with " + replicants.size() + " replicants"); - this.hatarget = new HARMITarget("HAJNDI", 100000, 500000, managers, replicants.toArray(), new RoundRobin()); - this.hastub = (Naming)Proxy.newProxyInstance( - Naming.class.getClassLoader(), - new Class[] { Naming.class }, - this.hatarget); - - log.info("Register with replicantManager as listener for HAJNDI replicants"); - replicantManager.registerListener("HAJNDI", this); - replicantManager.registerListener("DistributedReplicantManager", this); - - log.info("Start listener"); - try - { - serverSocket = null; - serverSocket = new ServerSocket(port, backlog, bindAddress); - // If an anonymous port was specified get the actual port used - if( port == 0 ) - port = serverSocket.getLocalPort(); - String msg = "Started hajndiPort=" + port; - log.info(msg); - listen(); - } catch (IOException e) - { - log.error("Could not start on port " + port, e); - } - } - */ - public void replicantsChanged(String key, ArrayList newReplicants) { haclient.setTargets(newReplicants.toArray()); 1.4 +16 -4 jbossmx/src/main/org/jboss/ha/jndi/HAJNDI.java Index: HAJNDI.java =================================================================== RCS file: /cvsroot/jboss/jbossmx/src/main/org/jboss/ha/jndi/HAJNDI.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- HAJNDI.java 2001/09/19 23:57:59 1.3 +++ HAJNDI.java 2001/09/21 21:59:12 1.4 @@ -47,7 +47,7 @@ * * @see <related> * @author $Author: patriot1burke $ - * @version $Revision: 1.3 $ + * @version $Revision: 1.4 $ */ public class HAJNDI extends NamingServer implements Naming, java.io.Serializable, HAPartition.HAPartitionStateTransfer @@ -98,7 +98,7 @@ throws NamingException { log.info("bind"); - _bind(name, obj, className); + super.bind(name, obj, className); // if we get here, this means we can do it on every node. Object[] args = new Object[3]; args[0] = name; @@ -113,6 +113,12 @@ } } + public synchronized void _rebind(Name name, Object obj, String className) + throws NamingException + { + log.info("_rebind"); + super.rebind(name, obj, className); + } public synchronized void rebind(Name name, Object obj, String className) throws NamingException { @@ -126,7 +132,7 @@ args[2] = className; try { - partition.callMethodOnCluster("HAJNDI", "rebind", args, true); + partition.callMethodOnCluster("HAJNDI", "_rebind", args, true); } catch (Exception ignored) { @@ -134,6 +140,12 @@ } } + public synchronized void _unbind(Name name) + throws NamingException + { + log.info("_unbind"); + super.unbind(name); + } public synchronized void unbind(Name name) throws NamingException { @@ -145,7 +157,7 @@ args[0] = name; try { - partition.callMethodOnCluster("HAJNDI", "unbind", args, true); + partition.callMethodOnCluster("HAJNDI", "_unbind", args, true); } catch (Exception ignored) { _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development