当前位置: 首页>>代码示例>>Java>>正文


Java SelectChannelConnector.getPort方法代码示例

本文整理汇总了Java中org.mortbay.jetty.nio.SelectChannelConnector.getPort方法的典型用法代码示例。如果您正苦于以下问题:Java SelectChannelConnector.getPort方法的具体用法?Java SelectChannelConnector.getPort怎么用?Java SelectChannelConnector.getPort使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.mortbay.jetty.nio.SelectChannelConnector的用法示例。


在下文中一共展示了SelectChannelConnector.getPort方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: init

import org.mortbay.jetty.nio.SelectChannelConnector; //导入方法依赖的package包/类
@Override
public void init(DaemonContext context) throws Exception {
  System.err.println("Initializing secure datanode resources");
  // We should only start up a secure datanode in a Kerberos-secured cluster
  Configuration conf = new Configuration(); // Skip UGI method to not log in
  if(!conf.get(HADOOP_SECURITY_AUTHENTICATION).equals("kerberos"))
    throw new RuntimeException("Cannot start secure datanode in unsecure cluster");
  
  // Stash command-line arguments for regular datanode
  args = context.getArguments();
  
  // Obtain secure port for data streaming to datanode
  InetSocketAddress socAddr = DataNode.getStreamingAddr(conf);
  int socketWriteTimeout = conf.getInt("dfs.datanode.socket.write.timeout",
      HdfsConstants.WRITE_TIMEOUT);
  
  ServerSocket ss = (socketWriteTimeout > 0) ? 
      ServerSocketChannel.open().socket() : new ServerSocket();
  ss.bind(socAddr, 0);
  
  // Check that we got the port we need
  if(ss.getLocalPort() != socAddr.getPort())
    throw new RuntimeException("Unable to bind on specified streaming port in secure " +
    		"context. Needed " + socAddr.getPort() + ", got " + ss.getLocalPort());

  // Obtain secure listener for web server
  SelectChannelConnector listener = 
                 (SelectChannelConnector)HttpServer.createDefaultChannelConnector();
  InetSocketAddress infoSocAddr = DataNode.getInfoAddr(conf);
  listener.setHost(infoSocAddr.getHostName());
  listener.setPort(infoSocAddr.getPort());
  // Open listener here in order to bind to port as root
  listener.open(); 
  if(listener.getPort() != infoSocAddr.getPort())
    throw new RuntimeException("Unable to bind on specified info port in secure " +
        "context. Needed " + socAddr.getPort() + ", got " + ss.getLocalPort());
 
  if(ss.getLocalPort() >= 1023 || listener.getPort() >= 1023)
    throw new RuntimeException("Cannot start secure datanode on non-privileged "
       +" ports. (streaming port = " + ss + " ) (http listener port = " + 
       listener.getConnection() + "). Exiting.");
 
  System.err.println("Successfully obtained privileged resources (streaming port = "
      + ss + " ) (http listener port = " + listener.getConnection() +")");
  
  resources = new SecureResources(ss, listener);
}
 
开发者ID:Seagate,项目名称:hadoop-on-lustre,代码行数:48,代码来源:SecureDataNodeStarter.java

示例2: init

import org.mortbay.jetty.nio.SelectChannelConnector; //导入方法依赖的package包/类
@Override
public void init(DaemonContext context) throws Exception {
  System.err.println("Initializing secure datanode resources");
  // We should only start up a secure datanode in a Kerberos-secured cluster
  Configuration conf = new Configuration(); // Skip UGI method to not log in
  if(!conf.get(HADOOP_SECURITY_AUTHENTICATION).equals("kerberos"))
    throw new RuntimeException("Cannot start secure datanode in unsecure cluster");
  
  // Stash command-line arguments for regular datanode
  args = context.getArguments();
  
  // Obtain secure port for data streaming to datanode
  InetSocketAddress socAddr = DataNode.getStreamingAddr(conf);
  int socketWriteTimeout = conf.getInt("dfs.datanode.socket.write.timeout",
      HdfsConstants.WRITE_TIMEOUT);
  
  ServerSocket ss = (socketWriteTimeout > 0) ? 
      ServerSocketChannel.open().socket() : new ServerSocket();
  ss.bind(socAddr, 0);
  
  // Check that we got the port we need
  if(ss.getLocalPort() != socAddr.getPort())
    throw new RuntimeException("Unable to bind on specified streaming port in secure " +
    		"context. Needed " + socAddr.getPort() + ", got " + ss.getLocalPort());

  // Obtain secure listener for web server
  SelectChannelConnector listener = 
                 (SelectChannelConnector)HttpServer.createDefaultChannelConnector();
  InetSocketAddress infoSocAddr = DataNode.getInfoAddr(conf);
  listener.setHost(infoSocAddr.getHostName());
  listener.setPort(infoSocAddr.getPort());
  // Open listener here in order to bind to port as root
  listener.open(); 
  if(listener.getPort() != infoSocAddr.getPort())
    throw new RuntimeException("Unable to bind on specified info port in secure " +
        "context. Needed " + socAddr.getPort() + ", got " + ss.getLocalPort());
  System.err.println("Successfully obtained privileged resources (streaming port = "
      + ss + " ) (http listener port = " + listener.getConnection() +")");
  
  if(ss.getLocalPort() >= 1023 || listener.getPort() >= 1023)
    throw new RuntimeException("Cannot start secure datanode with unprivileged ports");
  
  resources = new SecureResources(ss, listener);
}
 
开发者ID:cumulusyebl,项目名称:cumulus,代码行数:45,代码来源:SecureDataNodeStarter.java


注:本文中的org.mortbay.jetty.nio.SelectChannelConnector.getPort方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。