Eclipse refactor overridden method into final and abstract parts
===

I have a method which i'd like to refactor

Basically i want to split the top level method in a abstract and a final part.
The method in question is overridden in quite a few places where additional functionality is added, but eventualy the super call is always made.

The code now basically look like:
(not all Extending classes override but those that do, do it this way)

    class Base {
    
    public Object getStuff(String key) {
     out = //code to get data from the Database.
     return out
    }
    
    class Extended1 extends Base {
       public Object getStuff(String key) {
          if("some_non_db_value".equals(key)) {
             return "some custom stuff";
          }
          return super.getStuff(key);
        }
    }


What i'd like as a result would be something like:

    class Base {
    
    public final Object getStuff(String key) {
       out = getCustom(key);
       if(out != null) {
          return custom;
       }

       out = //code to get data from the Database.
       return out
    }
    
    public abstract Object getCustom(String key);
}
    
    class Extended1 extends Base {
       public Object getCustom(String key) {
          if("some_non_db_value".equals(key)) {
             return "some custom stuff";
          }
          return null;
        }
    }

I was hoping there would be a refactor action (or partial refactor) to get to (or closer to) this point.

