2012年5月26日土曜日

groovyとMongoHQのREST APIで、コレクションを一覧表示する

groovyとMongoHQのREST APIで、コレクションを一覧表示するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.3')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import groovy.json.*

def _apikey = "your-key"
def base = "https://api.mongohq.com/databases"
def db = "mydb"
def httpclient = new DefaultHttpClient()
def method = new HttpGet("${base}/${db}/collections?_apikey=${_apikey}")
response = httpclient.execute(method)

println response.getStatusLine().getStatusCode()
def json = new JsonSlurper().parseText(response.getEntity().getContent().text)
for(col in json){
  println "name:${col.name}"
  println "storageSize:${col.storageSize}"
}

動作環境
groovy 1.8.6

関連情報
groovyとMongoDBのまとめ

2012年5月24日木曜日

groovyとMongoHQのREST APIで、コレクションを削除する

groovyとMongoHQのREST APIで、コレクションを削除するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.3')
import org.apache.http.client.entity.*
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import org.apache.http.message.*
import org.apache.http.protocol.*
import groovy.json.*

def _apikey = "your-key"
def base = "https://api.mongohq.com/databases"
def db = "mydb"
def col = "your-collection"

httpclient = new DefaultHttpClient()
method = new HttpDelete("${base}/${db}/collections/${col}?_apikey=${_apikey}")
response = httpclient.execute(method)

println response.getStatusLine().getStatusCode()
println response.getEntity().getContent().text

動作環境
groovy 1.8.6

関連情報
groovyとMongoDBのまとめ

2012年5月22日火曜日

groovyとMongoHQのREST APIで、コレクション内のドキュメントを削除する

groovyとMongoHQのREST APIで、コレクション内のドキュメントを削除するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.3')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import org.apache.http.entity.*
import groovy.json.*

def _apikey = "your-key"
def base = "https://api.mongohq.com/databases"
def db = "mydb"
def col = "employee"
def doc_id = "your-document-id"

def httpclient = new DefaultHttpClient()
def method = new HttpDelete(
  "${base}/${db}/collections/${col}/documents/${doc_id}?_apikey=${_apikey}")
response = httpclient.execute(method)

println response.getStatusLine().getStatusCode()
println response.getEntity().getContent().text

動作環境
groovy 1.8.6

関連情報
groovyとMongoDBのまとめ

2012年5月21日月曜日

groovyとmongolabのREST APIで、コレクションを列挙する

groovyとmongolabのREST APIで、コレクションを列挙するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.3')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import groovy.json.*

def apikey = "your-key"
def base = "https://api.mongolab.com/api/1"
def db = "mydb"
def httpclient = new DefaultHttpClient()
def method = new HttpGet("${base}/databases/${db}/collections?apiKey=${apikey}")
response = httpclient.execute(method)

println response.getStatusLine().getStatusCode()
def json = new JsonSlurper().parseText(response.getEntity().getContent().text)
for(col in json){
  println "name:${col}"
}

動作環境
groovy 1.8.6

関連情報
groovyとMongoDBのまとめ

2012年5月20日日曜日

groovyとMongoHQのREST APIで、コレクション内のドキュメントを更新する

groovyとMongoHQのREST APIで、コレクション内のドキュメントを更新するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.3')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import org.apache.http.entity.*
import groovy.json.*

def _apikey = "your-key"
def base = "https://api.mongohq.com/databases"
def db = "mydb"
def col = "employee"
def doc_id = "your-document-id"
def json = new JsonBuilder()
json (
  document:[
    '$set': ["name":"テスト2"]
  ],
  safe:true
)

def httpclient = new DefaultHttpClient()
def method = new HttpPut(
  "${base}/${db}/collections/${col}/documents/${doc_id}?_apikey=${_apikey}")
method.setHeader("Content-Type", "application/json; charset=utf-8")
method.setEntity(new StringEntity(json.toString(), "UTF-8"))
response = httpclient.execute(method)

println response.getStatusLine().getStatusCode()
println response.getEntity().getContent().text

動作環境
groovy 1.8.6

関連情報
groovyとMongoDBのまとめ

2012年5月19日土曜日

groovyとmongolabのREST APIで、コレクション内のドキュメントを削除する

groovyとmongolabのREST APIで、コレクション内のドキュメントを削除するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.3')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import org.apache.http.entity.*
import groovy.json.*

def apikey = "your-key"
def base = "https://api.mongolab.com/api/1"
def db = "mydb"
def col = "employee"
def doc_id = "your-document-id"

def httpclient = new DefaultHttpClient()
def method = new HttpDelete(
  "${base}/databases/${db}/collections/${col}/${doc_id}?apiKey=${apikey}")
response = httpclient.execute(method)

println response.getStatusLine().getStatusCode()
println response.getEntity().getContent().text

動作環境
groovy 1.8.6

関連情報
groovyとMongoDBのまとめ

2012年5月18日金曜日

groovyとMongoHQのREST APIで、コレクション内のドキュメントを取得する

groovyとMongoHQのREST APIで、コレクション内のドキュメントを取得するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.3')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import groovy.json.*

def _apikey = "your-key"
def base = "https://api.mongohq.com/databases"
def db = "mydb"
def col = "employee"
def doc_id = "your-document-id"
def params = "_apikey=${_apikey}"
def httpclient = new DefaultHttpClient()
def method = new HttpGet("${base}/${db}/collections/${col}/documents/${doc_id}?${params}")
response = httpclient.execute(method)

println response.getStatusLine().getStatusCode()
def content = new InputStreamReader(
  response.getEntity().getContent(), "UTF-8").text
def json = new JsonSlurper().parseText(content)
println json.employeeno
println json.name

動作環境
groovy 1.8.6

関連情報
groovyとMongoDBのまとめ