dimOn писал(а):
Цитата:
ShellFrame.getFrame - не гарантирует получение указателя. Поэтому и просим что-то типа callback после залогинивания пользователя.
как так не гарантирует? очень даже гарантирует, оно ВСЕГДА содержит ссылку на главный frame ,
Гарантировал бы, то не пришлось бы делать так:
Код:
bitel.billing.ShellFrame sf=null;
while(null==sf){
try {
sf=bitel.billing.ShellFrame.getFrame();
System.out.println("sf: "+sf);
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
process(sf);
dimOn писал(а):
это в коде используется в 100500 мест.
Только весь этот код этот получает управление уже после инициализации swinga....
dimOn писал(а):
Калбак КУДА после залогинивания? Чтобы сделать калбак, нужно как минимум какую-то инфраструктуру развернуть вокруг всего этого, не так ли? О чём лично я и спрашиваю сейчас. Вот сейчас есть какой-никакой механизм плагина, оттуда делать такое надо? Или что-то новое придумать? Если что-то новое, то в каком виде?
Нужна какая-то серьезная инфраструктура, что бы вызвать ready() после залогинивания пользователя?
Код:
interface GUIClientCB{
void ready(bitel.billing.ShellFrame); // вызывается после готовности GUI к работе, т.е. ShellFrame и все статичные элементы GUI созданы.
...
}
....
class GUIExt implement GUIClientCB{
...
public static void main(String[] args) {
GUIExt ge=new GUIExt();
bitel.billing.ShellFrame.main(args,ge);
dimOn писал(а):
Как вы хотите видеть э... ну распространение/поддержку/работу своего кода, в каком виде? В виде отдельной jar или как?
Нашего кода? Вроде предполагалось, что вы предоставляете только низкоуровневый API, а всем остальным занимаются пользователи. Поэтому какая разница? Вас же не беспокоит, как пользователи распространяют свои скрипты, или те же manadы? Скрипты, например, можно вообще будет брать из тех же библиотек скриптов, что и для сервера. Или вы хотите включить созданный пользователями верхнеуровневый API в стандартный дистрибутив?
dimOn писал(а):
Вот сейчас есть какой-никакой механизм плагина, оттуда делать такое надо?
Он где-то описан в свободном доступе?