GAE/Jで開発サーバのときだけ振る舞いを変えたい
GAE/Jで開発サーバのときだけ振る舞いを変えたいことがありますよね。例えば、Slim3のHOT reloadingオプションを開発のときはtrueで、本番サーバのときはfalseにするときなど。
開発用のサーバかどうかは、ServletContext.getServerInfo()が返す値にDevelopmentが含まれているかどうかで知ることができます。
これを利用して、最新のSlim3では、開発用と本番(Cloud)用で自動的にHOT reloadingのオプションが切り替わるようになりました。うっかり本番用のサーバにHOT reloading:trueでデプロイしてしまうこともなくなります。