6

Effective Java, along with other sources suggest that we should consider using composition over inheritance. I have often found my self achieving such composition by using the Decorator pattern and implementing forwarding methods that delegate invocations to a wrapped object.

However, I often find myself writing many simple forwarding methods of the type:

public void myMethod(String name) {
    instance.myMethod(name);
}

Is there anyway of auto-generating these forwarding methods within Eclipse (3.4.x)?

Community
  • 1
  • 1
teabot
  • 15,088
  • 9
  • 62
  • 78

2 Answers2

13

In the Source menu choose "Generate Delegate Methods". It will give you a list of methods available on any of your fields that you can have the current object forward to.

Jason Gritman
  • 5,181
  • 4
  • 28
  • 38
1

You could write a custom template (Window > Preferences > filter on "Template") that has a placeholder for the method name and parameter name.

Jeff Storey
  • 54,892
  • 71
  • 228
  • 402