JavaTM Platform
Standard Ed. 6

java.rmi.server
클래스 RMISocketFactory

java.lang.Object 
  상위를 확장 java.rmi.server.RMISocketFactory
모든 구현된 인터페이스:
RMIClientSocketFactory , RMIServerSocketFactory


public abstract class RMISocketFactory
extends Object
implements RMIClientSocketFactory , RMIServerSocketFactory

RMISocketFactory 클래스의 인스턴스는, RMI 의 런타임이 RMI 콜용으로 클라이언트와 서버의 소켓을 취득하기 위해서 사용합니다. 어플리케이션은,setSocketFactory 메소드를 사용해, RMI 런타임에 대해서, 디폴트의 구현 대신에 소켓 팩토리의 인스턴스를 사용하도록(듯이) 요구할 수가 있습니다.

디폴트의 소켓 팩토리의 구현에서는, 3 단계에서 클라이언트 소켓을 작성하는 방법을 취하고 있습니다. 최초로, 원격의 VM 에 대해서 직접 소켓 접속을 시도합니다. 그 시도가 (방화벽(fire wall)를 위해서(때문에)) 실패했을 경우에는, RMI 의 런타임은, 서버의 포트 번호를 명시해 HTTP 를 사용합니다. 방화벽(fire wall)가 그러한 종류의 통신을 허가하지 않는 경우에는, 서버상의 cgi-bin 스크립트에 대한 HTTP 가, RMI 호출을 POST 하기 위해서 사용됩니다.

도입된 버젼:
JDK1. 1

생성자 의 개요
RMISocketFactory ()
          RMISocketFactory 를 작성합니다.
 
메소드의 개요
abstract  ServerSocket createServerSocket (int port)
          지정 포트용의 서버 소켓을 작성합니다.
abstract  Socket createSocket (String  host, int port)
          지정된 호스트와 포트에 접속되는 클라이언트 소켓을 작성합니다.
static RMISocketFactory getDefaultSocketFactory ()
          이 RMI 의 구현에 사용되는, 디폴트의 소켓 팩토리에의 참조를 돌려줍니다.
static RMIFailureHandler getFailureHandler ()
          setFailureHandler 메소드에 의해 설정된 소켓 작성 에러 핸들러를 돌려줍니다.
static RMISocketFactory getSocketFactory ()
          setSocketFactory 메소드에 의해 설정된 소켓 팩토리를 돌려줍니다.
static void setFailureHandler (RMIFailureHandler  fh)
          서버 소켓의 작성이 실패했을 경우에, RMI 의 런타임이 호출하는 에러 핸들러를 설정합니다.
static void setSocketFactory (RMISocketFactory  fac)
          원격 객체가 특정의 클라이언트 소켓 팩토리 또는 서버 소켓 팩토리에 관련지을 수 있지 않은 경우에, RMI 가 소켓을 취득하는 글로벌 소켓 팩토리를 설정합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

생성자 의 상세

RMISocketFactory

public RMISocketFactory()
RMISocketFactory 를 작성합니다.

도입된 버젼:
JDK1. 1
메소드의 상세

createSocket

public abstract Socket  createSocket(String  host,
                                    int port)
                             throws IOException 
지정된 호스트와 포트에 접속되는 클라이언트 소켓을 작성합니다.

정의:
인터페이스 RMIClientSocketFactory 내의 createSocket
파라미터:
host - 호스트명
port - 포트 번호
반환값:
지정된 호스트와 포트에 접속되는 소켓
예외:
IOException - 소켓의 작성시에 입출력 에러가 발생했을 경우
도입된 버젼:
JDK1. 1

createServerSocket

public abstract ServerSocket  createServerSocket(int port)
                                         throws IOException 
지정 포트용의 서버 소켓을 작성합니다. 포트 0 은 익명 포트를 나타냅니다.

정의:
인터페이스 RMIServerSocketFactory 내의 createServerSocket
파라미터:
port - 포트 번호
반환값:
지정된 포트의 서버 소켓
예외:
IOException - 서버 소켓의 작성시에 입출력 에러가 발생했을 경우
도입된 버젼:
JDK1. 1

setSocketFactory

public static void setSocketFactory(RMISocketFactory  fac)
                             throws IOException 
원격 객체가 특정의 클라이언트 소켓 팩토리 또는 서버 소켓 팩토리에 관련지을 수 있지 않은 경우에, RMI 가 소켓을 취득하는 글로벌 소켓 팩토리를 설정합니다. RMI 소켓 팩토리는, 1 회 밖에 설정할 수 없습니다. 주:RMISocketFactory 는 현재의 시큐리티 매니저가 소켓 팩토리의 설정을 허가하고 있는 경우에 한해 설정할 수 있다고 하는 점에 주의해 주세요. 허가되어 있지 않은 경우에는, SecurityException 가 throw 됩니다.

파라미터:
fac - 소켓 팩토리
예외:
IOException - RMI 소켓 팩토리가 벌써 설정되어 있는 경우
SecurityException - 시큐리티 매니저가 존재해, 그 checkSetFactory 메소드가 이 조작을 허가하지 않는 경우
도입된 버젼:
JDK1. 1
관련 항목:
getSocketFactory() , SecurityManager.checkSetFactory()

getSocketFactory

public static RMISocketFactory  getSocketFactory()
setSocketFactory 메소드에 의해 설정된 소켓 팩토리를 돌려줍니다. 소켓 팩토리가 설정되어 있지 않은 경우는 null 를 돌려줍니다.

반환값:
소켓 팩토리
도입된 버젼:
JDK1. 1
관련 항목:
setSocketFactory(RMISocketFactory)

getDefaultSocketFactory

public static RMISocketFactory  getDefaultSocketFactory()
이 RMI 의 구현에 사용되는, 디폴트의 소켓 팩토리에의 참조를 돌려줍니다. 이 팩토리는,getSocketFactory 로부터 null 가 돌려주어졌을 경우에, RMI 런타임에 의해 사용됩니다.

반환값:
디폴트의 RMI 소켓 팩토리
도입된 버젼:
JDK1. 1

setFailureHandler

public static void setFailureHandler(RMIFailureHandler  fh)
서버 소켓의 작성이 실패했을 경우에, RMI 의 런타임이 호출하는 에러 핸들러를 설정합니다. 디폴트에서는, 만약 에러 핸들러가 인스톨 되지 않고, 서버 소켓의 작성이 실패했을 경우에는, RMI 런타임은 서버 소켓의 작성을 재시행합니다.

시큐리티 매니저가 존재하는 경우, 이 메소드는 최초로 시큐리티 매니저의 checkSetFactory 메소드를 호출하는 것으로, 이 조작이 허가되고 있는 것을 확인합니다. 이 결과,SecurityException 가 되는 일이 있습니다.

파라미터:
fh - 에러 핸들러
예외:
SecurityException - 시큐리티 매니저가 존재해, 그 checkSetFactory 메소드가 이 조작을 허가하지 않는 경우
도입된 버젼:
JDK1. 1
관련 항목:
getFailureHandler() , RMIFailureHandler.failure(Exception)

getFailureHandler

public static RMIFailureHandler  getFailureHandler()
setFailureHandler 메소드에 의해 설정된 소켓 작성 에러 핸들러를 돌려줍니다.

반환값:
에러 핸들러
도입된 버젼:
JDK1. 1
관련 항목:
setFailureHandler(RMIFailureHandler)

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.