Clojure China

这段java代码怎么转成clojure

#1

最近在研究appium,里面的client端代码可以用java来写,于是我就想用clojure来写,原本也没写过java,就按照网上的教程进行转换,但是遇到下面的我就不知道怎么转换了。
appium给的例子如下:

import java.io.File;
import org.openqa.selenium.remote.DesiredCapabilities;
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.MobileElement;
import java.net.URL;


File app  = new File("The absolute or relative path to an *.apk file");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "Android Emulator");
capabilities.setCapability(MobileCapabilityType.APP, app.getAbsolutePath());
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID);
//you are free to set additional capabilities 
AppiumDriver<MobileElement> driver = new AppiumDriver<>(
new URL("http://target_ip:used_port/wd/hub"), //if it needs to use locally started server
//then the target_ip is 127.0.0.1 or 0.0.0.0
//the default port is 4723
capabilities);

我做了一些转换,但是不知道MobileCapabilityType这个该如何进行转换,我查了相关资料,这个应该是java的一个interface;一般都是这样使用:

public interface MobileCapabilityType
extends org.openqa.selenium.remote.CapabilityType

我知道class如何包含进clojure里面来,但是不知道这个interface该如何进行转换,我在clojure里面该如何调用?

#2

很基础的问题,可以参考: http://clojure-doc.org/articles/language/interop.html

#3

(MobileCapabilityType/DEVICE_NAME) ??