⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 announcerserver.java

📁 Java经典例程 从外国一大学计算机教授出版物下载的代码 经典
💻 JAVA
字号:
import java.rmi.*;
import java.rmi.server.*;
import java.util.*;
import java.awt.*;

public class AnnouncerServer extends UnicastRemoteObject
             implements Announcer {

  /* The Airport System Announcer Server  L Botha Jan 1998
	 * ===================================  Java 1.1
	 *
	 *  Maintains a sequence of messages which are
	 *  passed to the montior on request.
	 *  Illustrates RMISecurityManager and Vectors.
	 */

    Vector messageBuffer;

    AnnouncerServer() throws RemoteException {
        messageBuffer = new Vector();
        sendMessage("                Initialising Monitor...");
    }

    public void sendMessage(String message) {
        messageBuffer.addElement(message);
    }

    public synchronized boolean hasMessage() {
        return(messageBuffer.size() > 0);
    }

    public synchronized void removeMessage() {
        if (hasMessage())
            messageBuffer.removeElementAt(0);
    }

    public synchronized String getMessage() {
        if (hasMessage())
            return((String)messageBuffer.elementAt(0));
        else
            return("");
    }

    public static void main(String[] args) {
        AnnouncerServer obj = null;

        try {
            obj = new AnnouncerServer();
            Naming.rebind("rmi:///AnnouncerServer", obj);
            System.out.println("Announcer server bound in registry");

            Monitor monitor = new Monitor(obj);
            Thread t = new Thread(monitor);
            t.start();
            System.out.println("Announcer monitor started");
        } catch (Exception e) {
            System.out.println("Announcer error: " + e);
        }
    }
}

⌨️ 快捷键说明

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