moving the code patterns away from the AspectGenerator