Open SingingBush opened 1 year ago
perhaps another option would be for the annotation to support full package path:
@java-interface("com.company.schema.users.EndUser")
I am not sure I understand - what would be the difference between interfacePackages = 'com.company.schema.*'
and interfacePackage = 'com.company.schema'
? If you need recursive scan of interfaces in subpackages, then I believe it is done by default.
But if you need to explicitly list multiple packages, I think it may be possible through undocumented feature - https://github.com/tunguski/interfacer/blob/master/interfacer-core/src/main/java/pl/matsuo/interfacer/core/ClasspathInterfacesScanner.java#L36.
I'll give this another go then. When I was trying to use it a few days ago I seemed to need to specify the full package path to a single package where I had some interfaces and in the annotation just pit the interface name. I have a few other packages that I want to use interfaces for so I'll give interfacePackage = 'com.company.schema'
a go and confirm if all ok.
I like being verbose though so if interfacePackage = 'com.company.schema.core,com.company.schema.users,com.company.schema.products'
is already a working feature I'm happy.
Potentially this is just a case of making the documentation more clear that interfacePackage can be comma separated values.
Hi, I've setup interfacer to process some generated java files that are output by the gradle-avro-plugin
so far this is working fine but within my project I have interfaces in different packages based on areas of concern. It would be good if instead of having interfacePackage that I could either specify something like
interfacePackages = 'com.company.schema.*'
or perhapsinterfacePackages = ['com.company.schema.core', 'com.company.schema.users', 'com.company.schema.products']