2010. 1. 15.

JNpDp 3장

Java Network Programming and Distributed Computing 3장 예제소스를 Clojure로 바꿔보고 있다.
로컬 호스트를 찾는 부분부터 걸리는데..

// Get the local host
InetAddress localAddress =
InetAddress.getLocalHost();
System.out.println ("IP address : " +
                localAddress.getHostAddress() );


이 부분이다.
Clojure에서는 다음과 같이 일단 해봤다.
(ns inetaddress
  (:import [java.net InetAddress]))

(defn localhost []
  (let [localAddress (java.net.InetAddress/getLocalHost)]
    (print (.getHostAddress localAddress))))
일단 import를 하고, java 메서드를 호출해서 localAddress라는 임시인스탄스를 만든다.
마지막으로 해당 인스탄스로부터 getHostAddress를 호출하게 했다.

그 다음 network resolver 를 쉬운 편..
(defn network_resolver [s]
  (let [addr (java.net.InetAddress/getByName s)]
    (print (str "IP Address : " (.getHostAddress addr)))
    (print (str "Hostname : " (.getHostName addr)))))
라고 해주면 된다. 일단 슬슬 clojure에 익숙해져간다.

댓글 없음:

댓글 쓰기