Okay. Thank you. I will check. Regards, Swapnil
On Tue, Aug 11, 2015 at 12:25 AM, Imesh Gunaratne <im...@apache.org> wrote: > Check the TopologyManager. It should have a method to get cluster objects > by providing the cluster id. > > On Mon, Aug 10, 2015 at 11:53 PM, Swapnil Patil <swapnil.r...@gmail.com> > wrote: > >> Hi Imesh, >> >> Thanks! Even I think this should be the way forward. But the problem I am >> facing is I am not able to figure out a way to find Service Type using >> cluster id. >> >> Could you please let me know how we can do this? >> >> Thanks and Regards, >> Swapnil >> >> On Mon, Aug 10, 2015 at 3:56 AM, Imesh Gunaratne <im...@apache.org> >> wrote: >> >>> Hi Swapnil, >>> >>> We need to think out of the box here, add a new field to the >>> DomainMappingBean to send the Cluster ID from the client. Users can either >>> use the Alias or Cluster ID depending on the API method they use. >>> >>> In the API method implementation use the Cluster ID to find the Service >>> Type and invoke the above service method. >>> >>> Thanks >>> >>> On Mon, Aug 10, 2015 at 12:03 AM, Swapnil Patil <swapnil.r...@gmail.com> >>> wrote: >>> >>>> Hi Imesh, >>>> >>>> Sorry, I am not sure I got you. Just to reiterate what I want to say. >>>> >>>> In convertDomainMappingBeanToStubDomainMapping() method, >>>> DomainMappingBean is used to fill two fields domain name and context path >>>> of DomainMapping object. >>>> >>>> Now to execute following statements. >>>> >>>> domainMapping.setServiceName(clusterDataHolder.getServiceType()); >>>> >>>> domainMapping.setClusterId(clusterDataHolder.getClusterId()); >>>> >>>> clusterDataHolder is needed which can only be retrieved using cluster >>>> alias. But alias will not be available in extension. >>>> >>>> So I just wanted to check if we can pass both cluster id and service >>>> type (But not cluster alias) as a part of JSON which will be a part of >>>> DomainMappingBean. >>>> Hence we do not need clusterDataHolder object in this case (so no need of >>>> cluster alias). >>>> >>>> Thanks and Regards, >>>> Swapnil >>>> >>>> >>>> On Sun, Aug 9, 2015 at 5:43 PM, Imesh Gunaratne <im...@apache.org> >>>> wrote: >>>> >>>>> I do not see any problems in implementing this. Refer following: >>>>> >>>>> >>>>> https://github.com/apache/stratos/blob/master/components/org.apache.stratos.rest.endpoint/src/main/java/org/apache/stratos/rest/endpoint/api/StratosApiV41Utils.java#L2597 >>>>> >>>>> DomainMapping domainMapping = >>>>> ObjectConverter.convertDomainMappingBeanToStubDomainMapping( >>>>> domainMappingBean); >>>>> domainMapping.setApplicationId(applicationId); >>>>> domainMapping.setTenantId(tenantId); >>>>> >>>>> domainMapping.setServiceName(clusterDataHolder.getServiceType()); >>>>> >>>>> domainMapping.setClusterId(clusterDataHolder.getClusterId()); >>>>> serviceClient.addDomainMapping(domainMapping); >>>>> >>>>> On Sun, Aug 9, 2015 at 8:53 PM, Swapnil Patil <swapnil.r...@gmail.com> >>>>> wrote: >>>>> >>>>>> Hi All, >>>>>> >>>>>> I need to add a REST method to add domain mappings using cluster id. >>>>>> Currently the request needs a JSON object with cartridge alias, domain >>>>>> name >>>>>> and context path. >>>>>> >>>>>> But I need to add a REST method which support adding domain mapping >>>>>> using cluster id instead of alias. >>>>>> >>>>>> Currently alias is used to find out cluster data and in turn service >>>>>> type and cluster id out of that cluster data. >>>>>> >>>>>> But the cluster data cannot be found using cluster id. Hence we >>>>>> cannot find the service type. >>>>>> >>>>>> So I need to follow either of the following ways. >>>>>> >>>>>> 1. Get cluster data from cluster id. I do not have any idea how to do >>>>>> this. Could someone please let me know if this is possible. >>>>>> 2. Add both service type and cluster id in the request JSON for >>>>>> adding domain mappings. >>>>>> >>>>>> I hope it is OK if we add a field or more in DomainMappingBean class >>>>>> but those be optional in JSON request. So we can add domain mapping using >>>>>> either alias or a combination of cluster id and service type. Could >>>>>> someone >>>>>> please let me know if this is possible. >>>>>> >>>>>> Code references >>>>>> >>>>>> 1. StratosApiV41Utils.java - In addApplicationDomainMappings, service >>>>>> type needs to be set to >>>>>> org.apache.stratos.manager.service.stub.domain.application.signup.DomainMapping >>>>>> object. Which we can get by ClusterDataHolder object. >>>>>> 2. ParentComponent.java - ClusterDataHolder is extracted from >>>>>> org.apache.stratos.messaging.domain.application.Application object. Which >>>>>> extends ParentComponent which has getClusterData(alias) method. This uses >>>>>> aliasToClusterDataMap. There is no clusterIdToClusterDataMap. >>>>>> >>>>>> Thanks and Regards, >>>>>> Swapnil >>>>>> >>>>>> On Mon, Jul 27, 2015 at 3:37 AM, Swapnil Patil < >>>>>> swapnil.r...@gmail.com> wrote: >>>>>> >>>>>>> Oh Okay. Sorry I missed this suggestion during the meeting. I will >>>>>>> look into this. >>>>>>> >>>>>>> Thanks and Regards, >>>>>>> Swapnil >>>>>>> >>>>>>> On Mon, Jul 27, 2015 at 2:59 AM, Imesh Gunaratne <im...@apache.org> >>>>>>> wrote: >>>>>>> >>>>>>>> As we discussed in the last meeting, may be you could add a new API >>>>>>>> method to use the cluster id instead of the alias. >>>>>>>> >>>>>>>> On Sun, Jul 26, 2015 at 10:51 PM, Swapnil Patil < >>>>>>>> swapnil.r...@gmail.com> wrote: >>>>>>>> >>>>>>>>> Thanks Ashan! >>>>>>>>> >>>>>>>>> But unfortunately I don't have access to application id. So this >>>>>>>>> method will not be useful for me. >>>>>>>>> >>>>>>>>> Thanks and Regards, >>>>>>>>> Swapnil >>>>>>>>> >>>>>>>>> On Sun, Jul 26, 2015 at 10:40 AM, Ashan Dhananjaya < >>>>>>>>> dhananjay...@gmail.com> wrote: >>>>>>>>> >>>>>>>>>> Hi Swapnil, >>>>>>>>>> >>>>>>>>>> You can get the cluster details using this api call. >>>>>>>>>> >>>>>>>>>> curl -k -u admin:admin >>>>>>>>>> https://localhost:9443/api/v4.1/applications/{applicationId >>>>>>>>>> }/runtime/ >>>>>>>>>> curl -k -u admin:admin >>>>>>>>>> https://localhost:9443/api/v4.1/applications/tomcat-single-signon/runtime/ >>>>>>>>>> >>>>>>>>>> I hope this may help. >>>>>>>>>> >>>>>>>>>> Thank You! >>>>>>>>>> Best Regards, >>>>>>>>>> Ashan >>>>>>>>>> >>>>>>>>>> On Sun, Jul 26, 2015 at 3:45 PM, Swapnil Patil < >>>>>>>>>> swapnil.r...@gmail.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hi All, >>>>>>>>>>> >>>>>>>>>>> I want to add domain mappings to a cluster as a part of AWS load >>>>>>>>>>> balancer extension functionality. >>>>>>>>>>> >>>>>>>>>>> For that I went through [1]. But I have a couple of doubts. >>>>>>>>>>> >>>>>>>>>>> 1. In the request, I need to specify cartridge alias. But I am >>>>>>>>>>> not able to find a way to get the alias of a cluster using Service >>>>>>>>>>> or >>>>>>>>>>> Cluster objects of org.apache.stratos.load.balancer.common.domain. >>>>>>>>>>> Is there >>>>>>>>>>> any way to find out alias of a cluster? >>>>>>>>>>> 2. What does a context path mean? >>>>>>>>>>> >>>>>>>>>>> [1] >>>>>>>>>>> https://cwiki.apache.org/confluence/display/STRATOS/4.1.0+Adding+Domain+Mappings+via+REST+API >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Thanks and Regards, >>>>>>>>>>> Swapnil >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Imesh Gunaratne >>>>>>>> >>>>>>>> Senior Technical Lead, WSO2 >>>>>>>> Committer & PMC Member, Apache Stratos >>>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> Imesh Gunaratne >>>>> >>>>> Senior Technical Lead, WSO2 >>>>> Committer & PMC Member, Apache Stratos >>>>> >>>> >>>> >>> >>> >>> -- >>> Imesh Gunaratne >>> >>> Senior Technical Lead, WSO2 >>> Committer & PMC Member, Apache Stratos >>> >> >> > > > -- > Imesh Gunaratne > > Senior Technical Lead, WSO2 > Committer & PMC Member, Apache Stratos >