GnuSmalltalkUsersGuide:AdditionalChapter6 20

From 흡혈양파의 번역工房
Jump to navigation Jump to search
Sockets.SocketAddress

Sockets.SocketAddress

네임스페이스 Sockets에 정의됨

슈퍼클래스: Object

범주: 소켓-프로토콜


해당 클래스는 네트워크상의 기계 주소에 대한 추상적 클래스이다. 이는 C 스타일 함수 gethostname(), gethostbyname(), gethostbyaddr() 의 함수를 실행하고, 기계어를 상응하는 수치형 주소로, 그리고 그 반대로 분해하기도 한다.


Sockets.SocketAddress 클래스: 추상적

extractFromSockAddr: aByteArray port: portAdaptor

Private - C sockaddr 구조를 포함하는 새 SocketAddress를 ByteArray로부터 응답하라. portAdaptor의 값은 구조가 참조하는 포트를 포함하도록 변경된다.

fromSockAddr: aByteArray port: portAdaptor

Private - C sockaddr 구조를 포함하는 새 IPAddress를 ByteArray로부터 응답하라. portAdaptor의 값은 구조가 참조하는 포트를 포함하도록 변경된다. 주소 체계가 알려지지 않은 경우 오류를 발생시켜라.


Sockets.SocketAddress 클래스: 접근하기

anyLocalAddress

로컬 주소를 나타내는 IPAddress를 응답하라.

at: host cache: aBlock

Private - 캐시에 주어진 호스트와 연관된 주소의 목록을 응답하라. 호스트가 아직 캐시 저장되지 않은 경우 aBlock을 평가하고 캐시 저장하여 결과를 응답하라.

defaultDatagramSocketImplClass

Socket의 프로토콜과 저수준 C 인터페이스 간 매핑에 기본적으로 사용되는 클래스를 응답하라.

defaultDatagramSocketImplClass: aClass

수신자의 프로토콜과 저수준 C 인터페이스 간 매핑에 기본적으로 사용할 클래스를 설정하라.

defaultRawSocketImplClass

Socket의 프로토콜과 저수준 C 인터페이스 간 매핑에 기본적으로 사용되는 클래스를 응답하라.

defaultRawSocketImplClass: aClass

수신자의 프로토콜과 저수준 C 인터페이스 간 매핑에 기본적으로 사용할 클래스를 설정하라.

defaultStreamSocketImplClass

Socket의 프로토콜과 저수준 C 인터페이스 간 매핑에 기본적으로 사용되는 클래스를 응답하라.

defaultStreamSocketImplClass: aClass

수신자의 프로토콜과 저수준 C 인터페이스 간 매핑에 기본적으로 사용할 클래스를 설정하라.

isDigitAddress: aString

수신자가 변환기(resolver)를 살펴보지 않고 aString를 유효한 주소로 해석할 수 있는지 응답하라.

localHostName

로컬 머신의 이름을 응답하라.

loopbackHost

로컬 머신을 나타내는 수신자의 인스턴스를 응답하라 (IPv4 family에서 127.0.0.1).

unknownAddress

알려지지 않은 머신을 나타내는 수신자의 인스턴스를 응답하라 (IPv4 family에서 0.0.0.0).


Sockets.SocketAddress 클래스: C call-outs

primLocalName

해당 설명 없음.

primName: address len: len type: addressFamily

해당 설명 없음.


Sockets.SocketAddress 클래스: C 상수

addressFamily

해당 설명 없음.

aiAddrconfig

해당 설명 없음.

aiCanonname

해당 설명 없음.

protocolFamily

해당 설명 없음.


Sockets.SocketAddress 클래스: 소켓 생성하기

newRawSocket

새 raw socket을 생성하고 수신자에 의해 표현되는 프로토콜 family를 위한 인터페이스와 저수준 네트워크 프로토콜로 접근성을 제공하라 (예: IPAddress 클래스의 경우 C 프로토콜 family PF INET가 해당). 일반 사용자 프로그램은 주로 해당 메서드를 이용할 필요가 없다.


Sockets.SocketAddress 클래스: 호스트명 검색(lookup)

allByName: aString

주어진 호스트를 참조하는 모든 IP 주소를 응답하라. 숫자 주소(Digit address)가 aString 내에서 전달될 경우 결과는 하나의 전달된 주소를 포함하는 배열이 된다. 호스트가 IP 주소로 변환될 수 없는 경우 nil을 응답하라.

byName: aString

주어진 호스트를 참조하는 단일 IP 주소를 응답하라. 숫자 주소가 aString 내에서 전달될 경우 결과는 #fromString: 을 이용할 때의 결과와 같다. 호스트가 IP 주소로 변환될 수 없는 경우 nil을 응답하라.


Sockets.SocketAddress 클래스: 초기화

anyLocalAddress: anObject

Private - 수신자에 대한 주소 체계에서 로컬 주소를 나타내는 객체를 보관하라.

createLoopbackHost

수신자에 대한 주소 체계에서 루프백 호스트를 나타내는 객체를 응답하라.

createUnknownAddress

수신자에 대한 주소 체계에서 알려지지 않은 주소를 나타내는 객체를 응답하라.

flush

캐시 저장된 IP 주소를 비워라.

initLocalAddresses

Private - 전체 계층구조에 대한 anyLocalAddress 클래스-인스턴스 변수를 초기화하라.

update: aspect

IPAddress 서브클래스에 대한 모든 캐시를 비워라.


Sockets.SocketAddress: 접근하기

= aSocketAddress

수신자와 aSocketAddress가 동일한 머신을 나타내는지를 응답하라. 호스트명은 검사되지 않는데 DNS가 활성화되기 전에 생성된 IPAddress는 그 숫자-점 표기법에 따라 명명되는 반면 DNS가 활성화될 때 생성되는 IPAddress는 변환된 이름으로 명명되기 때문이다.

asByteArray

수신자를 운영체제의 소켓 함수로 전달된 ByteArray로 변환하라.

hash

수신자에 대한 해시값을 응답하라.

name

호스트명을 응답하라 (DNS가 주소를 변환할 수 없는 경우 숫자 표기법을 응답). DNS가 동일한 이름에 대해 다른 IP 주소를 응답할 경우, 두 번째 응답은 캐시 저장되지 않으며 숫지 표기법도 리턴된다 (누군가 당신의 DNS로 이상한 장난을 쳤을 가능성이 있다)).


Sockets.SocketAddress: 검사하기

isMulticast

주소가 멀티캐스트 연결에 예약되었는지 응답하라.


Notes