2012年2月3日金曜日

groovyでmongodbのREST interfaceを使用してデータベースを列挙する

groovyでmongodbのREST interfaceを使用してデータベースを列挙するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.2')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import groovy.json.*

httpclient = new DefaultHttpClient()
// REST interfaceからデータベースを列挙する
method = new HttpGet("http://localhost:28017/listDatabases")
response = httpclient.execute(method)

json = new JsonSlurper().parseText(response.getEntity().getContent().text)
println "total size:${json.totalSize/1024/1024}M"
json.databases.each {
  // データベース名
  println "name:${it.name}"
  // ディスクサイズ
  println "sizeOnDisk:${it.sizeOnDisk/1024/1024}M"
}

REST interfaceを使用するにはmongodb.confにrest = trueを追加する

動作環境
Groovy 1.8.2, JDK6 Update23, MongoDB 2.0.2

関連情報

groovyとMongoDBのまとめ

0 件のコメント:

コメントを投稿