클래스: Mongo::Address::IPv6
- 상속:
-
객체
- 객체
- Mongo::Address::IPv6
- 다음에 정의됨:
- build/ruby-driver-v2.19/lib/mongo/address/ipv6.rb
개요
주소가 IP 주소인 경우 IPv6 지원으로 확인을 설정합니다.
상수 요약 접기
- MATCH =
IPv6 IP 주소를 일치시키는 데 사용할 정규 표현식입니다.
정규 표현식.신규('::').동결
인스턴스 속성 요약 접기
-
#호스트 ⇒ string
읽기 전용
호스트 호스트입니다.
-
#host_name ⇒ string
읽기 전용
Host_name 원래 호스트 이름입니다.
-
#포트 ⇒ 정수
읽기 전용
포트 포트입니다.
클래스 메서드 요약 접기
-
.parse(address) ⇒ Array<string, Integer>
IPv6 주소를 해당 호스트 및 포트로 구문 분석합니다.
인스턴스 메서드 요약 접기
-
#initialize(host, port, host_name = nil) ⇒ IPv6
생성자
IPv6 해석기를 초기화합니다.
-
#socket(socket_timeout, options = {}) ⇒ Mongo::Socket::SSL, Mongo::Socket::TCP
비공개
옵션이 주어지면 제공된 주소 유형에 대한 소켓을 가져옵니다.
생성자 세부 정보
#initialize(host, port, host_name = nil) ⇒ IPv6
IPv6 해석기를 초기화합니다.
86 87 88 89 90 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/address/ipv6.rb', 줄 86 def 초기화(호스트, 포트, host_name=nil) @host = 호스트 @port = 포트 @host_name = host_name end |
인스턴스 속성 세부 정보
#호스트 ⇒ string (읽기 전용)
반환 호스트 호스트입니다.
28 29 30 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/address/ipv6.rb', 줄 28 def 호스트 @host end |
#host_name ⇒ string (읽기 전용)
반환값 host_name 원래 호스트 이름입니다.
31 32 33 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/address/ipv6.rb', 줄 31 def host_name @host_name end |
#포트 ⇒ 정수 (읽기 전용)
반환 포트 포트입니다.
34 35 36 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/address/ipv6.rb', 줄 34 def 포트 @port end |
클래스 메서드 세부 정보
.parse(address) ⇒ Array<string, Integer>
IPv6 주소를 해당 호스트 및 포트로 구문 분석합니다.
51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/address/ipv6.rb', 줄 51 def self.parse(주소) # IPAddr의 구문 분석기는 포트가 아닌 IP 주소만 처리합니다. # 따라서 포트를 직접 처리하다 해야 합니다. 만약 주소 =~ /[\[\]]/ 부품 = 주소.match(/\A\[(.+)\](?::(\d+))?\z/) 만약 부품.nil? 올리다 ArgumentError, "잘못된 IPv6 주소: #{주소}" end 호스트 = 부품[1] 포트 = (부품[2] || 27017).to_i other 호스트 = 주소 포트 = 27017 end # 호스팅하다 유효성 검사 . # 이렇게 하면 IPAddr::InvalidAddressError가 발생합니다. # ArgumentError의 하위 클래스인 최신 루비에서 # 호스트가 유효하지 않은 경우 시작 IPAddr.신규(호스트) 구출 ArgumentError 올리다 ArgumentError, "잘못된 IPv6 주소: #{주소}" end [ 호스트, 포트 ] end |
인스턴스 메서드 세부 정보
#socket(socket_timeout, options = {}) ⇒ Mongo::Socket::SSL, Mongo::Socket::TCP
이 메서드는 비공개 API의 일부입니다. 이 방법은 향후 제거되거나 변경될 수 있으므로 가능하면 사용하지 않는 것이 좋습니다.
옵션이 주어지면 제공된 주소 유형에 대한 소켓을 가져옵니다.
133 134 135 136 137 138 139 |
# 파일 'build/ruby-driver-v2.19/lib/mongo/address/ipv6.rb', 줄 133 def 소켓(socket_timeout, = {}) 만약 [:ssl] 소켓::ssl.신규(호스트, 포트, host_name, socket_timeout, 소켓::PF_INET6, ) other 소켓::TCP.신규(호스트, 포트, socket_timeout, 소켓::PF_INET6, ) end end |