Package org.apache.juddi.v3.client.mapping.wsdl

Source Code of org.apache.juddi.v3.client.mapping.wsdl.BPEL2UDDITest

/*
* Copyright 2001-2009 The Apache Software Foundation.
*
* Licensed 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.apache.juddi.v3.client.mapping.wsdl;

import java.net.MalformedURLException;
import java.net.URL;
import java.util.Map;
import java.util.Properties;
import java.util.Set;

import javax.wsdl.Binding;
import javax.wsdl.Definition;
import javax.wsdl.PortType;
import javax.wsdl.WSDLException;
import javax.xml.bind.JAXBException;
import javax.xml.namespace.QName;

import org.apache.commons.configuration.ConfigurationException;
import org.apache.juddi.jaxb.PrintUDDI;
import org.apache.juddi.v3.client.mapping.URLLocalizer;
import org.apache.juddi.v3.client.mapping.URLLocalizerDefaultImpl;
import org.apache.juddi.v3.client.mapping.wsdl.BPEL2UDDI;
import org.apache.juddi.v3.client.mapping.wsdl.ReadWSDL;
import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
import org.uddi.api_v3.BindingTemplate;
import org.uddi.api_v3.FindTModel;
import org.uddi.api_v3.TModel;

/**
* @author <a href="mailto:kstam@apache.org">Kurt T Stam</a>
*/
public class BPEL2UDDITest {

 
  static BPEL2UDDI bpel2UDDI;
  PrintUDDI<TModel> pTModel = new PrintUDDI<TModel>();
  PrintUDDI<FindTModel> pFindTModel = new PrintUDDI<FindTModel>();
  PrintUDDI<BindingTemplate> pBinding = new PrintUDDI<BindingTemplate>();
  ReadWSDL rw = new ReadWSDL();

        static boolean serialize=false;
  public BPEL2UDDITest(){
            if (System.getProperty("debug")!=null && System.getProperty("debug").equalsIgnoreCase("true"))
                serialize = true;
        }
       
  @BeforeClass
  public static void before() throws JAXBException, ConfigurationException {
    Properties properties = new Properties();
    properties.put("keyDomain", "juddi.apache.org");
    properties.put("nodeName", "localhost");
    URLLocalizer urlLocalizer = new URLLocalizerDefaultImpl();
   
    bpel2UDDI = new BPEL2UDDI(null, urlLocalizer, properties);
  }
 
  @Test
  public void testTN_WSDLPortTypeModels() throws WSDLException, JAXBException, Exception {

    // Reading the WSDL
    Definition wsdlDefinition = rw.readWSDL("bpel/bpel-technote.wsdl");
      @SuppressWarnings("unchecked")
    Map<QName,PortType> portTypes= (Map<QName,PortType>) wsdlDefinition.getAllPortTypes();
      Set<TModel> portTypeTModels = bpel2UDDI.createWSDLPortTypeTModels(wsdlDefinition.getDocumentBaseURI(), portTypes);
      for (TModel tModel : portTypeTModels) {
      System.out.println("***** UDDI PortType TModel: " + tModel.getName().getValue());
                        if (serialize)
      System.out.println(pTModel.print(tModel));
    }
    Assert.assertEquals(2,portTypeTModels.size());
  }
 
  @Test
  public void testTN_BPEL4WSProcessTModel() throws WSDLException, JAXBException, Exception {

    // Obtained from the .bpel file:
    String targetNamespace = "http://example.com/travelagent";
    QName serviceName = new QName (targetNamespace, "ReservationAndBookingTickets");
    String bpelOverViewUrl = "http://localhost/registry/" + serviceName.getLocalPart() + ".bpel";
   
    // Reading the WSDL
    Definition wsdlDefinition = rw.readWSDL("bpel/bpel-technote.wsdl");
   
      @SuppressWarnings("unchecked")
    Map<QName,PortType> portTypes= (Map<QName,PortType>) wsdlDefinition.getAllPortTypes();
      TModel bpel4WSTModel = bpel2UDDI.createBPEL4WSProcessTModel(serviceName, targetNamespace, portTypes, bpelOverViewUrl);
     
    System.out.println("***** BPEL4WS Process TModel: " + bpel4WSTModel.getName().getValue());
                if (serialize)
    System.out.println(pTModel.print(bpel4WSTModel));
   
    Assert.assertNotNull(bpel4WSTModel);
  }
 
