*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* *thusha...@wso2.com <thusha...@wso2.com>*
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture