Clojureの書き方がわからない

Twitter4JをいじっているのだがJava

        ConfigurationBuilder confbuilder = new ConfigurationBuilder();            
        confbuilder.setOAuthConsumerKey(CONSUMERKEY);
        confbuilder.setOAuthConsumerSecret(CONSMERSECRET);

        TwitterFactory twitterfactory = new TwitterFactory(confbuilder.build());

        twitter = twitterfactory.getOAuthAuthorizedInstance(
                    new AccessToken(ACCESSTOKEN,ACCESSSECRET));                

となっているところをClojureでどう書けばいいのか分からず数日停止。

(def conf-builder  (doto (. (ConfigurationBuilder. )
                           (setOAuthConsumerKey consumer-key)
                           (setOAuthConsumerSecret consumer-secret))))

(def cb (. conf-builder build))

(def ac (AccessToken. access-token access-secret))

(def twitter-factory (TwitterFactory. cb))

(def twitter (. twitter-factory (getOAuthAuthorizedInstance ac)))

こう書くと

java.lang.IllegalStateException: Cannot use this builder any longer, build() has already been called (ClojureTwitter.clj:0)

のように怒られてしまう。(def cb (. conf-builder build))でbuild()が実行され、それがまた(def twitter-factory (TwitterFactory. cb))で再評価されるので問題らしい。どうやって回避すればいいのか...
誰か教えてー!!