ソースは以下から入手。
main なナニがあるのは cloudmonkey.py です。
ざっくりですがコマンドインタープリタな i/f を云々しているのが CloudMonkeyShell というクラスになっている模様。cmd.Cmd を継承してます。
これって do_hoge ってヤると hoge ってコマンドの callback になるんですね。do_api を見てみるに CloudMonkeyShell#default という手続きを呼び出しています。そして default からは引数を云々した後に CloudMonkeyShell#make_request を呼び出していますね。
その後、make_request 手続きからは monkeyrequest という手続きを呼び出していますが、これは requester.py で定義されております。この monkeyrequest という手続きからは make_request という手続きを呼び出しててレスポンスが戻されてます。
あるいは戻りをパースして云々してますね。
む
これ、requester.py でリクエスト云々な_抽象的ではない_処理をしてるんですが cloudstack でない、という形での機能追加がちょいむずだな。
とりあえず
fog を拡張する方法について別途確認の方向、ということで。
と、思ったら
以下を発見。
これ、何だろ。