Skip to content

Instantly share code, notes, and snippets.

@kakusuke
kakusuke / FrontConfig.java
Last active August 29, 2015 14:19
Jersey Guice 連携
@ApplicationPath("/")
public class FrontConfig extends ResourceConfig {
@Inject
public FrontConfig(ServiceLocator serviceLocator) {
GuiceBridge.getGuiceBridge().initializeGuiceBridge(serviceLocator);
GuiceIntoHK2Bridge guiceBridge = serviceLocator.getService(GuiceIntoHK2Bridge.class);
guiceBridge.bridgeGuiceInjector(Guice.createInjector(new ServletModule() {
@Override protected void configureServlets() {
}
@kakusuke
kakusuke / PostgresUDFOutputPlugin
Created March 30, 2015 06:29
型変換に失敗。。。
public class PostgresUDFOutputPlugin implements OutputPlugin {
public interface PluginTask extends Task {
@Config("host")
public String getHost();
@Config("port")
@ConfigDefault("5432")
public int getPort();
@Config("user")
@kakusuke
kakusuke / build.gradle
Created March 4, 2015 02:39
embulk-input-jdbc のクラスを抽出してローカルで使えるようにする
dependencies {
compile "org.embulk:embulk-core:0.5.0"
provided "org.embulk:embulk-core:0.5.0"
// compile "YOUR_JAR_DEPENDENCY_GROUP:YOUR_JAR_DEPENDENCY_MODULE:YOUR_JAR_DEPENDENCY_VERSION"
gems "rubygems:embulk-input-jdbc:0.3.0"
testCompile "junit:junit:4.+"
}
task loadJdbcInputPlugin(type: Copy, dependsOn: ["jrubyPrepareGems"]) {
from(fileTree("${project.buildDir}/vendor/gems/embulk-input-jdbc-0.3.0/src/main/java/org/embulk/input/"))
@kakusuke
kakusuke / config.json
Last active August 29, 2015 14:15
bootstrap-customized-config
{
"vars": {
"@gray-base": "#000",
"@gray-darker": "lighten(@gray-base, 13.5%)",
"@gray-dark": "lighten(@gray-base, 20%)",
"@gray": "lighten(@gray-base, 33.5%)",
"@gray-light": "lighten(@gray-base, 46.7%)",
"@gray-lighter": "lighten(@gray-base, 93.5%)",
"@brand-primary": "darken(#428bca, 6.5%)",
"@brand-success": "#5cb85c",
@kakusuke
kakusuke / intellij-crash-report
Created December 9, 2014 08:14
intellij-crash-report
Process: idea [1501]
Path: /opt/homebrew-cask/*/IntelliJ IDEA 14.app/Contents/MacOS/idea
Identifier: com.jetbrains.intellij
Version: 14.0.2 (IU-139.659.2)
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: idea [1501]
User ID: 501
Date/Time: 2014-12-09 17:08:56.835 +0900
// ==UserScript==
// @name kakuskue
// @namespace
// @description copy multiple column data by table header select & copy
// @include *
// @exclude
// ==/UserScript==
function is(elm, name) {
if (elm.nodeType !== 1) return false;
@kakusuke
kakusuke / file0.js
Last active April 5, 2017 02:31
メールをチャットワークに転送する ref: http://qiita.com/kakusuke/items/5212fa9456a0a1cf320f
function notifyMail() {
var token = '[APIトークン]';
var roomId = '[ルームID]';
// 未読メールを取得する 検索クエリを変更すれば転送するメールを絞ることも可能
var threads = GmailApp.search('is:unread');
if (threads == null || threads.length === 0) return;
for (var i = 0, tlen = threads.length; i < tlen; i++) {
var msgs = threads[i].getMessages();
@kakusuke
kakusuke / file0.txt
Created October 1, 2013 18:27
コンストラクタに配列を変数展開して渡したい ref: http://qiita.com/kakusuke/items/6cf570b05a6c32457d69
function Arraylike() {
for (var i = 0, len = arguments.length; i < len; i++) {
this[i] = arguments[i];
}
this.length = len;
}
Arraylike.prototype.join = function(separator) {
return [].join.call(this, separator);
}
@kakusuke
kakusuke / file0.txt
Created August 16, 2013 14:59
DeferredオブジェクトのNullオブジェクトを作る ref: http://qiita.com/kakusuke/items/57bd50e14e83c082b2b9
$.extend({
nullDeferred: (function(){
function returnThis(){ return this; }
var promise = {};
// 基本はメソッドチェーンできるメソッドなので、自身を返すメソッドを生やす
for(var n in $.Deferred().promise()){
promise[n] = returnThis;
}
@kakusuke
kakusuke / file0.js
Created August 2, 2013 17:34
prototype汚染しないようにObject.prototypeを拡張する ref: http://qiita.com/kakusuke/items/d4f7f3d45f85eaef6fda
Object.defineProperty(Object.prototype, 'merge', {
value: function(o){
for(var key in o){
this[key] = o[key];
}
return this;
},
writable: true,
configurable: true,
enumerable: false