Можно хотеть рассмотреть рассмотрение исходный код, перепроектирующий инструменты. Существует два инструмента, о которых я знаю:
, Оба инструмента предлагают подобные наборы функций, которые включают статический анализ, который производит графики отношений между модулями в программном обеспечении.
Это главным образом состоит из благопристойности типа/класса и графов вызовов. Просмотр этой информации должен дать Вам хорошее изображение того, как части кода касаются друг друга. Используя эту информацию, можно вырыть в фактический источник для частей, что Вы больше всего интересуетесь и что необходимо понять/изменить сначала.
Поскольку вы уже упомянули «сквозные проблемы», я бы сказал, что вам нужно перехватывать ваши вызовы веб-сервисов в стиле AOP (не включаемый механизм).
Grails полностью интегрирован с средой Spring , поэтому это хороший вариант для использования возможностей Spring AOP. Взгляните на эту главу из официального руководства grails: http://grails.org/doc/latest/guide/14.%20Grails%20and%20Spring.html и найдите слово AOP.
Может быть, есть чисто отличный способ выполнения АОП, но я бы выбрал грааль и пружину.
Посмотрите на функцию оценки (File):
Object evaluate(File file)