Skip to content

Instantly share code, notes, and snippets.

@toby55kij
toby55kij / GetScoreRuns.groovy
Created December 7, 2010 15:54
G*ワークショップ&忘年LT大会(2010/12/09)で発表した内容のGroovyスクリプトです。
//GetScoreRuns.groovy - bjリーグの2010-2011チーム別総得点・総失点を出力する
@Grab('net.sourceforge.htmlunit:htmlunit:2.8')
import java.net.URL
import com.gargoylesoftware.htmlunit.BrowserVersion
import com.gargoylesoftware.htmlunit.WebClient
proxyHost = null // set the proxy host name if you are in Firewall
proxyPort = 18080
if (proxyHost != null) {
c = new WebClient(BrowserVersion.FIREFOX_3, proxyHost , proxyPort)
@toby55kij
toby55kij / TakeBytes.groovy
Created June 24, 2011 12:48
「Groovyで文字列を最大nバイトに切り詰める」を書き換えてみる
def takeNbytes(str, n) {
buf = ''
for (s in str) {
if ( buf.bytes.size() + s.bytes.size() > n) break
buf += s
}
buf
}
println takeNbytes("あいうえお", 2)
@toby55kij
toby55kij / jggug_camp_2011_toby55kij.groovy
Created November 5, 2011 05:36
コードで自己紹介 by toby55kij
import groovy.beans.Bindable
import groovy.json.JsonSlurper
import groovy.swing.SwingBuilder
import java.awt.Font
import javax.swing.DefaultComboBoxModel
import javax.swing.JFrame
import javax.swing.JTextField
@toby55kij
toby55kij / JsonOutputSample.groovy
Created November 5, 2011 06:39
groovy.json.JsonOutputのサンプル
import groovy.json.JsonBuilder
import groovy.json.JsonOutput
//JsonOutputのサンプル
//サンプルデータ
def data = {
people {
person {
firstName 'Yasuharu'
@toby55kij
toby55kij / JsonBuilderSample.groovy
Created November 5, 2011 07:31
JsonBuilderを使う際に間違いやすい部分のサンプル(2011/6JGGUG総会のLTで発表した内容を元に解説付き)
//JsonBuilderを使う際に間違いやすい部分のサンプル
def json = new groovy.json.JsonBuilder()
//サンプル1
json numbers:[1,2,4]
def sample1 = json.toString()
println sample1
//サンプル2
json { numbers 1,2,4 }
@toby55kij
toby55kij / StreamingJsonBuilderSample.groovy
Created November 5, 2011 08:35
groovy.json.StreamingJsonBuilderのサンプル
//StreamingJsonBuilderのサンプル
import groovy.json.JsonOutput
import groovy.json.StreamingJsonBuilder
def data = {
people {
person {
firstName 'Yasuharu'
lastName 'Hayami'
// Named arguments are valid values for objects too
@toby55kij
toby55kij / JsonSlurperSample.groovy
Created November 5, 2011 11:33
groovy.json.JsonSlurperのサンプル
//JsonSlurperのサンプル
import groovy.json.JsonOutput
import groovy.json.JsonSlurper
//JSON文字列
def text = '''{
"people": {
"person": {
"firstName": "Yasuharu",
"lastName": "Hayami",
@toby55kij
toby55kij / GrettySample.groovy
Created December 22, 2011 13:54
Grettyのサンプル - 割り勘計算機
@GrabResolver(name='gretty',
root='http://groovypp.artifactoryonline.com/groovypp/libs-releases-local')
@Grab('org.mbte.groovypp:gretty:0.4.302')
import org.mbte.gretty.httpserver.GrettyServer
//Grettyのサンプル - 割り勘計算機
// http://localhost:8080/[割られる数]/[割る数] -> 割り算の結果を返す
// http://localhost:8080/[メッセージ] -> 'Hello, [メッセージ]!'を返す
//割り算の結果を返す
def createDivResponse = { p ->
def calcResult = p.dividend.toBigDecimal() / p.divisor.toBigDecimal()
@toby55kij
toby55kij / CreateLabel.groovy
Created January 23, 2012 13:18
Apache PivotでGroovyを使うサンプル
@Grapes([
@Grab("org.apache.pivot:pivot-core:2.0"),
@Grab("org.apache.pivot:pivot-wtk:2.0"),
@Grab("org.apache.pivot:pivot-wtk-terra:2.0")
])
import org.apache.pivot.wtk.*
//メソッドはバインディング変数(クロージャ)で作成しないといけない
createLabel = { window ->
def label = new Label()
@toby55kij
toby55kij / GroovyPojoJsonSample.java
Created August 28, 2012 15:49
POJO<->JSONの相互変換にGroovyを使った場合のサンプル
import groovy.lang.Binding;
import groovy.lang.GroovyShell;
import groovy.lang.Script;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**