[ 
https://issues.apache.org/jira/browse/FINERACT-1174?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17207959#comment-17207959
 ] 

Michael Vorburger commented on FINERACT-1174:
---------------------------------------------

> just had one package for such reporting plugins and clearly indicated that it 
> is for 3rdparty / external plugins

I'd like to come up with something supporting future plugins more generally, 
not limited to only reporting specifically.

But I guess we could scan e.g. {{org.apache.fineract.plugins}} and folks would 
put plugins into e.g. 
{{org.apache.fineract.plugins.org.mifos.fineract.pentaho}} and 
{{org.apache.fineract.plugins.com.bank.fineract.loans}}... that would be simple 
enough. Or are such long package names too ugly?

> config property to allow the plugin provider to choose it - e.g. 
> @ComponentScan(basePackages = "${scan.packages}")

If that works, somehow with multiple packages, that could be cool; so one would 
launch it e.g. like: {{java 
-Dfineract.plugins.packages=org.mifos.fineract.pentaho,com.bank.fineract.loans 
-cp ...}}. If (something like) that works.. someone would have to try that out! 
:D

> Allow Spring to component-scan plugins in non org.apache.fineract packages
> --------------------------------------------------------------------------
>
>                 Key: FINERACT-1174
>                 URL: https://issues.apache.org/jira/browse/FINERACT-1174
>             Project: Apache Fineract
>          Issue Type: Improvement
>            Reporter: Michael Vorburger
>            Priority: Major
>
> Allow Spring to component-scan plugins in non org.apache.fineract packages
> One of a number of problems that I ran into in FINERACT-1127 was that I 
> initially tried to have the PentahoReportingProcessServiceImpl in 
> https://github.com/vorburger/fineract-pentaho/ in {{package 
> org.mifos.fineract.pentaho}} (which I made up).
> This seemed better than {{package 
> org.apache.fineract.infrastructure.report.service}}, because... well, 
> https://github.com/vorburger/fineract-pentaho IS NOT part of Apache Fineract 
> core, and will never be (due to the incompatible license), but is a "plugin".
> However, this didn't work, because, of course we only 
> {{context:component-scan base-package="org.apache.fineract.accounting.*, 
> ...}} et al. in 
> fineract-provider/src/main/resources/META-INF/spring/appContext.xml (BTW see 
> FINERACT-tbd / PR which proposes to simplify that).
> I've temporarily moved PentahoReportingProcessServiceImpl back to {{package 
> org.apache.fineract}} for the fineract-pentaho POC, but it does raise an 
> interesting general question.. if we want to move in the direction of 
> supporting external plugins in Fineract, what package should we allow them to 
> live in - and how we do component-scan for them?!  I can't think of a good 
> answer.
> [~ptuomola] [~aleks] you perhaps have any thoughts about this?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to