regserverimpl.java

来自「java rmi example. By using rmi to invoke」· Java 代码 · 共 67 行

JAVA
67
字号
/*
 
        Project M4: Distributed Registry
        RegistrationServer
        Written by:    	Shuo Feng
        Student Num:   	040171674
        First written: 	2/3/2005
        Last rewritten:	2/3/2005
 */


import java.rmi.*;
import java.rmi.server.*;
import java.util.*;

class RegServerImpl extends UnicastRemoteObject implements RegServerInterface {

	private Hashtable register = new Hashtable();
	
	RegServerImpl () throws RemoteException {
	}
	
	// register method
	
	synchronized public void register(RemoteClientInterface remoteClient) throws RemoteException {
	  String regName="";
	  	  
	  try { 
	    regName = remoteClient.getName();
	    if (register.containsKey(regName)) {
		System.out.println("duplicated register name");
	    }
	    else {
		register.put(regName, remoteClient);
		remoteClient.regist();
		System.out.println("the client register name is: "+regName);  
	    }
	  } catch(Exception e) {
	      System.out.println(e);
	      System.exit(0);
	  }
	}
	
	// deregister method
	
	synchronized public void deregister(RemoteClientInterface remoteClient) throws RemoteException {
	  String regName="";
	  	  
	  try { 
	    regName = remoteClient.getName();
	    if (register.containsKey(regName)) {

		register.remove(regName);
		remoteClient.deregist();
		System.out.println("the client "+regName+" has been deregistered");
	    }
	    else {
		System.out.println("you haven't registered yet");  
	    }
	  } catch(Exception e) {
	      System.out.println(e);
	      System.exit(0);
	  }
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?