Иногда необходимо расширять рамки. Иногда необходимо подключиться к жизненному циклу запроса/ответа, например, для привязки параметра или для записи защитного модуля. Как это можно сделать в playframework 1.x?
Как расширить игровой режим?
Ответ 1
Существует два способа расширения воспроизведения 1.x. Сначала вы можете написать свой собственный модуль. Это подробно описано здесь. Это полезно, если вы хотите предоставить библиотеку, такую как iText, или предоставить специальный механизм проверки подлинности.
Второй способ - написать PlayPlugin
. Это часто делается в модулях, но это не является необходимым условием. Для записи PlayPlugin
требуется два шага:
- Напишите класс, который расширяет класс
PlayPlugin
и переопределяет некоторые из методы, например, называетсяmyPackage.MyPlugin
. - Зарегистрируйте свой плагин. Это делается путем создания файла с именем
play.plugins
и помещения его в путь к классам. Файл должен содержать строку типа1003:myPackage.MyPlugin
.
Число определяет порядок, в котором вызываются плагины. Я рекомендую использовать ids > 1000. Если вы хотите, чтобы он загружался до плагина framework, посмотрите здесь (Иды действительны с 1.1.1).
Что это. Чтобы получить представление о том, что вы можете сделать с плагином, см. javadoc. Вы можете подключиться к:
- Цикл запроса/ответа
- Процесс привязки
- начало/остановка приложения
- загрузки классов
К сожалению, документация javadoc минимальна, но не стесняйтесь смотреть на код самой playframework. Это легко понять и дает вам хорошие идеи.