spaceaccessor.java

来自「javaP2P技术内幕课程111213141516源代码」· Java 代码 · 共 44 行

JAVA
44
字号
import java.rmi.*;
import java.util.*;
import net.jini.space.JavaSpace;
import net.jini.core.entry.*;
import net.jini.core.lookup.*;
import net.jini.lookup.entry.*;
import net.jini.core.discovery.*;

/*
 *  The SpaceAccessor class is a utility class used to resolve the reference
 *  to the outrigger JavaSpace service
*/

public class SpaceAccessor {
   // host name running LUS and name of JavaSpace instance
   public synchronized static JavaSpace getSpace(String hostname, String name) {

      try {
          if (System.getSecurityManager() == null) {
              System.setSecurityManager(
                  new RMISecurityManager());
          }

          // unicast discovery
          LookupLocator lookup = new LookupLocator("jini://" + hostname);
          System.out.println("SpaceAccessor using locator: " + lookup);
          ServiceRegistrar registrar = lookup.getRegistrar();

          // create Name entry to match on
          Entry entries[] = { new Name(name) };

          // lookup the service in the LUS
          JavaSpace space = (JavaSpace)registrar.lookup(new
                                     ServiceTemplate(null,null,entries));

          // return the proxy
          return space;
      } catch (Exception e) {
          System.err.println(e);
      }
         return null;
   }
}

⌨️ 快捷键说明

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