Hi Ajith,

Yes I have done some analysis on this, As per the findings effort can be
breakdown as follows :

*org.wso2.carbon.registry.resource.ui/ImportResourceProcessor.process*
Need to fetch then WSDL/WADL/Schema/Policy content and return it as
a DataHandler.
Add Source URL as a property(just like version)

*org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler.put*
Set the wsdl Source URL
if source URL is not null need to pass the source URL
to 
org.wso2.carbon.registry.extensions.handlers.utils.WSDLProcessor.addWSDLToRegistry
through 
org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler.processWSDLImport

*org.wso2.carbon.registry.extensions.handlers.WADLMediaTypeHandler.put*
Set the wadl Source URL

*org.wso2.carbon.registry.extensions.handlers.utils.WADLProcessor.addWadlToRegistry*
validate source URL.
Set UUID.
Pass the wadlBaseUri to fetch the grammarsElement.

In order to achieve above goals need to create more validations and some
utils.


On Wed, Dec 24, 2014 at 1:06 PM, Ajith Vitharana <[email protected]> wrote:

> Hi Thushara,
>
> Did you measure the effort we need for migration due to path changes ?
>
> -Ajith
>
> On Wed, Dec 24, 2014 at 2:22 AM, Thushara Ranawaka <[email protected]>
> wrote:
>
>> *Reasons for this change :*
>> As per the current wsdl upload process which is going through
>> importResource do not contain the wsdl content which is very much needed to
>> explore content of a wsdl. For instance using exiting process it's kind a
>> difficult to create a handler to filter bad words that can be contained in
>> a wsdl. Other than that using importResource to put some artifact into
>> registry is theoretically wrong, therefore best practice is to use put
>> method.
>>
>> *Current process flow(wsdl) :*
>> org.wso2.carbon.registry.resource.ui/import_resource_ajaxprocessor.jsp
>> org.wso2.carbon.registry.resource.ui/ImportResourceProcessor.process
>> org.wso2.carbon.registry.resource.ui/ResourceServiceClient.importResource
>>
>> org.wso2.carbon.registry.resource.stub/ResourceAdminServiceStub.importResource
>> ...
>> org.wso2.carbon.registry.core.session.UserRegistry.importResourceInternal
>> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.importResource
>> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.importResource
>>
>> org.wso2.carbon.registry.core.jdbc.handlers.HandlerLifecycleManager.importResource
>> org.wso2.carbon.registry.core.jdbc.handlers.HandlerManager.importResource
>>
>> org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler.importResource
>>
>> org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler.processWSDLImport
>>
>> org.wso2.carbon.registry.extensions.handlers.utils.WSDLProcessor.addWSDLToRegistry
>>
>> org.wso2.carbon.registry.extensions.handlers.utils.WSDLProcessor.evaluateWSDLsToDefinitions
>>
>> *Things needed to be done :*
>> In order to do $subject We need to fetch content in the UI
>> level(org.wso2.carbon.registry.resource.ui) and send it to the next level
>> including data submitted through html form. Following *bold* methods
>> will be changed accordingly. Since we need to fetch dependancies such
>> as WSDL/WADL/Schema which can be included in WSDL/WADL/Schema we need to to
>> add sourceURL as a property and send it too, which will be used in
>> org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler,
>> org.wso2.carbon.registry.extensions.handlers.WADLMediaTypeHandler later to
>> fetch contents of the dependancies.
>>
>> *Expected process flow(wsdl) :*
>> org.wso2.carbon.registry.resource.ui/import_resource_ajaxprocessor.jsp
>> *org.wso2.carbon.registry.resource.ui/ImportResourceProcessor.process*
>>
>> org.wso2.carbon.registry.resource.ui.clients.ResourceServiceClient.addResource
>>
>> org.wso2.carbon.registry.resource.stub.ResourceAdminServiceStub.addResource
>> ...
>> org.wso2.carbon.registry.core.session.UserRegistry.putInternal
>> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.put
>> org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.put
>> org.wso2.carbon.registry.core.jdbc.handlers.HandlerLifecycleManager.put
>> org.wso2.carbon.registry.core.jdbc.handlers.HandlerManager.put
>> org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler.*put*
>>
>> org.wso2.carbon.registry.extensions.handlers.WSDLMediaTypeHandler.processWSDLImport
>>
>> org.wso2.carbon.registry.extensions.handlers.utils.WSDLProcessor.addWSDLToRegistry
>>
>> org.wso2.carbon.registry.extensions.handlers.utils.WSDLProcessor.evaluateWSDLsToDefinitions
>>
>> *Note :*
>> This change will also affect to WADL/Schema and Policy upload paths as
>> well. But for Schema and Policy the impact is very low.
>> All the put methods(WSDL/WADL) are already implemented and need to do
>> some modifications and validations in order to start working.
>> It is must to run all the tests which related to WSDL/WADL/Schema/Policy
>> upload after the implementation.
>>
>> Please share any ideas on $Subject.
>>
>> --
>> Thushara Kasun Ranawaka
>> Software Engineer
>> WSO2 Inc.; <http://www.wso2.com>
>> lean.enterprise.middleware
>> Mobile : *+94 (0) 773438949 <%2B94%20%280%29%20773438949>*
>> *[email protected] <[email protected]>*
>>
>> _______________________________________________
>> Architecture mailing list
>> [email protected]
>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>
>>
>
>
> --
> Ajith Vitharana.
> WSO2 Inc. - http://wso2.org
> Email  :  [email protected]
> Mobile : +94772217350
>
>
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>


-- 
Thushara Kasun Ranawaka
Software Engineer
WSO2 Inc.; <http://www.wso2.com>
lean.enterprise.middleware
Mobile : *+94 (0) 773438949*
*[email protected] <[email protected]>*
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to