2012-01-01から1年間の記事一覧

mockitoを試した

mockito http://code.google.com/p/mockito/ モックをお手軽に作れるライブラリ。 結構前からありますので情報もいっぱい出てますし、Exampleを見て書いてみると十分実用的なので使いたくなると思います。 早速試しましょう。

VPN接続しようと思った

ギガビット環境化の一歩として前々から買おうかなと思っていたRTX1200なルータが手に入ったので、 ついでにIX2015で出来なかった(と思われる)、動的IPに対応できるVPNを構築を構築した。 接続の方式?はL2TP/IPSec。 YAMAHAさんは様々な構築の提案を公開して…

NAS省電力化計画

NAS作ったけど、あんまり使ってない。でも常時電源入ってる。 HDD4台にSSD1台乗っかっている謹製NASはIdle時は39.3W前後使っている Idle中のNASの消費電力をさらに下げたいと思い、色々調べる。 HDDが4台も乗っているんだからこいつらがおとなしくなれば・・…

SambaとSELinux

Sambaを入れてたけど、以下の事情でなかなか共有ディレクトリが作れなかった。 参考 http://dpsnet.ddo.jp/MEMO/itpro013.htm SELinuxを有効にしたまま、Sambaを使いたい場合、以下の設定が必要。 /path/to/public_directoryは共有したい任意のshare/public…

iSCSI環境構築メモ

自分用メモ。

LinuxでソフトウェアRAIDを組んだり、パーティションをきったり。

自分用メモ

HP ProLiant MicroServerでNAS作るよメモ

衝動的に小さめなNASがほしくなったので。 HPのHP ProLiant MicroServerシリーズの一番安いのが良い感じ。HP ProLiant MicroServer N40L/250GBモデルメディア: エレクトロニクス クリック: 155回この商品を含むブログ (2件) を見る出たのは2年も前だけど、1…

クラスのインナークラスのインナークラス

なんとなくインナークラスにインナークラスはかけないという先入観があったので確かめてみたらかける。 "$"を使ったクラス名も有効だけど、 インナークラスを識別するために「クラス$インナークラス」というclassファイルを作るので、 わざと重複させようと…

JUnitで例外メッセージのテストをするMatcherとRuleを書いたので

時代遅れ感漂う記事。 正規表現でマッチングを行うMatcher 例外メッセージのテストを行うためのRule 例外メッセージのテスト専用のMatcher を作ったので、備忘録程度に。 正しいかどうかは知らないけど、動いてるからOKとする。

YAPC::ASIA 2012 2日目も行ってきた(感想のみ) #yapcasia

ほんと楽しかった。この一言です。 2日間のイベント後でゲームやったりしてだいぶ疲れていて、 聞いてきたセッションの内容を書く気力もないけども。 YAPC::ASIAのようなイベントは初めてで、 ただ技術的な話をたくさん聞けるイベントと思ってましたが、 技…

YAPC::ASIA 2012 1日目に逝ってきた(感想のみ) #yapcasia

聞いたセッションの内容とか詳しい事はほかの人が書いちゃうだろうから、見てきたセッションとその感想とか覚書とか。 LTソンは全く見てません。録画配信期待。

シェルスクリプト(とよくあるコマンド)でexpectのように自動応答させる

標準入力から応答していくタイプのプログラムがよくあります。 9/19 追記 改行が出力されなくても上手く読み出せる方法があるっぽいのでそれを追記。 hello.sh #!/bin/sh echo "what's your name?" echo "input your name:" read name echo "age ?:" read ag…

EclipseでAndroidアプリのデバッグをする際、AVDではなく実デバイス上で行うようにする。

IS12SH, ICONIA TAB A700で確認 前提として、Android-sdkと、EclipseプラグインとしてADTが入っていること。

JUnitのテストランナーをいじる

テストに何らかの拡張を作りこみたいとき、@Ruleアノテーションを使えばだいたいOKですが、 俺俺アノテーションを作ってそれをテストとして認識させたいんだ!!っていう稀有なニーズ(自己満足)に応えることもできます。 今回は、独自のアノテーションで定義…

Javassistで動的クラス生成

