Hi Senaka, What about the new proposal?
thanks, dimuthu On Thu, Jun 7, 2012 at 11:53 PM, Senaka Fernando <[email protected]> wrote: > Hi Dimuthu, > > Search for usages of MultitenantConstants.SUPER_TENANT_DOMAIN_NAME in > Registry Kernel, and you'll find all of it. In some places its > > tenantDomain != null && > !MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equals(tenantDomain) > > My feeling is that the fixes done here are not correct. > > Thanks, > Senaka. > > > On Thu, Jun 7, 2012 at 11:50 PM, Dimuthu Leelarathne <[email protected]>wrote: > >> Hi Senaka, >> >> I only saw this in RegistryResolver.java. The general solution would be >> as follows. But there can be exceptions. >> >> >> - if (tenantDomain == null) >> +if (MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equals(tenantDomain)) { >> +//do super tenant something >> +} else if (teanantDomain == null) { >> +//do something - prolly throw exception >> +} >> >> However the opposite should be treated as follows. I think we correctly >> handle this. >> - if (tenantDomain != null) >> +if (!MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equals(tenantDomain)) >> { >> +//do none super tenant thing >> +} >> >> >> Would this solve the situation? >> >> thanks, >> dimuthu >> >> >> On Thu, Jun 7, 2012 at 11:20 PM, Senaka Fernando <[email protected]> wrote: >> >>> Hi Chethiya, >>> >>> There are several such places in the Registry Kernel. This is just one. >>> We need a proper solution to this. How can someone know whether to check >>> for null and decide whether it is super tenant or >>> MultitenantConstants.SUPER_TENANT_DOMAIN_NAME and decide whether it is >>> super tenant? If we go along that path, it will be error prone and it'll be >>> worse than what we had before. >>> >>> Thanks, >>> Senaka. >>> >>> >>> On Thu, Jun 7, 2012 at 11:13 PM, Chethiya Abeysinghe >>> <[email protected]>wrote: >>> >>>> This is >>>> in >>>> ./org.wso2.carbon.registry.core/src/main/java/org/wso2/carbon/registry/app/RegistryResolver.java >>>> and was a fix in recent hackathon. And this is the diff: >>>> >>>> - if (tenantDomain == null) { >>>> + if (tenantDomain == null || >>>> + >>>> MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equals(tenantDomain)) >>>> { >>>> >>>> It was a simple quick replace of the old logic using current mapping of >>>> *tenantDomain* constants. >>>> >>>> It's better to remove "|| MultitenantConstants. >>>> SUPER_TENANT_DOMAIN_NAME.equals(tenantDomain" part I guess. >>>> >>>> In fact do we need to proceed with the normal execution when there is >>>> no tenantDomain in the servlet request? i.e. is it safe to try figure out >>>> the domain name from username. >>>> >>>> In case it's fine, there are two old bugs need to be fixed in >>>> "getUserName()" and "getTenantId()". >>>> >>>> - Chethiya >>>> >>>> >>>>> Going through the code in Registry Kernel I discovered that you have >>>>> made changes to determine whether you are super tenant as follows: >>>>> >>>>> tenantDomain == null || >>>>> MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equals(tenantDomain) >>>>> >>>>> Is this correct? Why are we checking for null or some constant? >>>>> >>>>> Thanks, >>>>> Senaka. >>>>> >>>>> -- >>>>> *Senaka Fernando* >>>>> Member - Integration Technologies Management Committee; >>>>> Technical Lead; WSO2 Inc.; http://wso2.com* >>>>> Member; Apache Software Foundation; http://apache.org >>>>> >>>>> E-mail: senaka AT wso2.com >>>>> **P: +1 408 754 7388; ext: 51736*; *M: +94 77 322 1818 >>>>> Linked-In: http://linkedin.com/in/senakafernando >>>>> >>>>> *Lean . Enterprise . Middleware >>>>> >>>>> >>>>> _______________________________________________ >>>>> Dev mailing list >>>>> [email protected] >>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> Chethiya Abeysinghe >>>> Software Engineer; WSO2, Inc.; http://wso2.com/ >>>> email: [email protected] phone: +94 777444891 >>>> blog: chethiya3000.blogspot.com >>>> >>>> >>>> >>> >>> >>> -- >>> *Senaka Fernando* >>> Member - Integration Technologies Management Committee; >>> Technical Lead; WSO2 Inc.; http://wso2.com* >>> Member; Apache Software Foundation; http://apache.org >>> >>> E-mail: senaka AT wso2.com >>> **P: +1 408 754 7388; ext: 51736*; *M: +94 77 322 1818 >>> Linked-In: http://linkedin.com/in/senakafernando >>> >>> *Lean . Enterprise . Middleware >>> >>> >> >> >> -- >> Dimuthu Leelarathne >> Architect & Co-Chair of Platform Management Committee >> >> WSO2, Inc. (http://wso2.com) >> email: [email protected] >> >> >> Lean . Enterprise . Middleware >> >> > > > -- > *Senaka Fernando* > Member - Integration Technologies Management Committee; > Technical Lead; WSO2 Inc.; http://wso2.com* > Member; Apache Software Foundation; http://apache.org > > E-mail: senaka AT wso2.com > **P: +1 408 754 7388; ext: 51736*; *M: +94 77 322 1818 > Linked-In: http://linkedin.com/in/senakafernando > > *Lean . Enterprise . Middleware > > -- Dimuthu Leelarathne Architect & Co-Chair of Platform Management Committee WSO2, Inc. (http://wso2.com) email: [email protected] Lean . Enterprise . Middleware
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
