2016-06-19 8 views
5

Есть примеры, когда различные объекты вводятся в презентатор, но я не могу найти объяснение, как это можно сделать.Как добавить объект Session/User после начальной загрузки?

В примере Bootstrap-Code они вводят, например, a SecurityDelegate объект.

Также в примере Gatekeeper я вижу вещи, которые вводят, например. MyGatekeeper, но как это делается?

Что я хочу, это сначала проверить, зарегистрирован ли пользователь, а затем создать объект CurrentSession или что-то в этом роде. Но как я могу передать/вставить этот объект?

В данный момент я инициализирую объект singleton CurrentUser, который является своего рода уродливым imho. Я хотел бы получить поддержку GWTP, но как?


Возьмите этот пример CurrentSession впрыскивается в привратника:

@DefaultGatekeeper 
public class LoggedInGatekeeper implements Gatekeeper { 
    private final CurrentSession currentSession; 

    @Inject 
    LoggedInGatekeeper(CurrentSession currentSession) { 
     this.currentSession = currentSession; 
    } 

    @Override 
    public boolean canReveal() { 
     return currentSession.isLoggedIn(); 
    } 
} 

Как впрыснуть CurrentSession здесь?

+0

Ничего себе, этот вопрос пережил 20h с абсолютно неправильными тегами без down-голосов: D Извините за это, я исправил те теги. – displayname

+0

Должен быть набит. Кажется, никто не знает или не пропустил это. –

+1

@ Эдвин Теновим Нободой знает. Фантастика! XD – displayname

ответ

0

Вот учебник, который объясняет, как использовать Gatekeeper: класс http://dev.arcbees.com/gwtp/tutorials/tutorial-part2.html

Declare CurrentSession (в CurrentUser в учебнике), как Singleton в модуле вашего Gin как ниже:

public class YourGinModule extends AbstractGinModule { 

    @Override 
    protected void configure() { 
     bind(CurrentSession.class).in (Singleton.class); 
     ... 
    } 

} 

Здесь Вы можете найти другой пример с использованием GWTP Gatekeeper на стороне клиента и Spring Security на стороне сервера: https://github.com/imrabti/gwtp-spring-security