SHIBUYA 3%

(元在宅が)渋谷で働くエンジニアの備忘録的memo & 雑記 - ココロはいつもSHIBUYAに在り

Javaのバージョンをコマンドで簡単に切り替える(Mac限定)

最近java9でいろいろイジりながらも、職場はまだ8だったり、java系のツールでjava9で動かないこともあり簡単に切り替える方法ないかと模索していて、個人的な着地点を見つけれたのでメモ。 環境 Mac Sierra Python2系(Macのデフォルトで入ってたやつ) peco…

Javaでテスト用の空きポートを取得する(TCP)

数行で書けたのでメモ。 (今回の書き方は取得してすぐに解放しているので、実際に取得ポートを取得するまでの僅かな間に、参照できなくなる可能性もあります。) public static int getFreePort() { return IntStream.range(1025, 65535) .filter(i -> { tr…

SpringBootでパラメータ名がスネークケースだった時に一律でキャメルに変換して@ModelAttributeオブジェクトにマッピングさせようと試みた時の挫折メモ

結果として難しそうなので諦めましたが、いろいろ調べたところまでと、妥協案のメモです。 前提として、データをひも付けたオブジェクトに対してBean Validationによるチェックもする予定です。 (レスポンスは適当でOKと返るだけです。) 流れとしては、 リ…

SpringBootの起動時のAsciiアートを変更するメモ

公式ドキュメント参照 https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-spring-application.html ソースは以下を参照 org.springframework.boot.ansi (Spring Boot Docs 1.3.3.RELEASE API) Asciiアートは以下サイトで生成 T…

Ansibleを使ってMacにgitconfigを設定する

(追記) Ansible 2.1からgit_configモジュール出た模様。 https://docs.ansible.com/ansible/git_config_module.html 3月になって自分のMacにEl Capitanをクリーンインストールしたので、環境構築をAnsibleを使って次からコマンド一発で大体出来上がるよう…

Java8で二次元配列をMapに変換するメモ

private static final String[][] PARAMETERS = { {"param1","1"}, {"param2","2"}, {"param3","3"}, {"param4","4"}, {"param5","5"}, {"param6","6"}, {"param7","7"}, {"param8","8"}, {"param9","9"}, {"param10","10"} }; Map<String, String> paramMap = Stream.of(PAR</string,>…

UIがないAction Extensionを試す

事前に適当にSingle View Applicationでプロジェクトを生成 CapabilitiesでApp GroupsをONに切り替える(未使用だけどメモ) アカウントが聞かれます 設定済みであれば選択。未設定の場合は新規に設定 今回事前にAppleのdevサイトでApp Groupsを登録してあり…

commons-lang2系と3系のStringUtils.isNumericの動作の違いメモ

以前、仕事でライブラリのアップデート調査をしてた時にすでにわかってたつもりだったけど、 今日、別プロジェクトでバグとして上がってきたのでメモ。 バグの原因になっていたのは空文字の場合 s = "" println org.apache.commons.lang.StringUtils.isNumer…

MacにJava9を入れてjshellを動かすまでのメモ

環境 Mac OS X Yosemite インストール JDK 9 Early Access Releases — Project Kenai 完了して確認 $ /usr/libexec/java_home -V Matching Java Virtual Machines (5): 9, x86_64: "Java SE 9-ea" /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Hom…

MacにOracle Databaseを入れようとして頑張っみたけど・・

結果、諦めました。 会社で11gを使っていてローカルで検証やチューニングを試してみたいと思ったのがきっかけ。 (DBAじゃないので、色々出来ない) 諦めてVirtualBoxにUbuntuいれて、Oracle Databaseを入れてみた VirtualBoxをVagrant経由で使う vagrant、V…

Debug/Releaseで定数を使い分けれるWrapperクラスを書く

以前書いた記事で、 Swiftでの環境変数を使ってDebug/Releaseで定数を使い分ける - SHIBUYA 3% User-Definedを使ってDebug/Releaseでそれぞれ設定した値を取得できるようになったんですが、 やはり、毎回NSBundle.mainBundle().objectForInfoDictionaryKey("…

Debug/Releaseのアプリを端末に共存させる方法メモ

前の記事で書いたUser-Definedを使用します。 Swiftでの環境変数を使ってDebug/Releaseで定数を使い分ける - SHIBUYA 3% User-DefinedにDebug時に使用するSuffix文字列を定義する 今回は以下の2つを定義して、Debugのみ記載します BUNDLE_IDENTIFIER_SUFFIX…

Swiftでの環境変数を使ってDebug/Releaseで定数を使い分ける

昔Objective-Cを少しやってましたが、2016年はSwiftを0から学ぼうと思います。 Objective-Cをやってた1年前はマクロで分岐して、それぞれ定数を宣言してましたが、 Xcodeを使ってうまいことやれば、コードで書く必要がなく定数の値が切り出せるようなので試…

IntelliJ IDEAでLive Templatesを使ってみる&Snippetを登録してみる

環境 Mac OS X Yosemite IntelliJ IDEA 15 ( Keymaps Mac OS X 1.5+ ) ショートカット command + j : 登録してあるLive Templatesの一覧を開く(選択で展開) option + command + j : ↑と同様。+選択箇所を囲ってくれる Preferencesから既存のLive Template…

mitmproxyを使って実機からMacのローカルAPにアクセスする

スマホのパケットフィルタリングとして前回書きましたが、 仕事で実機(iPhone)からMacのローカルAPにアクセスしたいケースがあったのでメモ。 mitmproxyを使ってアプリのパケットをキャプチャする - SHIBUYA 3% mitmproxyを使ってアプリのパケットをキャプチ…

mitmproxyを使ってアプリのパケットキャプチャを試す

まず↓↓↓コチラ↓↓↓を参考にしました。 というか全部載ってます。 iOS実機のSSL通信をプロキシによって傍受したり改ざんする方法 - Qiita 各種インストール $ brew install python $ easy_install pip $ pip install mitmproxy 証明書をiPhoneにインストール c…

SlackとHubotを連携させてherokuにデプロイする

ChatOpsという運用スタイルをちょっとずつ導入していきたいと思い、 まずはその準備として、環境構築からチャットツール(ココではSlack)に いろいろ投稿できるようにするところまで。 ※いずれ Pull Requestしたら通知したり、CIでテスト終了後のステータス…

シェルと排他制御メモ

sh

↓どこかで見つけたサンプル。。 #!/bin/sh LOCKFILE=test.lock lockfile -r 0 $LOCKFILE # evaluate return code if [ $? -ne 0 ]; then echo "Command aborted" # error終了 exit 1 fi # do something exclusive command echo "important command" # unlock…