Hi, Thanks everyone, I will proceed. On Tue, Nov 4, 2014 at 11:11 PM, Janaka Ranabahu <[email protected]> wrote:
> > > On Tue, Nov 4, 2014 at 11:06 PM, Mahesh Chinthaka <[email protected]> > wrote: > >> Hi Janaka, >> We initially decided to implement unDeployArtifact() in AbstractDeployer, >> now it seems better to implement it in AbstractStratosDeployer. >> +1 to implement it in AbstractStratosDeployer. >> > +1 for implementing it in the AbstractStratosDeployer since that is the > default place for all the stratos deployment related implementations. > > Thanks, > Janaka > >> @Harsha, >> WDYT ? >> >> On Tue, Nov 4, 2014 at 11:00 PM, Janaka Ranabahu <[email protected]> wrote: >> >>> Hi Mahesh, >>> >>> On Tue, Nov 4, 2014 at 10:51 PM, Mahesh Chinthaka <[email protected]> >>> wrote: >>> >>>> Hi Harsha, >>>> While following other codes i was able to figure out some usages and >>>> below is what im going to do. Let me know if anything wrong. >>>> >>>> >>>> *getRepositoryProviderAdminPassword()* >>>> *getRepositoryProviderAdminUser()* >>>> >>>> These two can be solved. We can >>>> use DeployerUtil.getRepositoryProviderProperty to get the repository >>>> provider admin username and password >>>> >>>> Please note that the current implementation of those methods are in the >>> NonBuildableArtifactDeployer. Please move them to AbstractStratosDeployer >>> so that in future, any deployment related operation for stratos can use >>> them. >>> >>>> >>>> *getGitRepoUrlForTenant()* >>>> >>>> RepositoryManager.getAppRepositoryURL can be used to do the job. >>>> >>>> Why can't you use the generateRepoUrl() method in >>> AbstractStratosDeployer for this. I didn't compare the implementations of >>> those 2 but they might be different since we are using 2 templates for Git >>> and S2Git. So please check that too. >>> >>>> >>>> *getServerDeploymentPaths()* >>>> >>>> This will be moved to AbstractDeployer. >>>> >>>> I would rather suggest to use AbstractStratosDeployer here since this >>> is related to stratos deployment and might not be the same for any other >>> deployment environment in the future >>> >>>> >>>> getFilesToDelete() >>>> >>>> I will move this in to AbstractDeployer, because unDeployAftifact is >>>> also in the AbstractDeployer and AbstractStratosDeployer is inherited from >>>> AbstractDeployer. So I think we have to move it to AbstractDeployer >>>> >>>> Same as above. >>> >>> Thanks, >>> Janaka >>> >>>> >>>> >>>> On Tue, Nov 4, 2014 at 10:21 PM, Harsha Thirimanna <[email protected]> >>>> wrote: >>>> >>>>> Hi Mahesh, >>>>> >>>>> Don't write same code twice. Just move it. Because it is not suite to >>>>> use those kind of method that keeping this Service Class. When we are >>>>> doing >>>>> some changes, we may have to re-factor according to the best practices. >>>>> WDYT ? >>>>> >>>>> >>>>> *Harsha Thirimanna* >>>>> Senior Software Engineer; WSO2, Inc.; http://wso2.com >>>>> * <http://www.apache.org/>* >>>>> *email: **[email protected]* <[email protected]>* cell: +94 71 5186770 , >>>>> +94 * >>>>> *774617784twitter: **http://twitter.com/ >>>>> <http://twitter.com/afkham_azeez>* >>>>> *harshathirimannlinked-in: **http: >>>>> <http://lk.linkedin.com/in/afkhamazeez>**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 >>>>> <http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122>* >>>>> >>>>> *Lean . Enterprise . Middleware* >>>>> >>>>> >>>>> On Tue, Nov 4, 2014 at 10:18 PM, Mahesh Chinthaka <[email protected]> >>>>> wrote: >>>>> >>>>>> Hi Harsha, >>>>>> Why cant we just make those methods public and use them ? Since >>>>>> appfactory.core is already a dependancy in appfactory.deployers >>>>>> So we can avoid writing the same code twice. >>>>>> >>>>>> On Tue, Nov 4, 2014 at 10:13 PM, Harsha Thirimanna <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> Hi Janaka, >>>>>>> >>>>>>> There are no new utility method. Just keep it in right place as we >>>>>>> can reuse it. >>>>>>> >>>>>>> >>>>>>> *Harsha Thirimanna* >>>>>>> Senior Software Engineer; WSO2, Inc.; http://wso2.com >>>>>>> * <http://www.apache.org/>* >>>>>>> *email: **[email protected]* <[email protected]>* cell: +94 71 5186770 >>>>>>> , +94 * >>>>>>> *774617784twitter: **http://twitter.com/ >>>>>>> <http://twitter.com/afkham_azeez>* >>>>>>> *harshathirimannlinked-in: **http: >>>>>>> <http://lk.linkedin.com/in/afkhamazeez>**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 >>>>>>> <http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122>* >>>>>>> >>>>>>> *Lean . Enterprise . Middleware* >>>>>>> >>>>>>> >>>>>>> On Tue, Nov 4, 2014 at 10:12 PM, Harsha Thirimanna <[email protected] >>>>>>> > wrote: >>>>>>> >>>>>>>> sorry, I had sent half of the mail. >>>>>>>> >>>>>>>> getFilesToDelete - you can move this method >>>>>>>> to AbstractStratosDeployer >>>>>>>> >>>>>>>> getRepositoryProviderAdminUser >>>>>>>> getRepositoryProviderAdminPassword >>>>>>>> >>>>>>>> these two methods can move to AppFactoryUtil in common component >>>>>>>> and make it public. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> *Harsha Thirimanna* >>>>>>>> Senior Software Engineer; WSO2, Inc.; http://wso2.com >>>>>>>> * <http://www.apache.org/>* >>>>>>>> *email: **[email protected]* <[email protected]>* cell: +94 71 5186770 >>>>>>>> , +94 * >>>>>>>> *774617784twitter: **http://twitter.com/ >>>>>>>> <http://twitter.com/afkham_azeez>* >>>>>>>> *harshathirimannlinked-in: **http: >>>>>>>> <http://lk.linkedin.com/in/afkhamazeez>**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 >>>>>>>> <http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122>* >>>>>>>> >>>>>>>> *Lean . Enterprise . Middleware* >>>>>>>> >>>>>>>> >>>>>>>> On Tue, Nov 4, 2014 at 10:03 PM, Harsha Thirimanna < >>>>>>>> [email protected]> wrote: >>>>>>>> >>>>>>>>> Hi Janaka, >>>>>>>>> >>>>>>>>> As Mahesh mentioned some of here are Util methods as private. >>>>>>>>> >>>>>>>>> @Mahesh >>>>>>>>> >>>>>>>>> getGitRepoUrlForTenant - rename this method to getRepoUrlForTenant >>>>>>>>> and move it to RepositoryClient interface. Implement it >>>>>>>>> in GitRepositoryClient according to the Git. >>>>>>>>> getServerDeploymentPaths - in this method, there is only static >>>>>>>>> method call >>>>>>>>> >>>>>>>>> >>>>>>>>> *Harsha Thirimanna* >>>>>>>>> Senior Software Engineer; WSO2, Inc.; http://wso2.com >>>>>>>>> * <http://www.apache.org/>* >>>>>>>>> *email: **[email protected]* <[email protected]>* cell: +94 71 >>>>>>>>> 5186770 , +94 * >>>>>>>>> *774617784twitter: **http://twitter.com/ >>>>>>>>> <http://twitter.com/afkham_azeez>* >>>>>>>>> *harshathirimannlinked-in: **http: >>>>>>>>> <http://lk.linkedin.com/in/afkhamazeez>**//www.linkedin.com/pub/harsha-thirimanna/10/ab8/122 >>>>>>>>> <http://www.linkedin.com/pub/harsha-thirimanna/10/ab8/122>* >>>>>>>>> >>>>>>>>> *Lean . Enterprise . Middleware* >>>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, Nov 4, 2014 at 9:52 PM, Janaka Ranabahu <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Hi Mahesh, >>>>>>>>>> >>>>>>>>>> On Tue, Nov 4, 2014 at 9:42 PM, Mahesh Chinthaka < >>>>>>>>>> [email protected]> wrote: >>>>>>>>>> >>>>>>>>>>> Hi all , >>>>>>>>>>> I was trying to move the exact functionality in >>>>>>>>>>> *org.wso2.carbon.appfactory.core.deploy.ApplicationDeployer.undeployAllArtifactsOfAppFromDepSyncGitRepo()* >>>>>>>>>>> to >>>>>>>>>>> *org.wso2.carbon.appfactory.deployers.AbstractDeployer.unDeployArtifact()* >>>>>>>>>>> >>>>>>>>>>> while working on *unDeployArtifact()* i need to access some >>>>>>>>>>> more methods inside *ApplicationDeployer* class, which are >>>>>>>>>>> private. >>>>>>>>>>> those are : getRepositoryProviderAdminUser() >>>>>>>>>>> getRepositoryProviderAdminPassword() >>>>>>>>>>> getGitRepoUrlForTenant() >>>>>>>>>>> getServerDeploymentPaths() >>>>>>>>>>> getFilesToDelete() >>>>>>>>>>> >>>>>>>>>> Did you check how these parameters are sent when the deployment >>>>>>>>>> call happens? IIRC, we pass a parameter map for that method which >>>>>>>>>> contains >>>>>>>>>> all these parameters. Also those parameters are configured in the >>>>>>>>>> appfactory.xml >>>>>>>>>> So please check how the deploy methods work. That should give you >>>>>>>>>> a clue. >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Janaka >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> What kind of approach should I follow ? >>>>>>>>>>> >>>>>>>>>>> 1. Make above methods public and use them. >>>>>>>>>>> 2. Implement same methods inside AbstactDeployer class and use >>>>>>>>>>> them. >>>>>>>>>>> >>>>>>>>>>> FYI : *AbstractDeployer* class is implemented from *Deployer* >>>>>>>>>>> interface and currently it has following methods. >>>>>>>>>>> deployTaggedArtifact >>>>>>>>>>> deployLatestSuccessArtifact >>>>>>>>>>> deployPromotedArtifact >>>>>>>>>>> unDeployArtifact >>>>>>>>>>> handleException >>>>>>>>>>> >>>>>>>>>>> Thanks >>>>>>>>>>> -- >>>>>>>>>>> *Mahesh Chinthaka Vidanagama* | Software Engineer >>>>>>>>>>> WSO2, Inc | lean. enterprise. middleware. >>>>>>>>>>> #20, Palm Grove, Colombo 03, Sri Lanka >>>>>>>>>>> Mobile: +94 71 63 63 083 | Work: +94 112 145 345 >>>>>>>>>>> Email: [email protected] | Web: www.wso2.com >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> *Janaka Ranabahu* >>>>>>>>>> Senior Software Engineer; WSO2 Inc.; http://wso2.com >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> *E-mail: [email protected] <http://wso2.com>**M: **+94 718370861 >>>>>>>>>> <%2B94%20718370861>* >>>>>>>>>> >>>>>>>>>> Lean . Enterprise . Middleware >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Mahesh Chinthaka Vidanagama* | Software Engineer >>>>>> WSO2, Inc | lean. enterprise. middleware. >>>>>> #20, Palm Grove, Colombo 03, Sri Lanka >>>>>> Mobile: +94 71 63 63 083 | Work: +94 112 145 345 >>>>>> Email: [email protected] | Web: www.wso2.com >>>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>>> *Mahesh Chinthaka Vidanagama* | Software Engineer >>>> WSO2, Inc | lean. enterprise. middleware. >>>> #20, Palm Grove, Colombo 03, Sri Lanka >>>> Mobile: +94 71 63 63 083 | Work: +94 112 145 345 >>>> Email: [email protected] | Web: www.wso2.com >>>> >>> >>> >>> >>> -- >>> *Janaka Ranabahu* >>> Senior Software Engineer; WSO2 Inc.; http://wso2.com >>> >>> >>> *E-mail: [email protected] <http://wso2.com>**M: **+94 718370861 >>> <%2B94%20718370861>* >>> >>> Lean . Enterprise . Middleware >>> >> >> >> >> -- >> *Mahesh Chinthaka Vidanagama* | Software Engineer >> WSO2, Inc | lean. enterprise. middleware. >> #20, Palm Grove, Colombo 03, Sri Lanka >> Mobile: +94 71 63 63 083 | Work: +94 112 145 345 >> Email: [email protected] | Web: www.wso2.com >> > > > > -- > *Janaka Ranabahu* > Senior Software Engineer; WSO2 Inc.; http://wso2.com > > > *E-mail: [email protected] <http://wso2.com>**M: **+94 718370861 > <%2B94%20718370861>* > > Lean . Enterprise . Middleware > -- *Mahesh Chinthaka Vidanagama* | Software Engineer WSO2, Inc | lean. enterprise. middleware. #20, Palm Grove, Colombo 03, Sri Lanka Mobile: +94 71 63 63 083 | Work: +94 112 145 345 Email: [email protected] | Web: www.wso2.com
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
