Examples of WSDLDocument


Examples of com.dilanperera.rapidws.codegen.WSDLDocument

   * Outputs the code for the declarating part of the parser code in the Web Service request.
   * @throws IOException thrown when an Input/Output error takes place while producing output.
   */
  private void outputParserDeclarationCode() throws IOException
  {
    WSDLDocument document = this.getWSDLDocument();

    String parameterVariableDeclarationStatement = this.getParameterVariableDeclaration(document);
    String returnDeclarationStatement = this.getReturnStatementDeclaration(document);

    String parserDeclarationCode = parameterVariableDeclarationStatement + returnDeclarationStatement;
View Full Code Here

Examples of com.dilanperera.rapidws.codegen.WSDLDocument

   * Outputs the code for the declarating flags part of the parser code in the Web Service request.
   * @throws IOException thrown when an Input/Output error takes place while producing output.
   */
  private void outputParserDeclarationFlagsCode() throws IOException
  {
    WSDLDocument document = this.getWSDLDocument();

    String parameterVariableDeclarationStatement = this.getParameterFlagVariableDeclaration(document);

    TemplateHelper.replaceText(this.getOutputFileName(),
        TemplateBlock.IMPLEMENTATION_DEFINITION_FLAGS,
View Full Code Here

Examples of com.dilanperera.rapidws.codegen.WSDLDocument

   * Outputs the SOAP Return Action.
   * @throws IOException thrown when an Input/Output error takes place while producing output.
   */
  private void outputSOAPReturnAction() throws IOException
  {
    WSDLDocument document = this.getWSDLDocument();
    String outputMessageName = TextContent.EMPTY;

    Node operationNode = this.getOperationNode();

    if (document.hasOutput(operationNode))
    {
        outputMessageName =  document.getOutputMessageCleaned(this.getOperationNode());
    }
    else
    {
      if (document.hasOutputVoid(operationNode))
      {
        Node outputNode = document.getOutputNode(this.getOperationNode());

        outputMessageName = document.getOutputMessageCleaned(this.getOperationNode());
      }
    }

    TemplateHelper.replaceText(this.getOutputFileName(),
        "#SOAP_RETURN_ACTION#",
View Full Code Here

Examples of com.dilanperera.rapidws.codegen.WSDLDocument

  {
    String code = TextContent.EMPTY;

    String unmarshalCode = TextContent.EMPTY;

    WSDLDocument document = this.getWSDLDocument();

    if (document.hasInput(this.getOperationNode()))
    {
      //Node inputNode = document.getInputNode(this.getOperationNode());
      String inputMessageName = document.getInputMessageCleaned(this.getOperationNode());
      Node inputMessageNode = document.getMessageNode(inputMessageName);
      //String messagePartName = document.getMessagePartName(inputMessageNode);
      String messagePartElement = document.getMessagePartElement(inputMessageNode);

      if (messagePartElement.length() > CollectionSize.EMPTY)
      {
        // operation has parameters

        String messagePartElementNamespaceAlias = messagePartElement.substring(0, messagePartElement.indexOf(":"));
        String messagePartOperationName = messagePartElement.substring(messagePartElement.indexOf(":") + 1);
        String messagePartElementNamespace = this.getTypeMetadata().getNamespaces().get(messagePartElementNamespaceAlias);
        //Node schemaNode = document.getSchemaByNamespace(messagePartElementNamespace);
        //Node schemaElementNode = document.getSchemaElementByNamespaceAndElementName(messagePartElementNamespace, messagePartOperationName);

        List<Node> typeSequenceElementNodes = document.getTypeSequenceElements(messagePartElementNamespace, messagePartOperationName);
        String itemText = TextContent.EMPTY;

        for (Node typeSequenceElementNode : typeSequenceElementNodes)
        {
          WSDLDataType wsdlDataType = document.getTypeSequenceElementDataType(typeSequenceElementNode);
          String initialTypeName = document.getTypeSequenceElementDataTypeText(typeSequenceElementNode);
          String varName = document.getTypeSequenceElementName(typeSequenceElementNode);
          boolean isArray = document.isArray(typeSequenceElementNode);
          String typeName = this.getResolvedTypeName(initialTypeName, wsdlDataType, isArray, false);
          boolean isNillable = document.isNillable(typeSequenceElementNode);

          if (isArray)
          {
            itemText = IOHelper.readString(new FileInputStream(
                this.getOperationClassTemplatePath() + "OperationHandler_PrimitiveArray.java"));
View Full Code Here

Examples of com.dilanperera.rapidws.codegen.WSDLDocument

   */
  private void outputParserExecutionCode() throws IOException
  {
    String executionCode = TextContent.EMPTY;

    WSDLDocument document = this.getWSDLDocument();
    boolean isArrayOutput = false;
    WSDLDataType inputWsdlDataType = WSDLDataType.CUSTOM;


    if (document.hasOutput(this.getOperationNode()))
    {
      Node outputNode = document.getOutputNode(this.getOperationNode());
      String outputMessageName = document.getOutputMessageCleaned(this.getOperationNode());
      Node outputMessageNode = document.getMessageNode(outputMessageName);
      String messagePartName = document.getMessagePartName(outputMessageNode);
      String messagePartElement = document.getMessagePartElement(outputMessageNode);
      String messagePartElementNamespaceAlias = messagePartElement.substring(0, messagePartElement.indexOf(":"));
      String messagePartOperationName = messagePartElement.substring(messagePartElement.indexOf(":") + 1);
      String messagePartElementNamespace = this.getTypeMetadata().getNamespaces().get(messagePartElementNamespaceAlias);
      //Node schemaNode = document.getSchemaByNamespace(messagePartElementNamespace);
      //Node schemaElementNode = document.getSchemaElementByNamespaceAndElementName(messagePartElementNamespace, messagePartOperationName);

      List<Node> typeSequenceElementNodes = document.getTypeSequenceElements(messagePartElementNamespace, messagePartOperationName);

      for (Node typeSequenceElementNode : typeSequenceElementNodes)
      {
        String varName = this.getWSDLDocument().getTypeSequenceElementName(typeSequenceElementNode);
        inputWsdlDataType = document.getTypeSequenceElementDataType(typeSequenceElementNode);
        isArrayOutput = document.isArray(typeSequenceElementNode);

        varName = this.getReturnValueVariableName(varName);

        executionCode = "this." + varName + " = ";

        // NOTE: assuming only one value can be returned
        break;
      }
    }

    if (isArrayOutput)
    {
      executionCode += "TypeHelper.convert(";
    }
    else
    {
      if (inputWsdlDataType == WSDLDataType.XS_BASE64BINARY)
      {
        executionCode += "TypeHelper.getString(";
      }
    }

    executionCode += "new ";
    executionCode += this.getImplType();
    executionCode += "()";
    executionCode += ".";
    executionCode += this.getOperationName();
    executionCode += "(";

    if (document.hasInput(this.getOperationNode()))
    {
      //Node inputNode = document.getInputNode(this.getOperationNode());
      String inputMessageName = document.getInputMessageCleaned(this.getOperationNode());
      Node inputMessageNode = document.getMessageNode(inputMessageName);
      //String messagePartName = document.getMessagePartName(inputMessageNode);
      String messagePartElement = document.getMessagePartElement(inputMessageNode);

      if (messagePartElement.length() > CollectionSize.EMPTY)
      {
        String messagePartElementNamespaceAlias = messagePartElement.substring(0, messagePartElement.indexOf(":"));
        String messagePartOperationName = messagePartElement.substring(messagePartElement.indexOf(":") + 1);
        String messagePartElementNamespace = this.getTypeMetadata().getNamespaces().get(messagePartElementNamespaceAlias);
        //Node schemaNode = document.getSchemaByNamespace(messagePartElementNamespace);
        //Node schemaElementNode = document.getSchemaElementByNamespaceAndElementName(messagePartElementNamespace, messagePartOperationName);

        List<Node> typeSequenceElementNodes = document.getTypeSequenceElements(messagePartElementNamespace, messagePartOperationName);

        int nodeCount = 0;
        for (Node typeSequenceElementNode : typeSequenceElementNodes)
        {
          nodeCount++;
          executionCode += TextContent.NEWLINE + JavaOutputProducer.CODE_INDENT_TEXT_EXTRA;

          WSDLDataType wsdlDataType = document.getTypeSequenceElementDataType(typeSequenceElementNode);
          String initialTypeName = document.getTypeSequenceElementDataTypeText(typeSequenceElementNode);
          String varName = document.getTypeSequenceElementName(typeSequenceElementNode);
          boolean isArray = document.isArray(typeSequenceElementNode);
          String typeName = this.getResolvedTypeName(initialTypeName, wsdlDataType, isArray, false);

          if (document.isNillable(typeSequenceElementNode))
          {
            if (isArray)
            {
              executionCode += ("(this.__rws__is" + TextContent.getPascalCased(varName) + "Null) ? null : TypeHelper.convert(" + varName + ")");
            }
View Full Code Here

Examples of com.dilanperera.rapidws.codegen.WSDLDocument

   */
  private void outputParserSerializationCode() throws IOException
  {
    String code = TextContent.EMPTY;

    WSDLDocument document = this.getWSDLDocument();
    Node operationNode = this.getOperationNode();

    if (document.hasOutput(operationNode))
    {
      // TODO: implement for complex types

      Node outputNode = document.getOutputNode(this.getOperationNode());
      String outputMessageName = document.getOutputMessageCleaned(this.getOperationNode());
      Node outputMessageNode = document.getMessageNode(outputMessageName);
      String messagePartName = document.getMessagePartName(outputMessageNode);
      String messagePartElement = document.getMessagePartElement(outputMessageNode);
      String messagePartElementNamespaceAlias = messagePartElement.substring(0, messagePartElement.indexOf(":"));
      String messagePartOperationName = messagePartElement.substring(messagePartElement.indexOf(":") + 1);
      String messagePartElementNamespace = this.getTypeMetadata().getNamespaces().get(messagePartElementNamespaceAlias);
      //Node schemaNode = document.getSchemaByNamespace(messagePartElementNamespace);
      //Node schemaElementNode = document.getSchemaElementByNamespaceAndElementName(messagePartElementNamespace, messagePartOperationName);
               
      List<Node> typeSequenceElementNodes = document.getTypeSequenceElements(messagePartElementNamespace, messagePartOperationName);

      for (Node typeSequenceElementNode : typeSequenceElementNodes)
      {
        // build data payload code
        boolean isArray = document.isArray(typeSequenceElementNode);

        if (isArray)
        {
          code = IOHelper.readString(new FileInputStream(
              this.getOperationClassTemplatePath() +
                  "OperationHandler_Implementation_Serialization_Array.java"));
        }
        else
        {
          if (document.isNillable(typeSequenceElementNode))
          {
            code = IOHelper.readString(new FileInputStream(
                this.getOperationClassTemplatePath() +
                    "OperationHandler_Implementation_Serialization_Nillable.java"));
          }
          else
          {
            code = IOHelper.readString(new FileInputStream(
                this.getOperationClassTemplatePath() +
                    "OperationHandler_Implementation_Serialization.java"));
          }
        }

        // NOTE: assuming only one value can be returned
        break;
      }

      code = TemplateHelper.replaceString(code, "#SOAP_MESSAGE_NAME#", "ns:" + outputMessageName);
      code = TemplateHelper.replaceString(code, "#SOAP_TYPE_NAMESPACE_DECL#", document.getRootDefinitionTargetNamespace());
    }
    else
    {
      if (document.hasOutputVoid(operationNode))
      {
        Node outputNode = document.getOutputNode(this.getOperationNode());
        String outputMessageName = document.getOutputMessageCleaned(this.getOperationNode());

        code = IOHelper.readString(new FileInputStream(
            this.getOperationClassTemplatePath() +
                "OperationHandler_Implementation_Serialization_Void.java"));

        code = TemplateHelper.replaceString(code, "#RESPONSE_NAME#", "ns:" + outputMessageName);
        code = TemplateHelper.replaceString(code, "#RESPONSE_NAMESPACE#", document.getRootDefinitionTargetNamespace());
      }
    }

    TemplateHelper.replaceText(this.getOutputFileName(),
        TemplateBlock.IMPLEMENTATION_SERIALIZATION,
View Full Code Here

Examples of com.dilanperera.rapidws.codegen.WSDLDocument

   */
  private String getParameterFlagVariableDeclaration(Node typeSequenceElementNode, boolean isMember)
  {
    String parameterVariableDeclaration = TextContent.EMPTY;

    WSDLDocument document = this.getWSDLDocument();
    String varName = document.getTypeSequenceElementName(typeSequenceElementNode);

    parameterVariableDeclaration += "boolean";
    parameterVariableDeclaration += " ";

    varName = "__rws__is" + TextContent.getPascalCased(varName) + "Null";
    WSDLDataType wsdlDataType = document.getTypeSequenceElementDataType(typeSequenceElementNode);

    parameterVariableDeclaration += varName;
    parameterVariableDeclaration += " = ";

    if (this.getWSDLDocument().isArray(typeSequenceElementNode))
View Full Code Here

Examples of com.dilanperera.rapidws.codegen.WSDLDocument

   */
  private boolean hasParameters()
  {
    boolean hasParameters = false;

    WSDLDocument document = this.getWSDLDocument();

    if (document.hasInput(this.getOperationNode()))
    {
      //Node inputNode = document.getInputNode(this.getOperationNode());
      String inputMessageName = document.getInputMessageCleaned(this.getOperationNode());
      Node inputMessageNode = document.getMessageNode(inputMessageName);
      //String messagePartName = document.getMessagePartName(inputMessageNode);
      String messagePartElement = document.getMessagePartElement(inputMessageNode);

      if (messagePartElement.length() > CollectionSize.EMPTY)
      {
        // operation has parameters

        String messagePartElementNamespaceAlias = messagePartElement.substring(0, messagePartElement.indexOf(":"));
        String messagePartOperationName = messagePartElement.substring(messagePartElement.indexOf(":") + 1);
        String messagePartElementNamespace = this.getTypeMetadata().getNamespaces().get(messagePartElementNamespaceAlias);
        //Node schemaNode = document.getSchemaByNamespace(messagePartElementNamespace);
        //Node schemaElementNode = document.getSchemaElementByNamespaceAndElementName(messagePartElementNamespace, messagePartOperationName);

        List<Node> typeSequenceElementNodes = document.getTypeSequenceElements(messagePartElementNamespace, messagePartOperationName);

        hasParameters = (typeSequenceElementNodes.size() > CollectionSize.EMPTY);
      }
    }

View Full Code Here

Examples of com.sun.tools.internal.ws.wsdl.document.WSDLDocument

        Document root = forest.get(location);

        if(root == null)
            return null;

        WSDLDocument document = new WSDLDocument(forest, errReceiver);
        document.setSystemId(location);
        TWSDLParserContextImpl context = new TWSDLParserContextImpl(forest, document, listeners, errReceiver);

        Definitions definitions = parseDefinitions(context, root);
        document.setDefinitions(definitions);
        return document;
    }
View Full Code Here

Examples of com.sun.tools.internal.ws.wsdl.document.WSDLDocument

        Document root = forest.get(location);

        if(root == null)
            return null;

        WSDLDocument document = new WSDLDocument(forest, errReceiver);
        document.setSystemId(location);
        TWSDLParserContextImpl context = new TWSDLParserContextImpl(forest, document, listeners, errReceiver);

        Definitions definitions = parseDefinitions(context, root);
        document.setDefinitions(definitions);
        return document;
    }
View Full Code Here
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.