Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Applied skeletal implementation to interface migration automated refactoring #258

Merged
merged 1 commit into from
Jul 22, 2016

Conversation

khatchad
Copy link

This is a semantics-preserving automated refactoring that migrates existing method implementations in classes to the corresponding implemented interface methods as default methods. The tool does not add new code; it only rearranges existing code.

  • We are evaluating a research prototype automated refactoring Eclipse plug-in called Migrate Skeletal Implementation to Interface. We have applied the tool to your project in the hopes of receiving feedback.
  • The approach is very conservative. That may mean that not all changes that can be made were made. Please feel free to continue the refactoring manually if you wish.
  • We only migrated methods declared in abstract classes with the hopes of such methods being suitable default methods in corresponding interfaces.
  • The source code should be semantically equivalent to the original.

Thank you for your help in this evaluation! Any feedback you can provide would be very helpful. In particular, we are interested if each of the proposed changes are helpful or not.

…ctoring.

Used only methods form abstract classes as input. This step was completely automated.
@johnmcclean
Copy link
Member

That's really cool. I think @lukaseder may be interested in automated refactoring from default interfaces to concrete types if that is possible also (see jOOQ/jOOL#158)

@khatchad
Copy link
Author

khatchad commented Jul 18, 2016

Oh! Interesting! Thanks!

@johnmcclean johnmcclean merged commit 91f0d98 into aol:master Jul 22, 2016
@khatchad
Copy link
Author

khatchad commented Jul 22, 2016

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants