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

Interfaces for core classes #352

Open
roland-ewald opened this issue Jun 27, 2017 · 2 comments
Open

Interfaces for core classes #352

roland-ewald opened this issue Jun 27, 2017 · 2 comments
Milestone

Comments

@roland-ewald
Copy link
Contributor

To work around issues like #350 is very tough right now, because the core annotation classes are based on concrete types (i.e., classes, not interfaces) and, at the same time, these classes are final.

This makes it impossible to extend or adjust the annotation algorithms themselves without introducing much redundancy.

I suggest to extract interfaces for the following classes (and make their callers depend on these interfaces only):

  • VariantAnnotator
  • VariantContextAnnotator
  • AnnotationBuilder (and its sub-types, if necessary)
  • *Decorator (in de.charite.compbio.jannovar.reference)

I'm happy to help with a PR, but this should be approved first (as it could be a bit more work).

@holtgrewe
Copy link
Member

Hi, thanks for your recent tickets.

The reasoning behind keeping everything "locked down" was that we have not designed the classes for extendability (yet) and it is later easier to relax than restrict.

I agree very much with your proposal of opening this up.

How pressing is this for you? Currently, there is few time on our side but that should improve during summer.

@roland-ewald
Copy link
Contributor Author

Hi Manuel,
Glad to hear you agree!

This is not super pressing for us, but at some point would just be really nice.

As I said, I'm also happy to help but I realize this could be a little disruptive (i.e., touching many important files), so I guess it should be planned ahead (e.g. pushed until after the next release or something).

@holtgrewe holtgrewe added this to the Backlog milestone Feb 7, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants