Hi,
ok then , i will proceed with refactoring. Thanks.

On Tue, Oct 21, 2014 at 6:36 PM, Janaka Ranabahu <[email protected]> wrote:

> Hi,
>
> On Tue, Oct 21, 2014 at 6:19 PM, Mahesh Chinthaka <[email protected]>
> wrote:
>
>> Hi ,
>> No i meant a webservice, i understand it's not a good idea.
>> Anyway there are some more findings so far,
>>
>> *Regarding appfactory.core.deploy.AppfactoryRepositoryClient*
>>
>> *appfactory.core.deploy.AppfactoryRepositoryClient* is used only twice
>> for whole code. That is in *deleteFromDepSyncGitRepo* method and 
>> *undeployAllArtifactsOfAppFromDepSyncGitRepo
>> *method in *ApplicationDeployer* class within the same package. And
>> above two methods are private.
>>
>> Though all other repository deployment functions happen in
>> *appfactory.deployers *(which jar goes to jenkins) , undeployment
>> happens in *appfactory.core* section (correct me if im wrong).
>>
>> Therefore if we move undeploy functionality to *appfactory.deployers *section
>> , we can get rid of *appfactory.core.deploy.AppfactoryRepositoryClient. *
>>
>> +1. Please proceed with the re-factoring. We need to handle deployment
> and undeployment related operations from the same place.
>
>> *Regarding appfactory.deployers.clients.AppfactoryRepositoryClient*
>>
>> Unfortunately we will have to do the same implementation as in 
>> *appfactory.repository.mgt
>> *here , since this goes to jenkins and we need to keep minimum
>> dependancies. Because of the minimum dependencies scenario we cannot use
>> *JGitAgent* available in *appfacotry.repository.mgt . *Therefore we have
>> to re-implement it here in *appfactory.deployers.clients* though it's a
>> replication.
>>
>> Let's check whether we could move them to a common component, maybe
> something like appfactory.common component.
>
> Thanks,
> Janaka
>
>>
>> Advise please....
>>
>> On Tue, Oct 21, 2014 at 3:36 PM, Danushka Fernando <[email protected]>
>> wrote:
>>
>>> What do you meant by a service ? An OSGI service? +1 Go ahead with the
>>> solution #2.
>>>
>>> Thanks & Regards
>>> Danushka Fernando
>>> Software Engineer
>>> WSO2 inc. http://wso2.com/
>>> Mobile : +94716332729
>>>
>>> On Tue, Oct 21, 2014 at 3:29 PM, Mahesh Chinthaka <[email protected]>
>>> wrote:
>>>
>>>> Hi all,
>>>> Im working on [1]
>>>>
>>>> In here we have to consider 3 classes
>>>>
>>>>    1. org.wso2.carbon.appfactory.repository.mgt.client
>>>>    .AppfacotryRepositoryClient
>>>>    2. org.wso2.carbon.appfactory.core.deploy.AppfacotryRepositoryClient
>>>>    3. org.wso2.carbon.appfactory.deployers.clients
>>>>    .AppfacotryRepositoryClient
>>>>
>>>>
>>>>
>>>> *org.wso2.carbon.appfactory.repository.mgt.client.AppfacotryRepositoryClient*
>>>> has already integrated with JGit plugin via *JGitAgent* class.
>>>>
>>>> Still
>>>> *org.wso2.carbon.appfactory.core.deploy.AppfacotryRepositoryClient*
>>>> and
>>>> *org.wso2.carbon.appfactory.deployers.clients.AppfacotryRepositoryClient*
>>>> use *GitSCMClient*. Now we need to remove SCM plugin and integrate
>>>> JGit plugin to these two classes as well.
>>>> I see following approaches,
>>>>
>>>> 1. Implement same functionality which is in
>>>> *org.wso2.carbon.appfactory.repository.mgt.client.AppfacotryRepositoryClient*
>>>> for above both places. But this will cause code redundancy, I guess.
>>>> 2. Make
>>>> *org.wso2.carbon.appfactory.repository.mgt.client.AppfacotryRepositoryClient*
>>>> as a  service  and make it available to use in other two places.
>>>>
>>>> Please advise me in way forward. Suggest me a better approach please.
>>>> Thanks
>>>>
>>>> [1] - https://wso2.org/jira/browse/APPFAC-2328
>>>>
>>>> --
>>>> *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
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to