ClassPoolからgetして、 setNameで新しいクラス名を設定して、 toClassでClassオブジェクト作る。 package my; public interface SampleIF { String getSimpleClassName(); } package my; public class Sample implements SampleIF { public String getSimpl…

バッチファイルでのsetの罠

@echo off set IN= set /P IN="XXXを入力 > " echo %IN% if "%IN%"=="XXX" ( set /P IN="もう一度、値を入力 > " echo %IN% ) echo %IN% XXXを入力 > XXX XXX もう一度、値を入力 > YYY XXX YYY どういうことなの・・・ set /? より。 set VAR=before if "%V…

CPANの初期設定を間違えた場合に再設定する

PerlいれてCPAN入れて初期設定をEnter連打して飛ばしたら、 CPANのミラーにロクに繋がらない状態になって焦ったので。 cpanで o conf を入力 cpan[1]> o conf $CPAN::Config options from /root/.cpan/CPAN/MyConfig.pm: ...以下略 このファイルを削除するな…

RSSパースべんち in windows

このあたりがよくまとまってました。 http://weblog.nqou.net/archives/20090223224328.html PurePerlなFeedPPが結構頑張ってる印象。 自分で書いたSAXハンドラーがどんなもんか試した。 いろんなパーサーで。 Rate XML::Feed XML::RSS XML::SAX::PurePerl +…

XML::SAXで遊んだ

RSSを扱う用事があったので、普通のRSSリーダを使ってたけども、 ふと、SAXパーサを使って読み取ってみたくなったので、試した。 DOMだと全体を読み取らないとダメなので、場合によってはメモリを食べてしまう。 SAXなら上から読み取って、いくつかのタイミ…

正規表現 雑メモ

ちょろっとPerl正規表現で遊んでたので、適当に書いとく。 式を文字列として書くなど use strict; use warnings; use 5.10.1; # 普通 say 'xyz' =~ /y/; # 1 say 'xyz' =~ 'y'; # 1 # メタ文字 say 'xyz' =~ /.yz/; # 1 say 'xyz' =~ '.yz'; # 1 # オプショ…

Zenbook Prime UX21A-K1256買った。

PC

買いました。 レビューってほどでもないけど、何で選んだのかとか、少し使った感じをだらだらと。

ESXiでもクローンをしたかった。

vCenterとかないと使えない機能だけど、複数の環境を作りたいときはやっぱりクローンはほしい。 といっても、普通にデータストアにディレクトリ作って、vmdkとvmxをコピペすればいいんだけども、 この場合、vmdkの名称が変更できないのがイケてなかったので…

Javaの可変長引数とジェネリックスの裏技的な何か。

最近はJavaしか触ってないので。 参考 Javaの型推論Utilsクラス - yukobaのブログ (型推論とは言い切れない気がするけど。) Java変態文法最速マスター - プログラマーの脳みそ 4. 配列の辺り package my.sample; import static org.junit.Assert.assertEqual…

趣味と仕事と愚痴。

長々書いちゃったので、簡単にまとめると、こんな感じ。まとめ:趣味を仕事にしたら冷めることがある。

Encode::find_encodingで得られるオブジェクトはスレッドセーフ?

Encodeモジュールはスレッドセーフではない、ってどこかに書いてあって、 find_encodingで得られるオブジェクトを使いまわしてる身としては気になったので。 (スレッド間で使いまわすことはないんだけど。) 適当にスレッド作ってループ回してみたけども、 ス…

Mojoliciousでアップロードファイルを受け取った時にMojo::Asset::MemoryかMojo::Asset::Fileか判別する

$file->asset->is_file を使うとファイルか否かの判別ができます。 my $file = $self->req->upload('file'); if($file->asset->is_file){ print("filepath: ". $file->asset->path); # 一時ファイルパスが表示される }else{ print("content: ". $file->asset…

ファイル演算子とopenとベンチマーク

ファイル存在の確認はファイル演算子である、-fを使うと思うのだけど、 openの戻り値を見ても出来るから、もしかしたら・・・と思ってベンチマークとってみた。 use strict; use Benchmark qw(cmpthese); my $filepath = "bench.pl"; cmpthese(10_000, { 'op…

シェルスクリプトで文字列で与えられた相対パスから、ディレクトリの絶対パスを取得する

cdしてpwdする echo $(cd $(dirname '/usr/bin/perl'); pwd) # /usr/bin cd /usr/bin echo $(cd $(dirname 'perl'); pwd) # /usr/bin echo $(cd $(dirname '../bin/perl'); pwd) # /usr/bin もちろんcdに失敗したらカレントディレクトリの情報返しちゃうので…

multipart/form-dataで送信する際、任意のfilename値を指定する

LWPでできるかなって思ってたら、すぐできなかったのでSocket叩いて書いたけど、 調べたら普通にLWPで出来た。ですよねー。 use LWP::UserAgent; use HTTP::Request::Common; my $ua = new LWP::UserAgent; my $res=$ua->request( POST('http://192.168.11.2…

VMWare VIX APIのPerlバインディングの導入(Windows)

VIX APIを使うとゲストOSの操作を行うことが可能になります http://communities.vmware.com/community/vmtn/developer/forums/automationapi VIX-PerlというPerlバインディングが提供されていますが、使うにはビルドする必要があります。 Windows信者なので…