📄 msslmanager.java
字号:
package net.jumperz.app.MDoorman;
import java.io.*;
import java.security.*;
import java.security.cert.*;
import java.security.spec.*;
import java.util.*;
import javax.net.*;
import javax.net.ssl.*;
import java.net.*;
import net.jumperz.security.*;
import net.jumperz.net.*;
import net.jumperz.util.*;
public class MSslManager
{
private static MSslManager instance;
private static final int BACKLOG = 50;
private ServerSocketFactory ssFactory;
private ServerSocket sSocket;
private int port;
// --------------------------------------------------------------------------------
public MSslManager( String certificateFileName, String privateKeyFileName, String algorithm )
throws Exception
{
instance = this;
ssFactory = MSecurityUtil.getServerSocketFactory( certificateFileName, privateKeyFileName, algorithm );
}
// --------------------------------------------------------------------------------
public MSslManager()
throws Exception
{
instance = this;
InputStream crtIn = MStreamUtil.getResourceStream( "net/jumperz/app/MDoorman/resource/doorman_crt" );
InputStream keyIn = MStreamUtil.getResourceStream( "net/jumperz/app/MDoorman/resource/doorman_priv_key_der" );
ssFactory = MSecurityUtil.getServerSocketFactory( crtIn, keyIn, "RSA" );
crtIn.close();
keyIn.close();
}
// --------------------------------------------------------------------------------
public static MSslManager getInstance()
{
return instance;
}
// --------------------------------------------------------------------------------
public void start()
throws IOException
{
sSocket = ssFactory.createServerSocket( 0, BACKLOG, InetAddress.getByName( "127.0.0.1" ) );
port = sSocket.getLocalPort();
}
// --------------------------------------------------------------------------------
public int getPort()
{
return port;
}
// --------------------------------------------------------------------------------
public Socket accept()
throws IOException
{
return sSocket.accept();
}
// --------------------------------------------------------------------------------
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -