#author("2021-12-14T01:52:21+00:00","","") #author("2021-12-14T02:32:46+00:00","","") // 下階層用テンプレート #topicpath ---- //ここにコンテンツを記述します。 Eclipseのプロキシーの設定は ウィンドウ >> 設定 >> インストール/更新 に記載されていますが、この情報を取得する方法を調べました。 #ref(pic.png) この画面は org.eclipse.ui.preferencePages 拡張ポイントで作成されますが、その実装クラス org.eclipse.update.internal.ui.preferences.MainPreferencePage を見てみると SiteManager.setHttpProxyInfo(enableHttpProxy.getSelection(), httpProxyHostText.getText(),httpProxyPortText.getText()); となっていました。どうやら、このorg.eclipse.update.core.SiteManagerにこのプロキシの情報が格納されている模様です。 ちなみにこの設定は org.eclipse.update.ui プラグインに記述されています。 抜粋 <extension point="org.eclipse.ui.preferencePages"> <page name="%mainPreference.name" class="org.eclipse.update.internal.ui.preferences.MainPreferencePage" id="org.eclipse.update.internal.ui.preferences.MainPreferencePage"> <keywordReference id="org.eclipse.update.ui.general"/> </page> </extension> さて、このクラスorg.eclipse.update.core.SiteManagerですが、ここから値を取り出すためのstaticなメソッドがあります。 org.eclipse.update.core.SiteManager#getHttpProxyPort org.eclipse.update.core.SiteManager#getHttpProxyServer このメソッドを通して、SiteManagerに設定した値が取得できます。 つまり、自分が作ったプラグインも org.eclipse.update.uiを必須プラグインに設定し、上のメソッドを呼び出せばプロキシのアドレスやポート番号を取得することができます。 ---- この記事は #vote(おもしろかった[6],そうでもない[1]) #vote(おもしろかった[7],そうでもない[1]) -調べてみると、割と単純でしたね。でも認証のID/PASSは設定する画面がないので、ココは作り込みかあ。 -- [[きの]] &new{2006-04-05 00:05:54 (水)}; -org.eclipse.core.runtime.Preferences.IPropertyChangeListener 実装して、UpdateCoreのPreferencesにaddしても、設定画面の変更に反応してくれない。。なんで??UpdateCoreがinternalだから??(そんなことできんの?そもそも、internalてEclipse的にはどういう扱いなの?) -- [[きの]] &new{2006-04-05 09:12:41 (水)}; -よく見たら、プロキシを使う・使わないのチェックボックスには反応してるなあ -- [[きの]] &new{2006-04-05 09:25:20 (水)}; #comment #topicpath SIZE(10){現在のアクセス:&counter;}