2012-08-28 3 views
0

Я пытаюсь создать пул регистрации OSGi, который сможет регистрировать параметры ввода, вывода, исключения (если есть) всех методов, которые отмечены определенной аннотацией.Проверьте, вызван ли метод.

Я попытался установить SpringAOP регистрацию в OSGi, но я не увенчался успехом.

Все, что мне нужно знать, как определить, когда вызывается метод? Например, я просмотрел все методы в классе, которые аннотируются с моей аннотацией, и у меня есть эти методы в массиве или списке.

Например, существует три метода: getStatus, getDetails, getSomething. И пользователь вызывает метод getDetails, так как я должен знать, когда этот метод вызывается?

+0

http://stackoverflow.com/questions/442747/getting-the-name-of-the-current-executing-method/8592871#8592871 – pb2q

ответ

0

Для вызова метода обнаружения требуется instrument your code. Если вы хотите сделать это во время выполнения, это требует манипуляции с байтовым кодом (что, как мне известно, является Spring AOP). В качестве альтернативы вы можете использовать код во время компиляции, используя специальный шаг предварительной обработки, который генерирует инструментальный Java-код, но я не знаю, намного ли это проще.

Я думаю, ваш лучший выбор - попытаться использовать Spring AOP.

Смежные вопросы