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

Felix Meschberger edited comment on SLING-2656 at 11/9/12 10:46 PM:
--------------------------------------------------------------------

Thanks for the patch. Basically looks good.

I have applied it as extensions/tenant module in the contrib section in Rev. 
1407672 with a few modifications:

Moved the API to org.apache.sling.tenant and moved the implementation to 
org.apache.sling.tenant.impl

Stripped down the API to not provide an addition method. For now the API only 
allows reading tenant information so we should not support creating tenants. I 
also removed the TenantProvider.getTenantByName method. I am not sure, whether 
this is really usefull. 

I am not sure about the TenantProvider.getTenants(String filter): Should this 
throw the InvalidSyntaxException ? Somehow this does not feel right.

To allow for the TenantAdapterFactory to make use of the tenant resolution 
without exposing implementation details through the API, the adapter factory is 
not a separate component but is created from the TenantProviderImpl and 
registered as a separate service. Maybe it would even make sense to combine 
them both in a single class.

As for tenant administration: I suggest you create a Web Console plugin which 
allows to create, modify and remove tenants and maybe pluggable support to 
configure tenants on creation.

And added the new module to the contrib reactor in Rev. 1407677.
                
      was (Author: fmeschbe):
    Thanks for the patch. Basically looks good.

I have applied it in Rev. 1407672 with a few modifications:

Moved the API to org.apache.sling.tenant and moved the implementation to 
org.apache.sling.tenant.impl

Stripped down the API to not provide an addition method. For now the API only 
allows reading tenant information so we should not support creating tenants. I 
also removed the TenantProvider.getTenantByName method. I am not sure, whether 
this is really usefull. 

I am not sure about the TenantProvider.getTenants(String filter): Should this 
throw the InvalidSyntaxException ? Somehow this does not feel right.

To allow for the TenantAdapterFactory to make use of the tenant resolution 
without exposing implementation details through the API, the adapter factory is 
not a separate component but is created from the TenantProviderImpl and 
registered as a separate service. Maybe it would even make sense to combine 
them both in a single class.

As for tenant administration: I suggest you create a Web Console plugin which 
allows to create, modify and remove tenants and maybe pluggable support to 
configure tenants on creation.
                  
> Multitenancy support
> --------------------
>
>                 Key: SLING-2656
>                 URL: https://issues.apache.org/jira/browse/SLING-2656
>             Project: Sling
>          Issue Type: New Feature
>          Components: API, JCR
>    Affects Versions: API 2.2.4
>            Reporter: Amit Gupta
>            Assignee: Felix Meschberger
>         Attachments: org.apache.sling.tenant-0.0.1-SNAPSHOT-src.zip
>
>   Original Estimate: 168h
>  Remaining Estimate: 168h
>
> Adding support for proposal listed at
> https://cwiki.apache.org/SLING/multitenancy-support.html

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to