Can I wrap an existing extensionPoint implementation?
We have a very large repo, containing shareable source and resources for multiple projects. This is much too large for IntelliJ to index; one approach we take is to create a project (`.iml` file and `.idea` folder) in a directory full of symlinks to actual source files and directories.
This works pretty well, but we do have problems with the Move Package refactoring when the paths include symlinks. It seems that I can probably resolve this by wrapping the appropriate `MoveHandlerDelegate` and resolving any symlinks before delegating to the JB code ... but it's not clear to me how I would get the current Java `MoveHandlerDelegate`.
Q1: Is this the right approach?
Q2: How would I get the code to wrap?
请先登录再写评论。
In my experience, symlinks create more problems than they solve :( I don't quite understand, how do you use them to reduce the project so I can't say whether it's a right way or not.
We have recently added the "Unloaded Modules" feature - have you tried it?
Regarding Q2. There is no specific machinery to warp an EP, but one may register a new implementation and use the "order" attribute to place it before the existing EP.
Thanks, though my Q1 was asking if wrapping the MoveHandlerDelegate was the right way to solve the package-move problem.
Sounds like it isn't, if there is no way to get the current implementation.
Again, that depends on the layout of the symlinks. I mean, it could be a bug in IDEA, or the layout may be too exotic. Is it possible to create a sample project which demonstrates the issue?
It would be great if it were an IJ bug and you fixed it. I'll see if I can create a sample project, though my guess is that this is a 'family of issues'.