Package org.wso2.carbon.mediators.xslt.test

Source Code of org.wso2.carbon.mediators.xslt.test.RegistryEntryTest

/*
*  Copyright (c) WSO2 Inc. (http://wso2.com) All Rights Reserved.
  WSO2 Inc. licenses this file to you under the Apache License,
*  Version 2.0 (the "License"); you may not use this file except
*  in compliance with the License.
*  You may obtain a copy of the License at
  http://www.apache.org/licenses/LICENSE-2.0
  Unless required by applicable law or agreed to in writing,
*  software distributed under the License is distributed on an
*  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
*  KIND, either express or implied.  See the License for the
*  specific language governing permissions and limitations
*  under the License.
*
*/


package org.wso2.carbon.mediators.xslt.test;

import org.apache.axiom.om.OMElement;
import org.apache.axis2.AxisFault;
import org.wso2.carbon.registry.resource.stub.ExceptionException;
import org.wso2.carbon.registry.resource.stub.ResourceAdminServiceStub;
import org.wso2.esb.integration.ESBIntegrationTest;
import org.wso2.esb.integration.axis2.StockQuoteClient;

import javax.activation.DataHandler;
import java.net.MalformedURLException;
import java.net.URL;
import java.rmi.RemoteException;

public class RegistryEntryTest extends ESBIntegrationTest {

    private StockQuoteClient axis2Client;

    @Override
    public void init() {
        super.init();
        axis2Client = new StockQuoteClient();
    }

    @Override
    public void successfulScenario() throws RemoteException {
        uploadResources();
        updateESBConfiguration("/registryentry.xml");

        launchStockQuoteService();

        try {
            OMElement response = axis2Client.sendCustomQuoteRequest(getMainSequenceURL(),
                    null, "WSO2");
            String str = response.toString();
            log.info("Response received: " + str);
            assertTrue(str.contains("CheckPriceResponse"));
            assertTrue(str.contains("WSO2"));
        } catch (AxisFault axisFault) {
            handleError("Error while invoking the ESB endpoint", axisFault);
        }
    }

    @Override
    public void cleanup() {
        super.cleanup();
        axis2Client.destroy();
    }

    private void uploadResources() throws RemoteException {
        ResourceAdminServiceStub resourceAdminServiceStub =
                new ResourceAdminServiceStub(getAdminServiceURL("ResourceAdminService"));
        authenticate(resourceAdminServiceStub);

        try {
            resourceAdminServiceStub.delete("/_system/config/xslt");
            resourceAdminServiceStub.addCollection("/_system/config/", "xslt", "",
                    "Contains test XSLT files");
            resourceAdminServiceStub.addResource(
                    "/_system/config/xslt/transform_back.xslt", "application/xml", "xslt files",
                    new DataHandler(new URL("file:///" + getClass().getResource("/transform_back.xslt").getPath())), null);
            Thread.sleep(1000);
            resourceAdminServiceStub.addResource(
                    "/_system/config/xslt/transform.xslt", "application/xml", "xslt files",
                    new DataHandler(new URL("file:///" + getClass().getResource("/transform.xslt").getPath())), null);
        } catch (MalformedURLException e) {
            handleError("Malformed URL", e);
        } catch (InterruptedException e) {
            handleError("Unexpected interrupt event", e);
        } catch (ExceptionException e) {
            handleError("Error while invoking the resource admin service", e);
        }
    }
}
TOP

Related Classes of org.wso2.carbon.mediators.xslt.test.RegistryEntryTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.