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

📄 mshutdownerobserver.java

📁 httptunnel.jar httptunnel java 源码
💻 JAVA
字号:
package net.jumperz.util.shutdown;

import net.jumperz.app.*;
import net.jumperz.net.*;
import net.jumperz.util.*;
import java.io.*;
import java.net.*;


public class MShutdownerObserver
extends MAbstractShutdown
implements MObserver1
{
private MMultiAcceptor acceptor;
private MApplication application;

//-------------------------------------------------------------------------------
public void update()
{
int state = acceptor.getState();
if( state == MMultiAcceptor.ACCEPTED )
	{
	try
		{	
		Socket socket = acceptor.getSocket();
				
		if( socket.getInetAddress().equals( InetAddress.getByName( clientHost ) )
		 && socket.getPort() == clientPort
		  )
			{
			checkPassword( socket );
			}
		else
			{
			socket.close();
			}
		}
	catch( IOException e )
		{
		e.printStackTrace();
		}
	}
else if( state == MMultiAcceptor.ERROR )
	{
	application.shutdown();
	}
}
//-------------------------------------------------------------------------------
private void checkPassword( Socket socket )
throws IOException
{
BufferedReader reader = new BufferedReader( new InputStreamReader( socket.getInputStream(), MCharset.CS_ISO_8859_1 ) );

String line = reader.readLine();

socket.close();

if( line != null )
	{
	if( line.equals( password ) )
		{
		application.log( "shutdown password confirmed." );
		application.shutdown();
		}
	else
		{
		application.log( "incorrect password : " + line );
		}
	}
}
//-------------------------------------------------------------------------------
public void setAcceptor( MMultiAcceptor acceptor )
{
this.acceptor = acceptor;
}
//--------------------------------------------------------------------------------
public void setApplication( MApplication application )
{
this.application = application;
}
//--------------------------------------------------------------------------------
}

⌨️ 快捷键说明

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