package burp;
import java.awt.Button;
import java.awt.Component;
public class BurpExtender implements IBurpExtender,ITab{
private IBurpExtenderCallbacks callbacks;
private Component comp;
@Override
public void registerExtenderCallbacks(IBurpExtenderCallbacks callbacks) {
this.callbacks = callbacks;
comp = new Button();
callbacks.setExtensionName("test");
callbacks.addSuiteTab(BurpExtender.this);
}
@Override
public String getTabCaption() {
return "testTabCaption";
}
@Override
public Component getUiComponent() {
return comp;
}
Extenderで読み込んだ時に最初に呼ばれるのがregisterExtenderCallbacksメソッドです。
BurpのExtenderはregisterExtenderCallbacksのメソッドを実装しないと、動かない。
引数で渡されたcallbacksをこのクラス(BurpExtender)の変数に格納する。
その後にjavaのコンポーネントであるjava.awt.ComponentのButtonクラスをComponentの変数に格納する。
そしてIBurpExtenderCallbacks内のメソッドsetExtensionNameで名前を書く。
で、callbacksのaddSuiteTabメソッドで、BurpExtender自身にタブを追加する。
Itabをimplementしたので、getTabCaptionメソッドでタブの表示名を付ける。
getUiComponentメソッドにComponent(ここではButton)を返す。
これで、タブの追加を行うことが出来る。