Coverage Report - org.mule.providers.soap.NamedParameter
 
Classes in this File Line Coverage Branch Coverage Complexity
NamedParameter
0%
0/81
0%
0/3
1.5
 
 1  
 /*
 2  
  * $Id: NamedParameter.java 7976 2007-08-21 14:26:13Z dirk.olmes $
 3  
  * --------------------------------------------------------------------------------------
 4  
  * Copyright (c) MuleSource, Inc.  All rights reserved.  http://www.mulesource.com
 5  
  *
 6  
  * The software in this package is published under the terms of the CPAL v1.0
 7  
  * license, a copy of which has been included with this distribution in the
 8  
  * LICENSE.txt file.
 9  
  */
 10  
 
 11  
 package org.mule.providers.soap;
 12  
 
 13  
 import org.mule.config.i18n.CoreMessages;
 14  
 
 15  
 import javax.xml.namespace.QName;
 16  
 import javax.xml.rpc.ParameterMode;
 17  
 
 18  
 /**
 19  
  * Representation of a Named parameter in a SOAP call
 20  
  */
 21  
 public class NamedParameter
 22  
 {
 23  0
     public final int MODE_IN = 0;
 24  0
     public final int MODE_OUT = 1;
 25  0
     public final int MODE_INOUT = 2;
 26  
 
 27  
     public static final String URI_1999_SCHEMA_XSD = "http://www.w3.org/1999/XMLSchema";
 28  
     public static final String URI_2000_SCHEMA_XSD = "http://www.w3.org/2000/10/XMLSchema";
 29  
     public static final String URI_2001_SCHEMA_XSD = "http://www.w3.org/2001/XMLSchema";
 30  
 
 31  
     public static final String URI_DEFAULT_SCHEMA_XSD = URI_2001_SCHEMA_XSD;
 32  
 
 33  0
     public static final QName XSD_STRING = new QName(URI_DEFAULT_SCHEMA_XSD, "string");
 34  0
     public static final QName XSD_BOOLEAN = new QName(URI_DEFAULT_SCHEMA_XSD, "boolean");
 35  0
     public static final QName XSD_DOUBLE = new QName(URI_DEFAULT_SCHEMA_XSD, "double");
 36  0
     public static final QName XSD_FLOAT = new QName(URI_DEFAULT_SCHEMA_XSD, "float");
 37  0
     public static final QName XSD_INT = new QName(URI_DEFAULT_SCHEMA_XSD, "int");
 38  0
     public static final QName XSD_INTEGER = new QName(URI_DEFAULT_SCHEMA_XSD, "integer");
 39  0
     public static final QName XSD_LONG = new QName(URI_DEFAULT_SCHEMA_XSD, "long");
 40  0
     public static final QName XSD_SHORT = new QName(URI_DEFAULT_SCHEMA_XSD, "short");
 41  0
     public static final QName XSD_BYTE = new QName(URI_DEFAULT_SCHEMA_XSD, "byte");
 42  0
     public static final QName XSD_DECIMAL = new QName(URI_DEFAULT_SCHEMA_XSD, "decimal");
 43  0
     public static final QName XSD_BASE64 = new QName(URI_DEFAULT_SCHEMA_XSD, "base64Binary");
 44  0
     public static final QName XSD_HEXBIN = new QName(URI_DEFAULT_SCHEMA_XSD, "hexBinary");
 45  0
     public static final QName XSD_ANYSIMPLETYPE = new QName(URI_DEFAULT_SCHEMA_XSD, "anySimpleType");
 46  0
     public static final QName XSD_ANYTYPE = new QName(URI_DEFAULT_SCHEMA_XSD, "anyType");
 47  0
     public static final QName XSD_ANY = new QName(URI_DEFAULT_SCHEMA_XSD, "any");
 48  0
     public static final QName XSD_QNAME = new QName(URI_DEFAULT_SCHEMA_XSD, "QName");
 49  0
     public static final QName XSD_DATETIME = new QName(URI_DEFAULT_SCHEMA_XSD, "dateTime");
 50  0
     public static final QName XSD_DATE = new QName(URI_DEFAULT_SCHEMA_XSD, "date");
 51  0
     public static final QName XSD_TIME = new QName(URI_DEFAULT_SCHEMA_XSD, "time");
 52  0
     public static final QName XSD_TIMEINSTANT1999 = new QName(URI_1999_SCHEMA_XSD, "timeInstant");
 53  0
     public static final QName XSD_TIMEINSTANT2000 = new QName(URI_2000_SCHEMA_XSD, "timeInstant");
 54  
 
 55  0
     public static final QName XSD_NORMALIZEDSTRING = new QName(URI_2001_SCHEMA_XSD, "normalizedString");
 56  0
     public static final QName XSD_TOKEN = new QName(URI_2001_SCHEMA_XSD, "token");
 57  
 
 58  0
     public static final QName XSD_UNSIGNEDLONG = new QName(URI_DEFAULT_SCHEMA_XSD, "unsignedLong");
 59  0
     public static final QName XSD_UNSIGNEDINT = new QName(URI_DEFAULT_SCHEMA_XSD, "unsignedInt");
 60  0
     public static final QName XSD_UNSIGNEDSHORT = new QName(URI_DEFAULT_SCHEMA_XSD, "unsignedShort");
 61  0
     public static final QName XSD_UNSIGNEDBYTE = new QName(URI_DEFAULT_SCHEMA_XSD, "unsignedByte");
 62  0
     public static final QName XSD_POSITIVEINTEGER = new QName(URI_DEFAULT_SCHEMA_XSD, "positiveInteger");
 63  0
     public static final QName XSD_NEGATIVEINTEGER = new QName(URI_DEFAULT_SCHEMA_XSD, "negativeInteger");
 64  0
     public static final QName XSD_NONNEGATIVEINTEGER = new QName(URI_DEFAULT_SCHEMA_XSD, "nonNegativeInteger");
 65  0
     public static final QName XSD_NONPOSITIVEINTEGER = new QName(URI_DEFAULT_SCHEMA_XSD, "nonPositiveInteger");
 66  
 
 67  0
     public static final QName XSD_YEARMONTH = new QName(URI_DEFAULT_SCHEMA_XSD, "gYearMonth");
 68  0
     public static final QName XSD_MONTHDAY = new QName(URI_DEFAULT_SCHEMA_XSD, "gMonthDay");
 69  0
     public static final QName XSD_YEAR = new QName(URI_DEFAULT_SCHEMA_XSD, "gYear");
 70  0
     public static final QName XSD_MONTH = new QName(URI_DEFAULT_SCHEMA_XSD, "gMonth");
 71  0
     public static final QName XSD_DAY = new QName(URI_DEFAULT_SCHEMA_XSD, "gDay");
 72  0
     public static final QName XSD_DURATION = new QName(URI_DEFAULT_SCHEMA_XSD, "duration");
 73  
 
 74  0
     public static final QName XSD_NAME = new QName(URI_DEFAULT_SCHEMA_XSD, "Name");
 75  0
     public static final QName XSD_NCNAME = new QName(URI_DEFAULT_SCHEMA_XSD, "NCName");
 76  0
     public static final QName XSD_NMTOKEN = new QName(URI_DEFAULT_SCHEMA_XSD, "NMTOKEN");
 77  0
     public static final QName XSD_NMTOKENS = new QName(URI_DEFAULT_SCHEMA_XSD, "NMTOKENS");
 78  0
     public static final QName XSD_NOTATION = new QName(URI_DEFAULT_SCHEMA_XSD, "NOTATION");
 79  0
     public static final QName XSD_ENTITY = new QName(URI_DEFAULT_SCHEMA_XSD, "ENTITY");
 80  0
     public static final QName XSD_ENTITIES = new QName(URI_DEFAULT_SCHEMA_XSD, "ENTITIES");
 81  0
     public static final QName XSD_IDREF = new QName(URI_DEFAULT_SCHEMA_XSD, "IDREF");
 82  0
     public static final QName XSD_IDREFS = new QName(URI_DEFAULT_SCHEMA_XSD, "IDREFS");
 83  0
     public static final QName XSD_ANYURI = new QName(URI_DEFAULT_SCHEMA_XSD, "anyURI");
 84  0
     public static final QName XSD_LANGUAGE = new QName(URI_DEFAULT_SCHEMA_XSD, "language");
 85  0
     public static final QName XSD_ID = new QName(URI_DEFAULT_SCHEMA_XSD, "ID");
 86  0
     public static final QName XSD_SCHEMA = new QName(URI_DEFAULT_SCHEMA_XSD, "schema");
 87  
 
 88  
     private QName name;
 89  
     private QName type;
 90  
     private ParameterMode mode;
 91  
 
 92  
     public NamedParameter(QName name, QName type, String mode)
 93  0
     {
 94  0
         this.name = name;
 95  0
         this.type = type;
 96  0
         setMode(mode);
 97  0
     }
 98  
 
 99  
     public NamedParameter(QName name, QName type, ParameterMode mode)
 100  0
     {
 101  0
         this.name = name;
 102  0
         this.type = type;
 103  0
         this.mode = mode;
 104  0
     }
 105  
 
 106  
     public NamedParameter(String name, String type, ParameterMode mode)
 107  0
     {
 108  0
         this.name = new QName(name);
 109  0
         this.type = createQName(name);
 110  0
         this.mode = mode;
 111  0
     }
 112  
 
 113  
     protected void setMode(String mode)
 114  
     {
 115  0
         mode = mode.toLowerCase().trim();
 116  0
         if (mode.equals("in"))
 117  
         {
 118  0
             this.mode = ParameterMode.IN;
 119  
         }
 120  0
         else if (mode.equals("out"))
 121  
         {
 122  0
             this.mode = ParameterMode.OUT;
 123  
         }
 124  0
         else if (mode.equals("inout"))
 125  
         {
 126  0
             this.mode = ParameterMode.INOUT;
 127  
         }
 128  
         else
 129  
         {
 130  0
             throw new IllegalArgumentException(CoreMessages.valueIsInvalidFor(mode, "mode").toString());
 131  
         }
 132  0
     }
 133  
 
 134  
     public QName getName()
 135  
     {
 136  0
         return name;
 137  
     }
 138  
 
 139  
     public QName getType()
 140  
     {
 141  0
         return type;
 142  
     }
 143  
 
 144  
     public ParameterMode getMode()
 145  
     {
 146  0
         return mode;
 147  
     }
 148  
 
 149  
     public static QName createQName(String value)
 150  
     {
 151  0
         return new QName(URI_DEFAULT_SCHEMA_XSD, value);
 152  
     }
 153  
 }