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* Lean . Enterprise . Middleware
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