  @Test
  public void testTN_FindTModelForProcessName() throws JAXBException {
   
    QName processName = new QName("http://example.com/travelagent","ReservationAndBookingTickets");
 
    FindTModel findTModel = bpel2UDDI.createFindTModelForProcessName(processName);
   
    System.out.println("***** Find TModel For ProcessName: " + processName);
                if (serialize)
    System.out.println(pFindTModel.print(findTModel));
   
    Assert.assertNotNull(findTModel.getCategoryBag());
  }
 
  @Test
  public void testHelloWorld_WSDLPortTypeModels() throws WSDLException, JAXBException , Exception{

    // Reading the WSDL
    Definition wsdlDefinition = rw.readWSDL("bpel/HelloWorld.wsdl");
      @SuppressWarnings("unchecked")
    Map<QName,PortType> portTypes= (Map<QName,PortType>) wsdlDefinition.getAllPortTypes();
      Set<TModel> portTypeTModels = bpel2UDDI.createWSDLPortTypeTModels(wsdlDefinition.getDocumentBaseURI(), portTypes);
     
    for (TModel tModel : portTypeTModels) {
      System.out.println("***** UDDI PortType TModel: " + tModel.getName().getValue());
                        if (serialize)
      System.out.println(pTModel.print(tModel));
    }
    Assert.assertEquals(1,portTypeTModels.size());
  }
 
  @Test
  public void testHelloWorld_UDDIBindingModel() throws WSDLException, JAXBException, Exception {

    // Reading the WSDL
    Definition wsdlDefinition = rw.readWSDL("bpel/HelloWorld.wsdl");
      @SuppressWarnings("unchecked")
    Map<QName,Binding> bindings = (Map<QName,Binding>) wsdlDefinition.getAllBindings();
      Set<TModel> bindingTModels = bpel2UDDI.createWSDLBindingTModels(wsdlDefinition.getDocumentBaseURI(), bindings);
     
    for (TModel tModel : bindingTModels) {
      System.out.println("***** UDDI Binding TModel: " + tModel.getName().getValue());
                        if (serialize)
      System.out.println(pTModel.print(tModel));
    }
    Assert.assertEquals(1,bindingTModels.size());
  }
 
  @Test
  public void testHelloWorld_BPEL4WSProcessTModel() throws WSDLException, JAXBException , Exception{

    //Obtained from the .bpel file:
    String targetNamespace = "http://www.jboss.org/bpel/examples";
    QName serviceName = new QName (targetNamespace, "HelloWorld");
    String bpelOverViewUrl = "http://localhost/registry/" + serviceName.getLocalPart() + ".bpel";
   
    // Reading the WSDL
    Definition wsdlDefinition = rw.readWSDL("bpel/HelloWorld.wsdl");
   
      @SuppressWarnings("unchecked")
    Map<QName,PortType> portTypes= (Map<QName,PortType>) wsdlDefinition.getAllPortTypes();
      TModel bpel4WSTModel = bpel2UDDI.createBPEL4WSProcessTModel(serviceName, targetNamespace, portTypes, bpelOverViewUrl);
     
    System.out.println("***** BPEL4WS Process TModel: " + bpel4WSTModel.getName().getValue());
                if (serialize)
    System.out.println(pTModel.print(bpel4WSTModel));
   
    Assert.assertNotNull(bpel4WSTModel);
  }
 
  @Test
  public void testHelloWorld_BPELBinding() throws WSDLException, JAXBException, MalformedURLException, Exception {

    //Obtained from the .bpel file:
    String portName = "HelloPort";
    QName serviceName = new QName ("http://www.jboss.org/bpel/examples/wsdl", "HelloService");
    URL serviceUrl =  new URL("http://localhost/sample");
   
    // Reading the WSDL
    Definition wsdlDefinition = rw.readWSDL("bpel/HelloWorld.wsdl");
      BindingTemplate binding = bpel2UDDI.createBPELBinding(serviceName, portName, serviceUrl, wsdlDefinition);
     
    System.out.println("***** WSDL Port BindingTemplate: " + binding.getBindingKey());
                if (serialize)
    System.out.println(pBinding.print(binding));
   
    Assert.assertNotNull(binding.getTModelInstanceDetails());
  }
 
  @Test
  public void testHelloWorld_FindTModelForProcessName() throws JAXBException {
   
    QName processName = new QName("http://www.jboss.org/bpel/examples/wsdl","HelloWorld");
    
    FindTModel findTModel = bpel2UDDI.createFindTModelForProcessName(processName);
   
    System.out.println("***** Find TModel For ProcessName: " + processName);
                if (serialize)
    System.out.println(pFindTModel.print(findTModel));
   
    Assert.assertNotNull(findTModel.getCategoryBag());
  }
}
TOP

Related Classes of org.apache.juddi.v3.client.mapping.wsdl.BPEL2UDDITest

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.