You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juddi.apache.org by al...@apache.org on 2013/11/17 01:39:37 UTC

svn commit: r1542621 [2/2] - in /juddi/trunk: juddi-client.net/juddi-client.net-integration.test/ juddi-client.net/juddi-client.net-sample/ juddi-client.net/juddi-client.net.test/ juddi-client.net/juddi-client.net.test/resources/ juddi-client.net/juddi...

Added: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/DigSigUtil.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/DigSigUtil.cs?rev=1542621&view=auto
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/DigSigUtil.cs (added)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/DigSigUtil.cs Sun Nov 17 00:39:36 2013
@@ -0,0 +1,611 @@
+using org.apache.juddi.jaxb;
+using org.apache.juddi.v3.client.config;
+using org.apache.juddi.v3.client.log;
+using org.uddi.apiv3;
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Security.Cryptography;
+using System.Security.Cryptography.X509Certificates;
+using System.Security.Cryptography.Xml;
+using System.Text;
+using System.Xml;
+
+namespace org.apache.juddi.v3.client.cryptor
+{
+    /// <summary>
+    /// A utility class for signing and verifying JAXB Objects, such as UDDI  entities.   
+    /// Notes: This class only supports elements that are signed once. 
+    /// Multiple signature are not currently supported.
+    /// 
+    /// Digital signatures can be generated using a standalone PFX file or via the Windows Certificate store
+    /// </summary>
+    /// <author><a href="mailto:alexoree@apache.org">Alex O'Ree</a></author> 
+    public class DigSigUtil
+    {
+        /// <summary>
+        /// creates an uninitialized DigSigUtil, use put to configure
+        /// </summary>
+        public DigSigUtil()
+        {
+            map = new Properties();
+        }
+
+
+        /// <summary>
+        /// Constructor that will accept a properties set from the juddi config file, or whatever you want
+        /// 
+        /// </summary>
+        /// <param name="c"></param>
+        public DigSigUtil(Properties c)
+        {
+            map = c;
+        }
+
+        private Log logger = LogFactory.getLog(typeof(DigSigUtil));
+
+        /// <summary>
+        /// added a new key/value to the running config
+        /// </summary>
+        /// <param name="key"></param>
+        /// <param name="value"></param>
+        public void put(String key, String value)
+        {
+            map.put(key, value);
+        }
+
+        /**
+         * clears the configuration for reuse
+         */
+        public void clear()
+        {
+
+        }
+        private Properties map = new Properties();
+
+        /**
+     * This is the location of the keystore
+     *
+     * If referencing a Windows certificate store, use WINDOWS-MY as a value
+     * with a null password
+     */
+        public readonly static String SIGNATURE_KEYSTORE_FILE = "keyStorePath";
+        /**
+         * The type of file, such as JKS for most Java applications, or WINDOWS-MY
+         * to use the Windows certificate store of the current user or KeychainStore
+         * for MacOS
+         */
+        public readonly static String SIGNATURE_KEYSTORE_FILETYPE = "keyStoreType";
+        public readonly static string SIGNATURE_KEYSTORE_FILETYPE_VALUE_PFX = "PFX";
+        public readonly static String SIGNATURE_KEYSTORE_FILE_PASSWORD = "filePassword";
+        public readonly static String SIGNATURE_KEYSTORE_KEY_PASSWORD = "keyPassword";
+        public readonly static String SIGNATURE_KEYSTORE_KEY_ALIAS = "keyAlias";
+        public readonly static String TRUSTSTORE_FILE = "trustStorePath";
+        public readonly static String TRUSTSTORE_FILETYPE = "trustStoreType";
+        public readonly static String TRUSTSTORE_FILE_PASSWORD = "trustStorePassword";
+        /**
+         * default is CanonicalizationMethod.EXCLUSIVE
+         *
+         * @see CanonicalizationMethod
+         */
+        public readonly static String CANONICALIZATIONMETHOD = "CanonicalizationMethod";
+        /**
+         * default is http://www.w3.org/2000/09/xmldsig#rsa-sha1
+         *
+         * @see SignatureMethod
+         */
+        public readonly static String SIGNATURE_METHOD = "SignatureMethod";
+        /**
+         * Defines whether or not a certificate is included with the signature.
+         * Values - Include whole X509 Public Key in the signature (recommended)
+         * (default) * Example
+         * <example>
+         * <code>
+         * Map map = new HashMap();
+         * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_BASE64, "true");
+         * </code>
+         * </example>
+         */
+        public readonly static String SIGNATURE_OPTION_CERT_INCLUSION_BASE64 = "BASE64";
+
+
+        /// <summary>
+        /// Include the signer's serial of the public key and the issuer's subject name
+        /// 
+        ///  Clients will not be able to validate the signature unless they have a copy of the signer's public key 
+        ///  in a trust store or the full certificate is included
+        ///  out of band
+        ///      
+        ///  Example
+        ///  <pre>
+        ///  Map map = new HashMap();
+        ///  map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SERIAL, "true");</pre>
+        ///  any value can be used.
+        /// @see SIGNATURE_OPTION_CERT_INCLUSION_BASE64
+        /// </summary>
+        public readonly static String SIGNATURE_OPTION_CERT_INCLUSION_SERIAL = "SERIAL";
+        /*
+         * Include the signer's Subject DN of the public key.
+         * 
+         * Clients will not be able to validate the signature unless they have a copy of the signer's public key 
+         * in a trust store or the full certificate is included
+         * out of band
+         *     
+         * Example
+         * <pre>
+         * Map map = new HashMap();
+         * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN, "true");</pre>
+         * any value can be used.
+         *@see SIGNATURE_OPTION_CERT_INCLUSION_BASE64
+         */
+        public readonly static String SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN = "SUBJECTDN";
+        /*
+         * Include the signer's X500 Prinicple of the public key.
+         * 
+         * Clients will not be able to validate the signature unless they have a copy of the signer's public key 
+         * in a trust store or the full certificate is included
+         * out of band
+         * <example>    
+         * Example
+         * <code>
+         * Map map = new HashMap();
+         * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_X500_PRINICPAL, "true");
+         * </code></example>
+         *@see SIGNATURE_OPTION_CERT_INCLUSION_BASE64
+         */
+        //public readonly static String SIGNATURE_OPTION_CERT_INCLUSION_X500_PRINICPAL = "X500";
+        public readonly static String XML_DIGSIG_NS = "http://www.w3.org/2000/09/xmldsig#";
+        /**
+         * Default value DigestMethod.SHA1 =
+         * "http://www.w3.org/2000/09/xmldsig#sha1"
+         *
+         * @see javax.xml.crypto.dsig.DigestMethod
+         */
+        public readonly static String SIGNATURE_OPTION_DIGEST_METHOD = "digestMethod";
+        /**
+         * When validating a signature, include this field will validate that the
+         * signature is still valid with regards to timestamps NotBefore and
+         * OnOrAfter
+         *
+         * Example
+         * <pre>
+         * Map map = new HashMap();
+         * map.put(DigSigUtil.CHECK_TIMESTAMPS, true);</pre> any value can be used.
+         */
+        public readonly static String CHECK_TIMESTAMPS = "checkTimestamps";
+        public readonly static String CHECK_REVOCATION_STATUS_OCSP = "checkRevocationOCSP";
+        public readonly static String CHECK_REVOCATION_STATUS_CRL = "checkRevocationCRL";
+        public readonly static String CHECK_TRUST_CHAIN = "checkTrust";
+
+
+
+        /// <summary>
+        ///
+        /// Verifies the signature on an enveloped digital signature on a UDDI
+        /// entity, such as a business, service, tmodel or binding template. 
+        /// It is expected that either the public key of the signing certificate is
+        /// included within the signature keyinfo section OR that sufficient
+        /// information is provided in the signature to reference a public key
+        /// located within the Trust Store provided. Optionally, this function
+        /// also validate the signing certificate using the options provided to the
+        /// configuration map.
+        /// </summary>
+        /// <param name="obj"></param>
+        /// <param name="OutErrorMessage"></param>
+        /// <returns></returns>
+        public bool verifySignedUddiEntity(Object obj, out String OutErrorMessage)
+        {
+            if (obj == null)
+            {
+                throw new ArgumentNullException("obj");
+            }
+            string msg = "";
+            //serialize to string
+            XmlDocument doc = null;
+            if (obj.GetType().Equals(typeof(bindingTemplate)))
+            {
+                PrintUDDI<bindingTemplate> p = new PrintUDDI<bindingTemplate>();
+                String s = p.print(obj);
+                doc = StringToXmlDocument(s);
+            }
+            if (obj.GetType().Equals(typeof(businessService)))
+            {
+                PrintUDDI<businessService> p = new PrintUDDI<businessService>();
+                String s = p.print(obj);
+                doc = StringToXmlDocument(s);
+            }
+            if (obj.GetType().Equals(typeof(businessEntity)))
+            {
+                PrintUDDI<businessEntity> p = new PrintUDDI<businessEntity>();
+                String s = p.print(obj);
+                doc = StringToXmlDocument(s);
+            }
+            if (obj.GetType().Equals(typeof(tModel)))
+            {
+                PrintUDDI<tModel> p = new PrintUDDI<tModel>();
+                String s = p.print(obj);
+                doc = StringToXmlDocument(s);
+            }
+
+            //get signing certificate 
+            X509Certificate2 signingCert = getSigningCertificatePublicKey(doc);
+
+            //check timestamps
+            if (map.containsKey(DigSigUtil.CHECK_TIMESTAMPS) && map.getProperty(DigSigUtil.CHECK_TIMESTAMPS).Equals("true", StringComparison.CurrentCultureIgnoreCase))
+            {
+                if (DateTime.Now < signingCert.NotBefore)
+                {
+                    msg += "Signing certificate is not yet valid";
+                }
+                if (DateTime.Now > signingCert.NotAfter)
+                {
+                    msg += "Signing certificate is not yet valid";
+                }
+            }
+            if (map.containsKey(DigSigUtil.CHECK_TRUST_CHAIN) && map.getProperty(DigSigUtil.CHECK_TRUST_CHAIN).Equals("true", StringComparison.CurrentCultureIgnoreCase))
+            {
+                //check trust
+                X509Chain chain = new X509Chain();
+                chain.ChainPolicy.RevocationMode = X509RevocationMode.NoCheck;
+                chain.ChainPolicy.RevocationFlag = X509RevocationFlag.EntireChain;
+                bool r = chain.Build(signingCert);
+                if (!r)
+                {
+                    foreach (X509ChainElement element in chain.ChainElements)
+                    {
+                        msg += ("Element issuer name: " + element.Certificate.Issuer + " is " + element.Certificate.Verify());
+                    }
+                }
+            }
+            //check ocsp
+            //check crl
+            if ((map.containsKey(DigSigUtil.CHECK_REVOCATION_STATUS_OCSP) && map.getProperty(DigSigUtil.CHECK_REVOCATION_STATUS_OCSP).Equals("true", StringComparison.CurrentCultureIgnoreCase)) ||
+                (map.containsKey(DigSigUtil.CHECK_REVOCATION_STATUS_CRL) && map.getProperty(DigSigUtil.CHECK_REVOCATION_STATUS_CRL).Equals("true", StringComparison.CurrentCultureIgnoreCase)))
+            {
+                //check trust
+                X509Chain chain = new X509Chain();
+                chain.ChainPolicy.RevocationMode = X509RevocationMode.Online;
+                chain.ChainPolicy.RevocationFlag = X509RevocationFlag.EntireChain;
+                chain.ChainPolicy.VerificationFlags = X509VerificationFlags.NoFlag;
+                bool r = chain.Build(signingCert);
+                if (!r)
+                {
+                    foreach (X509ChainElement element in chain.ChainElements)
+                    {
+                        msg += ("Element issuer name: " + element.Certificate.Issuer + " is " + element.Certificate.Verify());
+                    }
+                }
+            }
+
+
+            //verify crypto (math)
+            String verifytext = "";
+            bool valid = verifySignature(doc, signingCert, out verifytext);
+            OutErrorMessage = verifytext + msg;
+            return valid;
+        }
+
+        private bool verifySignature(XmlDocument Doc, X509Certificate2 cert, out string OutErrorMessage)
+        {
+            string msg = "";
+
+
+            // Create a new SignedXml object and pass it 
+            // the XML document class.
+            SignedXml signedXml = new SignedXml(Doc);
+
+            // Find the "Signature" node and create a new 
+            // XmlNodeList object.
+            XmlNodeList nodeList = Doc.GetElementsByTagName("Signature");
+
+            // Throw an exception if no signature was found. 
+            if (nodeList.Count <= 0)
+            {
+                msg += ("Verification failed: No Signature was found in the document.");
+            }
+
+            // This example only supports one signature for 
+            // the entire XML document.  Throw an exception  
+            // if more than one signature was found. 
+            if (nodeList.Count >= 2)
+            {
+                msg += ("Verification failed: More that one signature was found for the document.");
+            }
+
+            // Load the first <signature> node.  
+            signedXml.LoadXml((XmlElement)nodeList[0]);
+
+            // Check the signature and return the result. 
+            OutErrorMessage = msg;
+            return signedXml.CheckSignature(cert, true);
+
+        }
+
+        private X509Certificate2 getSigningCertificatePublicKey(XmlDocument doc)
+        {
+            if (doc == null)
+                throw new ArgumentNullException("doc");
+            XmlNode node = doc.ChildNodes[1];   //this should be the uddi entry
+            X509Certificate2 cert = null;
+            IEnumerator it = node.ChildNodes.GetEnumerator();
+            while (it.MoveNext())
+            {
+                XmlNode x = (XmlNode)it.Current;
+                if (x.NamespaceURI.Equals(DigSigUtil.XML_DIGSIG_NS, StringComparison.CurrentCultureIgnoreCase) &&
+                    x.LocalName.Equals("Signature", StringComparison.CurrentCultureIgnoreCase))
+                {
+                    IEnumerator it2 = x.ChildNodes.GetEnumerator();
+                    while (it2.MoveNext())
+                    {
+                        XmlNode x2 = (XmlNode)it2.Current;
+                        if (x2.LocalName.Equals("KeyInfo", StringComparison.CurrentCultureIgnoreCase))
+                        {
+                            IEnumerator it3 = x2.ChildNodes.GetEnumerator();
+                            while (it3.MoveNext())
+                            {
+                                XmlNode x3 = (XmlNode)it3.Current;
+                                if (x3.LocalName.Equals("X509Data", StringComparison.CurrentCultureIgnoreCase))
+                                {
+                                    //X509Certificate
+                                    IEnumerator it4 = x3.ChildNodes.GetEnumerator();
+                                    while (it4.MoveNext())
+                                    {
+                                        XmlNode x4 = (XmlNode)it4.Current;
+                                        if (x4.LocalName.Equals("X509Certificate", StringComparison.CurrentCultureIgnoreCase))
+                                        {
+                                            //X509Certificate
+                                            String c =
+                                                //"-----BEGIN CERTIFICATE-----\n"
+                                                x4.InnerText;
+                                            //+ "\n-----END CERTIFICATE-----";
+
+                                            cert = new X509Certificate2(Convert.FromBase64String(c));
+                                            logger.info("embedded certificate found, X509 public key " + cert.Subject);
+                                            return cert;
+                                        }
+
+                                    }
+                                }
+
+                            }
+                        }
+
+                    }
+                }
+            }
+            return null;
+        }
+
+        /// <summary>
+        ///  Digitally signs a UDDI entity, such as a business, service, tmodel or
+        /// binding template using the map to provide certificate key stores and
+        /// credentials. The UDDI entity MUST support XML Digital Signatures
+        /// (tModel, Business, Service, Binding Template)
+        /// </summary>
+        /// <param name="bt"></param>
+        /// <returns></returns>
+        public object signUddiEntity(object bt)
+        {
+
+            XmlDocument doc = null;
+            if (bt.GetType().Equals(typeof(bindingTemplate)))
+            {
+                PrintUDDI<bindingTemplate> p = new PrintUDDI<bindingTemplate>();
+                String s = p.print(bt);
+                doc = StringToXmlDocument(s);
+            }
+            if (bt.GetType().Equals(typeof(businessService)))
+            {
+                PrintUDDI<businessService> p = new PrintUDDI<businessService>();
+                String s = p.print(bt);
+                doc = StringToXmlDocument(s);
+            }
+            if (bt.GetType().Equals(typeof(businessEntity)))
+            {
+                PrintUDDI<businessEntity> p = new PrintUDDI<businessEntity>();
+                String s = p.print(bt);
+                doc = StringToXmlDocument(s);
+            }
+            if (bt.GetType().Equals(typeof(tModel)))
+            {
+                PrintUDDI<tModel> p = new PrintUDDI<tModel>();
+                String s = p.print(bt);
+                doc = StringToXmlDocument(s);
+            }
+
+
+            X509Certificate2 key = GetKey();
+            XmlElement sig = SignXml(doc, key);
+            //append the signature to the document
+            doc.ChildNodes[1].AppendChild(sig);
+
+            String signedXml = doc.OuterXml;
+            if (bt.GetType().Equals(typeof(bindingTemplate)))
+            {
+                PrintUDDI<bindingTemplate> p = new PrintUDDI<bindingTemplate>();
+                return p.createObject(signedXml);
+            }
+            if (bt.GetType().Equals(typeof(businessService)))
+            {
+                PrintUDDI<businessService> p = new PrintUDDI<businessService>();
+                return p.createObject(signedXml);
+            }
+            if (bt.GetType().Equals(typeof(businessEntity)))
+            {
+                PrintUDDI<businessEntity> p = new PrintUDDI<businessEntity>();
+                return p.createObject(signedXml);
+            }
+            if (bt.GetType().Equals(typeof(tModel)))
+            {
+                PrintUDDI<tModel> p = new PrintUDDI<tModel>();
+                return p.createObject(signedXml);
+            }
+            return bt;
+        }
+
+        private X509Certificate2 GetKey()
+        {
+            
+            String storelocation = map.getProperty(DigSigUtil.SIGNATURE_KEYSTORE_FILETYPE);
+            if (storelocation.Equals( DigSigUtil.SIGNATURE_KEYSTORE_FILETYPE_VALUE_PFX, StringComparison.CurrentCultureIgnoreCase))
+            {
+                logger.info("Attempting to load certificate from " + map.getProperty(DigSigUtil.SIGNATURE_KEYSTORE_FILE));
+                X509Certificate2 cert = new X509Certificate2(map.getProperty(DigSigUtil.SIGNATURE_KEYSTORE_FILE), 
+                    map.getProperty(DigSigUtil.SIGNATURE_KEYSTORE_FILE_PASSWORD));
+                return cert;
+
+            }
+            String storename = map.getProperty(DigSigUtil.SIGNATURE_KEYSTORE_FILE);
+            String keyserial = map.getProperty(DigSigUtil.SIGNATURE_KEYSTORE_KEY_ALIAS);
+            
+            X509Store store = new X509Store(
+                (StoreName)Enum.Parse(typeof(StoreName), storename),
+                (StoreLocation)Enum.Parse(typeof(StoreLocation), storelocation));
+            store.Open(OpenFlags.ReadOnly);
+            X509Certificate2Enumerator it = store.Certificates.GetEnumerator();
+            while (it.MoveNext())
+            {
+                X509Certificate2 cert = it.Current;
+                if (cert.HasPrivateKey)
+                {
+                    //do some comparisions
+                    if (cert.SerialNumber.Equals(keyserial, StringComparison.CurrentCultureIgnoreCase))
+                    {
+                        store.Close();
+                        return cert;
+                    }
+                }
+            }
+            store.Close();
+            return null;
+
+        }
+
+
+        XmlDocument StringToXmlDocument(String s)
+        {
+            XmlDocument xmlDoc = new XmlDocument();
+            xmlDoc.PreserveWhitespace = false;
+            xmlDoc.LoadXml(s);
+            return xmlDoc;
+        }
+
+
+        //source http://objectmix.com/dotnet/794749-digitally-sign-xml-doc-x509certificate-solution.html
+
+        //Certificate get Signature method
+        private XmlElement SignXml(XmlDocument xmlDoc, X509Certificate2 cert)
+        {
+            //preserve ws - difference here I noticed - mine was set to true
+            xmlDoc.PreserveWhitespace = false;
+
+            // Create a SignedXml object.
+            SignedXml signedXml = new SignedXml(xmlDoc);
+
+            // Load the certificate into a KeyInfoX509Data object
+            // and add it to the KeyInfo object.
+            //// Add an RSAKeyValue KeyInfo (optional; helps recipient find key to validate).
+            KeyInfo keyInfo = new KeyInfo();
+            if (map.getProperty(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_BASE64).Equals("true", StringComparison.CurrentCultureIgnoreCase))
+                keyInfo.AddClause(new KeyInfoX509Data(cert));
+            if (map.getProperty(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN).Equals("true", StringComparison.CurrentCultureIgnoreCase))
+            {
+                KeyInfoX509Data data = new KeyInfoX509Data();
+                data.AddSubjectName(cert.SubjectName.Name);
+                keyInfo.AddClause(data);
+            }
+            if (map.getProperty(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SERIAL).Equals("true", StringComparison.CurrentCultureIgnoreCase))
+            {
+                KeyInfoX509Data data = new KeyInfoX509Data();
+                data.AddIssuerSerial(cert.IssuerName.Name, cert.SerialNumber);
+                keyInfo.AddClause(data);
+            }
+
+            signedXml.KeyInfo = keyInfo;
+
+            //CANON method
+            signedXml.SignedInfo.CanonicalizationMethod = map.getProperty(DigSigUtil.CANONICALIZATIONMETHOD);
+            if (String.IsNullOrEmpty(signedXml.SignedInfo.CanonicalizationMethod))
+                signedXml.SignedInfo.CanonicalizationMethod = SignedXml.XmlDsigExcC14NWithCommentsTransformUrl;
+
+            signedXml.SignedInfo.SignatureMethod = map.getProperty(DigSigUtil.SIGNATURE_METHOD);
+            if (String.IsNullOrEmpty(signedXml.SignedInfo.SignatureMethod))
+                signedXml.SignedInfo.SignatureMethod = SignedXml.XmlDsigRSASHA1Url;
+
+
+            // Set the rsaKey to the certificate's private key
+            RSACryptoServiceProvider rsaKey = (RSACryptoServiceProvider)cert.PrivateKey;
+
+            // Add the key to the SignedXml document.
+            signedXml.SigningKey = rsaKey;
+
+            // Create a reference to be signed.
+            Reference reference = new Reference();
+            reference.Uri = "";
+
+            // Add an enveloped transformation to the reference.
+            XmlDsigEnvelopedSignatureTransform env = new XmlDsigEnvelopedSignatureTransform();
+            reference.AddTransform(env);
+
+
+            // Add the reference to the SignedXml object.
+            signedXml.AddReference(reference);
+
+            // Now we can compute the signature.
+            signedXml.ComputeSignature();
+            return signedXml.GetXml();
+            //   return signedXml;
+
+        }
+
+        //gets payload data and returns xmn XMLDocument
+        private XmlDocument GetPayLoadData(string xmlstring)
+        {
+            XmlDocument xmlDoc = new XmlDocument();
+            xmlDoc.LoadXml(xmlstring);
+            return xmlDoc;
+
+        }
+
+        //GET CERT BY FRIENDLYNAME
+        public X509Certificate2 GetCertificateBySubject(string subject)
+        {
+            X509Certificate2 cert = null;
+
+            try
+            {
+
+                X509Store xstore = new X509Store(StoreName.Root,
+                StoreLocation.LocalMachine);
+                xstore.Open(OpenFlags.IncludeArchived);
+
+
+                string strOutput = string.Empty;
+
+                foreach (X509Certificate2 cert2 in xstore.Certificates)
+                {
+
+                    if (cert2.FriendlyName == subject.ToString())
+                    {
+                        cert = cert2;
+                        break;
+                    }
+
+                }
+            }
+            catch (Exception ex)
+            {
+                logger.error("", ex);
+
+                throw ex;
+            }
+
+            return cert;
+        }
+
+
+
+
+        
+    }
+}

Added: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/TripleDESCryptor.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/TripleDESCryptor.cs?rev=1542621&view=auto
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/TripleDESCryptor.cs (added)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/TripleDESCryptor.cs Sun Nov 17 00:39:36 2013
@@ -0,0 +1,80 @@
+/*
+ * Copyright 2001-2008 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.
+ *
+ */
+using System;
+using System.Collections.Generic;
+using System.IO;
+
+using System.Security.Cryptography;
+using System.Text;
+
+namespace org.apache.juddi.v3.client.cryptor
+{
+    /// <summary>
+    /// 3DES Ciphers
+    /// </summary>
+    /// <author><a href="mailto:alexoree@apache.org">Alex O'Ree</a></author> 
+    public sealed class TripleDESCryptor : Cryptor
+    {
+
+        /**
+         * TripleDESCryptoServiceProvider
+        Legal min key size = 128
+        Legal max key size = 192
+        Legal min block size = 64
+        Legal max block size = 64
+         * */
+        public string encrypt(string toEncrypt)
+        {
+            byte[] toEncryptArray = UTF8Encoding.UTF8.GetBytes(toEncrypt);
+
+            // Get the key from config file
+
+            //192 64 s6RDEWiv+mQ= iFGC3Nx1XvUCfDbHTKg8BEPIlJ+oLM7l
+            TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
+            tdes.IV = Convert.FromBase64String("s6RDEWiv+mQ=");
+            tdes.Key = Convert.FromBase64String("iFGC3Nx1XvUCfDbHTKg8BEPIlJ+oLM7l");
+
+            ICryptoTransform cTransform = tdes.CreateEncryptor();
+            //transform the specified region of bytes array to resultArray
+            byte[] resultArray =
+              cTransform.TransformFinalBlock(toEncryptArray, 0,
+              toEncryptArray.Length);
+            //Release resources held by TripleDes Encryptor
+            tdes.Clear();
+            //Return the encrypted data into unreadable string format
+            return Convert.ToBase64String(resultArray, 0, resultArray.Length);
+        }
+
+        public string decrypt(string str)
+        {
+            //get the byte code of the string
+            byte[] toEncryptArray =  Convert.FromBase64String(str);
+            TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();
+            tdes.IV = Convert.FromBase64String("s6RDEWiv+mQ=");
+            tdes.Key = Convert.FromBase64String("iFGC3Nx1XvUCfDbHTKg8BEPIlJ+oLM7l");
+
+
+            ICryptoTransform cTransform = tdes.CreateDecryptor();
+            byte[] resultArray = cTransform.TransformFinalBlock(
+                                 toEncryptArray, 0, toEncryptArray.Length);
+            //Release resources held by TripleDes Encryptor                
+            tdes.Clear();
+            //return the Clear decrypted TEXT
+            return UTF8Encoding.UTF8.GetString(resultArray);
+        }
+    }
+}

Modified: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WADL2UDDI.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WADL2UDDI.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WADL2UDDI.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WADL2UDDI.cs Sun Nov 17 00:39:36 2013
@@ -344,7 +344,14 @@ namespace org.apache.juddi.v3.client.map
 
         public const String PACKAGE = "org.apache.juddi.v3.client.mappings.wadl";
 
-
+        /// <summary>
+        /// used to ignore SSL errors
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="certification"></param>
+        /// <param name="chain"></param>
+        /// <param name="sslPolicyErrors"></param>
+        /// <returns></returns>
         public bool AcceptAllCertifications(object sender, System.Security.Cryptography.X509Certificates.X509Certificate certification, System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors)
         {
             return true;
@@ -357,11 +364,11 @@ namespace org.apache.juddi.v3.client.map
          * @param password
          * @param ignoreSSLErrors if true, SSL errors are ignored
          * @return a non-null "application" object, represeting a WADL's application root XML 
-         * Sample code:<br>
-         * <pre>
+         * Sample code:
+         * <example>
          * application app = WADL2UDDI.ParseWadl(new URL("http://server/wsdl.wsdl"), "username", "password", 
          *      clerkManager.getClientConfig().isX_To_Wsdl_Ignore_SSL_Errors() );
-         * </pre>
+         * </example>
          */
         public application ParseWadl(Uri weburl, String username, String password, bool ignoreSSLErrors)
         {

Modified: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WSDL2UDDI.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WSDL2UDDI.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WSDL2UDDI.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WSDL2UDDI.cs Sun Nov 17 00:39:36 2013
@@ -33,30 +33,39 @@ using System.Xml.Serialization;
 
 namespace org.apache.juddi.v3.client.mapping
 {
-    /**
- * This class implements the OASIS <a
- * href="http://www.oasis-open.org/committees/uddi-spec/doc/tn/uddi-spec-tc-tn-wsdl-v202-20040631.htm">
- * 'Using WSDL in a UDDI Registry, Version 2.0.2'</a> technote. This class
- * creates a detailed mapping of WSDL 1.1 artifacts to the UDDI V3 data model.
- * <ul> <th>Section 2.4 in the technote</th> <li>2.4.1 wsdl:portType ->
- * uddi:tModel - {@link #createWSDLPortTypeTModels(String, Map)}</li> <li>2.4.2
- * wsdl:binding -> uddi:tModel -
- * {@link #createWSDLBindingTModels(String, Map)}</li> <li>TODO: 2.4.3
- * wsdl:service -> uddi:businessService</li> <li>TODO: 2.4.4 wsdl:port ->
- * uddi:bindingTemplate</li> <li>TODO: 2.4.5 wsdl:port Address Extensions ->
- * uddi:bindingTemplate</li> </ul>
- *
- * @author Kurt T Stam, ported by Alex O'Ree
- * @Since 3.2
- */
+    /// <summary>
+    /// 
+    /// This class implements the OASIS <a
+    /// href="http://www.oasis-open.org/committees/uddi-spec/doc/tn/uddi-spec-tc-tn-wsdl-v202-20040631.htm">
+    /// 'Using WSDL in a UDDI Registry, Version 2.0.2'</a> technote. This class
+    /// creates a detailed mapping of WSDL 1.1 artifacts to the UDDI V3 data model.
+    /// <ul> <th>Section 2.4 in the technote</th> <li>2.4.1 wsdl:portType ->
+    /// uddi:tModel - {@link #createWSDLPortTypeTModels(String, Map)}</li> <li>2.4.2
+    /// wsdl:binding -> uddi:tModel -
+    /// {@link #createWSDLBindingTModels(String, Map)}</li> <li>TODO: 2.4.3
+    /// wsdl:service -> uddi:businessService</li> <li>TODO: 2.4.4 wsdl:port ->
+    /// uddi:bindingTemplate</li> <li>TODO: 2.4.5 wsdl:port Address Extensions ->
+    /// uddi:bindingTemplate</li> </ul>
+    /// 
+    /// </summary>
+    /// @author Kurt T Stam
+    /// @Since 3.1.5
     public class WSDL2UDDI
     {
+
         /// <summary>
         /// 
+        /// Required Properties are: businessName, for example: &#39;Apache&#39; nodeName,
+        /// for example: &#39;uddi.example.org_80&#39; keyDomain, for example:
+        /// juddi.apache.org
+        /// 
+        /// Optional Properties are: lang: for example: &#39;nl&#39;
+        /// 
         /// </summary>
-        /// <param name="clerk"></param>
-        /// <param name="urlLocalizer"></param>
-        /// <param name="properties">required props, keyDomain,businessKey, nodeName </param>
+        /// <param name="clerk">can be null if register/unregister methods are not used.</param>
+        /// <param name="urlLocalizer">A reference to an custom</param>
+        /// <param name="properties">required values keyDomain, businessKey, nodeName</param>
+        /// <exception cref="ConfigurationException"></exception>
         public WSDL2UDDI(UDDIClerk clerk, URLLocalizer urlLocalizer, Properties properties)
         {
             if (properties == null)
@@ -103,6 +112,8 @@ namespace org.apache.juddi.v3.client.map
             this.lang = properties.getProperty(Property.LANG, Property.DEFAULT_LANG);
 
         }
+
+
         public businessService[] registerBusinessServices(org.xmlsoap.schemas.easyWsdl.tDefinitions wsdlDefinition)
         {
             List<businessService> businessServices = new List<businessService>();
@@ -190,15 +201,15 @@ namespace org.apache.juddi.v3.client.map
 
         }
 
-        /**
-    * Perform a lookup by serviceKey, and will return null if not found.
-    *
-    * @param serviceKey
-    * @return
-    * @throws RemoteException
-    * @throws ConfigurationException
-    * @throws TransportException
-    */
+        /// <summary>
+        /// 
+        /// Perform a lookup by serviceKey, and will return null if not found.
+        /// 
+        /// </summary>
+        /// <param name="serviceKey"></param>
+        /// <returns></returns>
+        /// <exception cref="Exception"></exception>
+        /// <exception cref="ConfigurationErrorsException"></exception>
         private businessService lookupService(string serviceKey)
         {
             //Checking if this serviceKey already exist
@@ -334,58 +345,13 @@ namespace org.apache.juddi.v3.client.map
             }
         }
 
-        /**
-    * <h3>2.4.1 wsdl:portType -> uddi:tModel</h3>
-    *
-    * <p>A wsdl:portType MUST be modeled as a uddi:tModel.</p>
-    *
-    * <p>The minimum information that must be captured about a portType is its
-    * entity type, its local name, its namespace, and the location of the WSDL
-    * document that defines the portType. Capturing the entity type enables
-    * users to search for tModels that represent portType artifacts. Capturing
-    * the local name, namespace, and WSDL location enables users to locate the
-    * definition of the specified portType artifact.</p>
-    *
-    * <p>The wsdl:portType information is captured as follows:</p>
-    *
-    * <p>The uddi:name element of the tModel MUST be the value of the name
-    * attribute of the wsdl:portType.</p>
-    *
-    * <p>The tModel MUST contain a categoryBag, and the categoryBag MUST
-    * contain a keyedReference with a tModelKey of the WSDL Entity Type
-    * category system and a keyValue of "portType".</p>
-    *
-    * <p>If the wsdl:portType has a targetNamespace then the categoryBag MUST
-    * also contain an additional keyedReference with a tModelKey of the XML
-    * Namespace category system and a keyValue of the target namespace of the
-    * wsdl:definitions element that contains the wsdl:portType. If the
-    * targetNamespace is absent from the portType, a categoryBag MUST NOT
-    * contain a keyedReference to the XML Namespace category system.</p>
-    *
-    * <p>The tModel MUST contain an overviewDoc with an overviewURL containing
-    * the location of the WSDL document that describes the wsdl:portType.</p>
-    * Example Code
-    * <pre>
-    * URL url = new URL("http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl");
-    * String domain = url.getHost();
-    * ReadWSDL rw = new ReadWSDL();
-    * Definition wsdlDefinition = rw.readWSDL(url);
-    * properties.put("keyDomain", domain);
-    * properties.put("businessName", domain);
-    * properties.put("serverName", url.getHost());
-    * properties.put("serverPort", url.getPort());
-    * wsdlURL = wsdlDefinition.getDocumentBaseURI();
-    * WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties);
-    * Map<QName, PortType> portTypes = (Map<QName, PortType>) wsdlDefinition.getAllPortTypes();
-    * Set<TModel> portTypeTModels = wsdl2UDDI.createWSDLPortTypeTModels(wsdlURL, portTypes);
-    * </pre>
-    *
-    * @param wsdlURL This is used to set the Overview URL
-    * @param portType Map
-    * @return set of WSDL PortType tModels
-    * @throws WSDLException
-    */
-
+        /// <summary>
+        /// a simple convenience wrapper
+        /// </summary>
+        /// <param name="tModelKey"></param>
+        /// <param name="keyName"></param>
+        /// <param name="value"></param>
+        /// <returns></returns>
         protected static keyedReference newKeyedReference(String tModelKey, String keyName, String value)
         {
             keyedReference typesReference = new keyedReference();
@@ -394,12 +360,14 @@ namespace org.apache.juddi.v3.client.map
             typesReference.keyValue = (value);
             return typesReference;
         }
-        /**
-           * Builds a finder to find the binding tModels for a portType.
-           *
-           * @param processName
-           * @return
-           */
+        /// <summary>
+        /// 
+        /// Builds a finder to find the binding tModels for a portType.
+        /// 
+        /// </summary>
+        /// <param name="portType"></param>
+        ///  <param name="ns">Namespace</param>
+        /// <returns></returns>
         public static find_tModel createFindBindingTModelForPortType(String portType, String ns)
         {
 
@@ -429,12 +397,14 @@ namespace org.apache.juddi.v3.client.map
             }
             return findTModel;
         }
-        /**
- * Builds a finder to find the portType tModels for a portType.
- *
- * @param processName
- * @return
- */
+        /// <summary>
+        /// 
+        /// Builds a finder to find the portType tModels for a portType.
+        /// 
+        /// </summary>
+        /// <param name="portTypeName"></param>
+        /// <param name="ns">Namespace</param>
+        /// <returns></returns>
         public static find_tModel createFindPortTypeTModelForPortType(String portTypeName, String ns)
         {
             find_tModel findTModel = new find_tModel();
@@ -468,27 +438,27 @@ namespace org.apache.juddi.v3.client.map
 
         /// <summary>
         /// 
-        ///   Creates a business service based off of a WSDL definition<Br>No changes are made to the UDDI
+        /// Creates a business service based off of a WSDL definition&lt;Br&gt;No changes are made to the UDDI
         /// endpoints using this method
-        /// <br>
+        /// &lt;br&gt;
         /// Example Code:
-        /// <pre>
-        /// URL url = new URL("http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl");
+        /// &lt;pre&gt;
+        /// URL url = new URL(&quot;http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl&quot;);
         /// String domain = url.getHost();
         /// ReadWSDL rw = new ReadWSDL();
         /// Definition wsdlDefinition = rw.readWSDL(url);
-        /// properties.put("keyDomain", domain);
-        /// properties.put("businessName", domain);
-        /// properties.put("serverName", url.getHost());
-        /// properties.put("serverPort", url.getPort());
+        /// properties.put(&quot;keyDomain&quot;, domain);
+        /// properties.put(&quot;businessName&quot;, domain);
+        /// properties.put(&quot;serverName&quot;, url.getHost());
+        /// properties.put(&quot;serverPort&quot;, url.getPort());
         /// wsdlURL = wsdlDefinition.getDocumentBaseURI();
         /// WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties);
         /// BusinessServices businessServices = wsdl2UDDI.createBusinessServices(wsdlDefinition);
-        /// /// </pre>
+        /// &lt;/pre&gt;
         /// </summary>
         /// <param name="wsdlDefinition">must not be null</param>
         /// <returns>a business service</returns>
-        /// @throws IllegalArgumentException if the wsdlDefinition is null
+        /// <exception cref="ArgumentNullException"> if the wsdlDefinition is null</exception>
         public businessService[] createBusinessServices(org.xmlsoap.schemas.easyWsdl.tDefinitions wsdlDefinition)
         {
             if (wsdlDefinition == null)
@@ -523,13 +493,14 @@ namespace org.apache.juddi.v3.client.map
             return businessServices.ToArray();
         }
 
-        /**
-     * Creates a UDDI Business Service.
-     *
-     * @param serviceName
-     * @param wsldDefinition
-     * @return
-     */
+        /// <summary>
+        /// 
+        /// Creates a UDDI Business Service.
+        /// 
+        /// </summary>
+        /// <param name="serviceQName"></param>
+        /// <param name="wsdlDefinition"></param>
+        /// <returns></returns>
         private businessService createBusinessService(QName serviceQName, xmlsoap.schemas.easyWsdl.tDefinitions wsdlDefinition)
         {
 
@@ -699,7 +670,7 @@ namespace org.apache.juddi.v3.client.map
                     tModelInstanceInfo tModelInstanceInfoBinding = new tModelInstanceInfo();
                     tModelInstanceInfoBinding.tModelKey = (keyDomainURI + bindingelement.name);
                     instanceDetails instanceDetails = new instanceDetails();
-                    instanceDetails.instanceParms =  (portName) ;
+                    instanceDetails.instanceParms = (portName);
                     tModelInstanceInfoBinding.instanceDetails = (instanceDetails);
                     description descriptionB = new description();
                     descriptionB.lang = (lang);
@@ -742,57 +713,60 @@ namespace org.apache.juddi.v3.client.map
 
             return bindingTemplate;
         }
-        /**
-     * <h3>2.4.1 wsdl:portType -> uddi:tModel</h3>
-     *
-     * <p>A wsdl:portType MUST be modeled as a uddi:tModel.</p>
-     *
-     * <p>The minimum information that must be captured about a portType is its
-     * entity type, its local name, its namespace, and the location of the WSDL
-     * document that defines the portType. Capturing the entity type enables
-     * users to search for tModels that represent portType artifacts. Capturing
-     * the local name, namespace, and WSDL location enables users to locate the
-     * definition of the specified portType artifact.</p>
-     *
-     * <p>The wsdl:portType information is captured as follows:</p>
-     *
-     * <p>The uddi:name element of the tModel MUST be the value of the name
-     * attribute of the wsdl:portType.</p>
-     *
-     * <p>The tModel MUST contain a categoryBag, and the categoryBag MUST
-     * contain a keyedReference with a tModelKey of the WSDL Entity Type
-     * category system and a keyValue of "portType".</p>
-     *
-     * <p>If the wsdl:portType has a targetNamespace then the categoryBag MUST
-     * also contain an additional keyedReference with a tModelKey of the XML
-     * Namespace category system and a keyValue of the target namespace of the
-     * wsdl:definitions element that contains the wsdl:portType. If the
-     * targetNamespace is absent from the portType, a categoryBag MUST NOT
-     * contain a keyedReference to the XML Namespace category system.</p>
-     *
-     * <p>The tModel MUST contain an overviewDoc with an overviewURL containing
-     * the location of the WSDL document that describes the wsdl:portType.</p>
-     * Example Code
-     * <pre>
-     * URL url = new URL("http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl");
-     * String domain = url.getHost();
-     * ReadWSDL rw = new ReadWSDL();
-     * Definition wsdlDefinition = rw.readWSDL(url);
-     * properties.put("keyDomain", domain);
-     * properties.put("businessName", domain);
-     * properties.put("serverName", url.getHost());
-     * properties.put("serverPort", url.getPort());
-     * wsdlURL = wsdlDefinition.getDocumentBaseURI();
-     * WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties);
-     * Map<QName, PortType> portTypes = (Map<QName, PortType>) wsdlDefinition.getAllPortTypes();
-     * Set<TModel> portTypeTModels = wsdl2UDDI.createWSDLPortTypeTModels(wsdlURL, portTypes);
-     * </pre>
-     *
-     * @param wsdlURL This is used to set the Overview URL
-     * @param portType Map
-     * @return set of WSDL PortType tModels
-     * @throws WSDLException
-     */
+
+        /// <summary>
+        /// 
+        /// &lt;h3&gt;2.4.1 wsdl:portType -&gt; uddi:tModel&lt;/h3&gt;
+        /// 
+        /// &lt;p&gt;A wsdl:portType MUST be modeled as a uddi:tModel.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The minimum information that must be captured about a portType is its
+        /// entity type, its local name, its namespace, and the location of the WSDL
+        /// document that defines the portType. Capturing the entity type enables
+        /// users to search for tModels that represent portType artifacts. Capturing
+        /// the local name, namespace, and WSDL location enables users to locate the
+        /// definition of the specified portType artifact.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The wsdl:portType information is captured as follows:&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The uddi:name element of the tModel MUST be the value of the name
+        /// attribute of the wsdl:portType.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The tModel MUST contain a categoryBag, and the categoryBag MUST
+        /// contain a keyedReference with a tModelKey of the WSDL Entity Type
+        /// category system and a keyValue of &quot;portType&quot;.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;If the wsdl:portType has a targetNamespace then the categoryBag MUST
+        /// also contain an additional keyedReference with a tModelKey of the XML
+        /// Namespace category system and a keyValue of the target namespace of the
+        /// wsdl:definitions element that contains the wsdl:portType. If the
+        /// targetNamespace is absent from the portType, a categoryBag MUST NOT
+        /// contain a keyedReference to the XML Namespace category system.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The tModel MUST contain an overviewDoc with an overviewURL containing
+        /// the location of the WSDL document that describes the wsdl:portType.&lt;/p&gt;
+        /// Example Code
+        /// &lt;pre&gt;
+        /// URL url = new URL(&quot;http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl&quot;);
+        /// String domain = url.getHost();
+        /// ReadWSDL rw = new ReadWSDL();
+        /// Definition wsdlDefinition = rw.readWSDL(url);
+        /// properties.put(&quot;keyDomain&quot;, domain);
+        /// properties.put(&quot;businessName&quot;, domain);
+        /// properties.put(&quot;serverName&quot;, url.getHost());
+        /// properties.put(&quot;serverPort&quot;, url.getPort());
+        /// wsdlURL = wsdlDefinition.getDocumentBaseURI();
+        /// WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties);
+        /// Map&lt;QName, PortType&gt; portTypes = (Map&lt;QName, PortType&gt;) wsdlDefinition.getAllPortTypes();
+        /// Set&lt;TModel&gt; portTypeTModels = wsdl2UDDI.createWSDLPortTypeTModels(wsdlURL, portTypes);
+        /// &lt;/pre&gt;
+        /// 
+        /// </summary>
+        /// <param name="wsdlURL">This is used to set the Overview URL</param>
+        /// <param name="portTypes">Map</param>
+        /// <returns>set of WSDL PortType tModels</returns>
+        /// <exception cref="Exception"></exception>
+
         public List<tModel> createWSDLPortTypeTModels(string wsdlURL, Dictionary<QName, xmlsoap.schemas.easyWsdl.tPortType> portTypes)
         {
             List<tModel> tModels = new List<tModel>();
@@ -856,126 +830,59 @@ namespace org.apache.juddi.v3.client.map
 
         static Log log = LogFactory.getLog(typeof(WSDL2UDDI));
 
-        /**
-    * <h3>2.4.2 wsdl:binding -> uddi:tModel</h3>
-    *
-    * <p>A wsdl:binding MUST be modeled as a uddi:tModel. The minimum
-    * information that must be captured about a binding is its entity type, its
-    * local name, its namespace, the location of the WSDL document that defines
-    * the binding, the portType that it implements, its protocol, and,
-    * optionally, the transport information. Capturing the entity type enables
-    * users to search for tModels that represent binding artifacts. Capturing
-    * the local name, namespace, and WSDL location enables users to locate the
-    * definition of the specified binding artifact. The link to the portType
-    * enables users to search for bindings that implement a particular
-    * portType.</p>
-    *
-    * <p>A wsdl:binding corresponds to a WSDL service interface definition as
-    * defined by the mapping in the Version 1 Best Practice. To maintain
-    * compatibility with the previous mapping, the binding must also be
-    * characterized as type "wsdlSpec".</p>
-    *
-    * <p>The wsdl:binding information is captured as follows:</p>
-    *
-    * <p>The uddi:name element of the tModel MUST be the value of the name
-    * attribute of the wsdl:binding.</p>
-    *
-    * <p>The tModel MUST contain a categoryBag, and the categoryBag MUST
-    * contain at least the following keyedReference elements:</p> <ol> <li> A
-    * keyedReference with a tModelKey of the WSDL Entity Type category system
-    * and a keyValue of "binding".</li> <li> A keyedReference with a tModelKey
-    * of the WSDL portType Reference category system and a keyValue of the
-    * tModelKey that models the wsdl:portType to which the wsdl:binding
-    * relates.</li> <li> A keyedReference with a tModelKey of the UDDI Types
-    * category system and a keyValue of "wsdlSpec" for backward
-    * compatibility[1].</li> <li> One or two keyedReferences as required to
-    * capture the protocol and optionally the transport information refer to
-    * the next section.</li> </ol>
-    *
-    * <p>If the wsdl:binding has a targetNamespace then the categoryBag MUST
-    * also contain an additional keyedReference with a tModelKey of the XML
-    * Namespace category system and a keyValue of the target namespace of the
-    * wsdl:definitions element that contains the wsdl:binding. If the
-    * targetNamespace is absent from the binding, a categoryBag MUST NOT
-    * contain a keyedReference to the XML Namespace category system.</p>
-    *
-    * <p>The tModel MUST contain an overviewDoc with an overviewURL containing
-    * the location of the WSDL document that describes the wsdl:binding.</p>
-    *
-    * <h4>2.4.2.1 wsdl:binding Extensions</h4>
-    *
-    * <p>Information about the protocol and transport, if applicable, specified
-    * in an extension to the wsdl:binding is used to categorize the binding
-    * tModel as described in the following sections. This information is
-    * specified using two of the category systems defined in this Technical
-    * Note:</p> <ol> <li> Protocol Categorization</li> <li> Transport
-    * Categorization</li> </ol> <p>The valid values for the Protocol
-    * Categorization category system are tModelKeys of tModels that are
-    * categorized as protocol tModels. Similarly, the valid values for the
-    * Transport Categorization category system are tModelKeys of tModels that
-    * are categorized as transport tModels.</p> <p> The reason for having these
-    * two categorization schemes that take tModel keys as values is to allow
-    * other standard or proprietary protocols and transports to be defined and
-    * used in the same way as the standard SOAP and HTTP protocols and
-    * transport.</p>
-    *
-    * <h4>2.4.2.1.1 soap:binding</h4>
-    *
-    * <p>If the wsdl:binding contains a soap:binding extensibility element from
-    * the http://schemas.xmlsoap.org/wsdl/soap/ namespace then the categoryBag
-    * MUST include a keyedReference with a tModelKey of the Protocol
-    * Categorization category system and a keyValue of the tModelKey of the
-    * SOAP Protocol tModel.</p>
-    *
-    * <p>If the value of the transport attribute of the soap:binding element is
-    * http://schemas.xmlsoap.org/soap/http then the categoryBag MUST include a
-    * keyedReference with a tModelKey of the Transport Categorization category
-    * system and a keyValue of the tModelKey of the HTTP Transport tModel.</p>
-    *
-    * <p>If the value of the transport attribute is anything else, then the
-    * bindingTemplate MUST include an additional keyedReference with a
-    * tModelKey of the Transport Categorization category system and a keyValue
-    * of the tModelKey of an appropriate transport tModel.</p>
-    *
-    * <h4>2.4.2.1.2 http:binding</h4>
-    *
-    * <p>If the wsdl:binding contains an http:binding extensibility element
-    * from the http://schemas.xmlsoap.org/wsdl/http/ namespace then the
-    * categoryBag MUST include a keyedReference with a tModelKey of the
-    * Protocol Categorization category system and a keyValue of the tModelKey
-    * of the HTTP Protocol tModel.</p>
-    *
-    * <p>Note that this is a different tModel from the HTTP Transport tModel,
-    * and in this case there is no separate transport tModel, and therefore no
-    * keyedReference in the categoryBag from the Transport Categorization
-    * category system.</p>
-    *
-    * <h4>2.4.2.1.3 Other wsdl:binding Extensions</h4>
-    *
-    * <p>Other wsdl:binding extensibility elements are handled in a similar
-    * fashion. It is assumed that vendors who provide other bindings will
-    * provide the appropriate protocol and transport tModels.</p>
-    *
-    * Example Code
-    * <pre>
-    * URL url = new URL("http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl");
-    * String domain = url.getHost();
-    * ReadWSDL rw = new ReadWSDL();
-    * Definition wsdlDefinition = rw.readWSDL(url);
-    * properties.put("keyDomain", domain);
-    * properties.put("businessName", domain);
-    * properties.put("serverName", url.getHost());
-    * properties.put("serverPort", url.getPort());
-    * wsdlURL = wsdlDefinition.getDocumentBaseURI();
-    * WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties);
-    * Map allBindings = wsdlDefinition.getAllBindings();
-    * Set<TModel> createWSDLBindingTModels = wsdl2UDDI.createWSDLBindingTModels(url.toString(), allBindings);
-    * </pre>
-    * @param wsdlURL
-    * @param binding Map
-    * @return set of WSDL Binding tModels
-    * @throws WSDLException
-    */
+        /// <summary>
+        /// 
+        /// &lt;h3&gt;2.4.1 wsdl:portType -&gt; uddi:tModel&lt;/h3&gt;
+        /// 
+        /// &lt;p&gt;A wsdl:portType MUST be modeled as a uddi:tModel.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The minimum information that must be captured about a portType is its
+        /// entity type, its local name, its namespace, and the location of the WSDL
+        /// document that defines the portType. Capturing the entity type enables
+        /// users to search for tModels that represent portType artifacts. Capturing
+        /// the local name, namespace, and WSDL location enables users to locate the
+        /// definition of the specified portType artifact.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The wsdl:portType information is captured as follows:&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The uddi:name element of the tModel MUST be the value of the name
+        /// attribute of the wsdl:portType.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The tModel MUST contain a categoryBag, and the categoryBag MUST
+        /// contain a keyedReference with a tModelKey of the WSDL Entity Type
+        /// category system and a keyValue of &quot;portType&quot;.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;If the wsdl:portType has a targetNamespace then the categoryBag MUST
+        /// also contain an additional keyedReference with a tModelKey of the XML
+        /// Namespace category system and a keyValue of the target namespace of the
+        /// wsdl:definitions element that contains the wsdl:portType. If the
+        /// targetNamespace is absent from the portType, a categoryBag MUST NOT
+        /// contain a keyedReference to the XML Namespace category system.&lt;/p&gt;
+        /// 
+        /// &lt;p&gt;The tModel MUST contain an overviewDoc with an overviewURL containing
+        /// the location of the WSDL document that describes the wsdl:portType.&lt;/p&gt;
+        /// Example Code
+        /// &lt;pre&gt;
+        /// URL url = new URL(&quot;http://graphical.weather.gov/xml/SOAP_server/ndfdXMLserver.php?wsdl&quot;);
+        /// String domain = url.getHost();
+        /// ReadWSDL rw = new ReadWSDL();
+        /// Definition wsdlDefinition = rw.readWSDL(url);
+        /// properties.put(&quot;keyDomain&quot;, domain);
+        /// properties.put(&quot;businessName&quot;, domain);
+        /// properties.put(&quot;serverName&quot;, url.getHost());
+        /// properties.put(&quot;serverPort&quot;, url.getPort());
+        /// wsdlURL = wsdlDefinition.getDocumentBaseURI();
+        /// WSDL2UDDI wsdl2UDDI = new WSDL2UDDI(null, new URLLocalizerDefaultImpl(), properties);
+        /// Map&lt;QName, PortType&gt; portTypes = (Map&lt;QName, PortType&gt;) wsdlDefinition.getAllPortTypes();
+        /// Set&lt;TModel&gt; portTypeTModels = wsdl2UDDI.createWSDLPortTypeTModels(wsdlURL, portTypes);
+        /// &lt;/pre&gt;
+        /// 
+        /// </summary>
+        /// <param name="wsdlURL">This is used to set the Overview URL</param>
+        /// <param name="portType">Map</param>
+        /// @return set of WSDL PortType tModels
+        /// <exception cref="Exception"></exception>
+
         public List<tModel> createWSDLBindingTModels(string wsdlURL, Dictionary<QName, xmlsoap.schemas.easyWsdl.tBinding> bindings)
         {
             List<tModel> tModels = new List<tModel>();

Modified: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.subscription/SubscriptionCallbackListener.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.subscription/SubscriptionCallbackListener.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.subscription/SubscriptionCallbackListener.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.subscription/SubscriptionCallbackListener.cs Sun Nov 17 00:39:36 2013
@@ -15,88 +15,57 @@
  *
  */
 
+using org.apache.juddi.client.org.apache.juddi.v3.client.subscription;
+using org.apache.juddi.v3.client.config;
+using org.apache.juddi.v3.client.cryptor;
 using org.apache.juddi.v3.client.log;
 using org.apache.juddi.v3.client.subscription.wcf;
+using org.apache.juddi.v3.client.transport;
 using org.uddi.apiv3;
 using System;
 using System.Collections.Generic;
-using System.Linq;
+using System.Net;
 using System.Runtime.CompilerServices;
-using System.Text;
-using org.apache.juddi.client.org.apache.juddi.v3.client.subscription;
 using System.Security;
 using System.ServiceModel;
-using org.apache.juddi.v3.client.config;
-using org.apache.juddi.v3.client.transport;
-using org.apache.juddi.v3.client.crypto;
-using System.Net;
 
 namespace org.apache.juddi.v3.client.subscription
 {
     /// <summary>
-    /// WebService which implements the UDDI v3 SubscriptionListener API. 
-    /// This service will be called by the UDDI registry when any change to a Service or BindingTemplate call in to it.
-    /// </summary>
-    /// Usage scenario
-    /// Usethis call for when you need to be notified from a UDDI server that either a UDDI entity was created, changed, or deleted via the UDDI Subscription web service. This class will start up an embedded Jetty server (built into the JRE). You can then register your code to be notified of any inbound messages received from the UDDI server asynchronously. Here's some sample code.
-    /// <pre>
-    /// 
-    /*
     /// 
-    /// UDDIClient clerkManager = null;
-            Transport transport = null;
-            UDDIClerk clerk = null;
-            try
-            {
-                clerkManager = new UDDIClient("uddi.xml");
-                UDDIClientContainer.addClient(clerkManager);
-
-                transport = clerkManager.getTransport("default");
-
-                UDDI_Security_SoapBinding security = transport.getUDDISecurityService();
-                UDDI_Inquiry_SoapBinding inquiry = transport.getUDDIInquiryService();
-                UDDI_Publication_SoapBinding publish = transport.getUDDIPublishService();
-
-                clerk = clerkManager.getClerk("default");
-
-                tModel createKeyGenator = UDDIClerk.createKeyGenator("uddi:org.apache.juddi:test:keygenerator", "Test domain", "en");
-                clerk.register(createKeyGenator);
-                bindingTemplate start = SubscriptionCallbackListener.start(clerkManager, "default");
-                //bkeep alive
-                DateTime stop = DateTime.Now.Add(new TimeSpan(0, 1, 0));
-                while (DateTime.Now < stop)
-                {
-                    Thread.Sleep(1000);
+    /// WebService which implements the UDDI v3 SubscriptionListener API. This
+    /// service will be called by the UDDI registry when any change to a Service or
+    /// BindingTemplate call in to it.
+    /// </summary>
+    /// &lt;h1&gt;Usage scenario&lt;/h1&gt;
+    /// Use this call for when you need to be notified from a UDDI server that either
+    /// a UDDI entity was created, changed, or deleted via the UDDI Subscription web
+    /// service. This class will start up an embedded Jetty server (built into the
+    /// JRE). You can then register your code to be notified of any inbound messages
+    /// received from the UDDI server asynchronously. Here&#39;s some sample code.
+    /// <example>
+    /// <code>
+    /// &lt;pre&gt;
+    /// UDDIClient c = new UDDIClient(&quot;META-INF/uddiclient.xml&quot;);
+    /// UDDIClerk clerk = c.getClerk(&quot;default&quot;);
+    /// TModel createKeyGenator = UDDIClerk.createKeyGenator(&quot;uddi:org.apache.juddi:test:keygenerator&quot;, &quot;Test domain&quot;, &quot;en&quot;);
+    /// clerk.register(createKeyGenator);
+    /// BindingTemplate start = SubscriptionCallbackListener.start(c, &quot;default&quot;);
+    /// //keep alive
+    /// while(running)
+    /// Thread.sleep(1000);
+    /// SubscriptionCallbackListener.stop(c, &quot;default&quot;, start.getBindingKey());
+    /// &lt;/pre&gt;
+    /// </code></example>
+    /// @author &lt;a href=&quot;mailto:alexoree@apache.org&quot;&gt;Alex O&#39;Ree&lt;/a&gt;
+    /// @since 3.2
 
-                }
-                SubscriptionCallbackListener.stop(c, "default", start.bindingKey);
-            }
-            catch (Exception ex)
-            {
-                while (ex != null)
-                {
-                    System.Console.WriteLine("Error! " + ex.Message);
-                    ex = ex.InnerException;
-                }
-            }
-            finally
-            {
-                if (transport != null && transport is IDisposable)
-                {
-                    ((IDisposable)transport).Dispose();
-                }
-                if (clerk != null)
-                    clerk.Dispose();
-            }
-*/
-    /// </pre>
-    /// 
-    [ServiceBehaviorAttribute( AutomaticSessionShutdown=false, ConcurrencyMode=ConcurrencyMode.Single, 
+    [ServiceBehaviorAttribute(AutomaticSessionShutdown = false, ConcurrencyMode = ConcurrencyMode.Single,
         //DOES NOT WORK ON MONO 
-        Name="SubscriptionCallbackListener",
-        Namespace="org.apache.juddi.v3.client.subscription", 
-        IncludeExceptionDetailInFaults=false, InstanceContextMode=InstanceContextMode.Single, ValidateMustUnderstand=false,
-        AddressFilterMode=AddressFilterMode.Any)]
+        Name = "SubscriptionCallbackListener",
+        Namespace = "org.apache.juddi.v3.client.subscription",
+        IncludeExceptionDetailInFaults = false, InstanceContextMode = InstanceContextMode.Single, ValidateMustUnderstand = false,
+        AddressFilterMode = AddressFilterMode.Any)]
     public class SubscriptionCallbackListener : UDDI_SubscriptionListener_PortType
     {
         public SubscriptionCallbackListener()
@@ -334,7 +303,7 @@ namespace org.apache.juddi.v3.client.sub
                     catch (Exception ex)
                     {
                         log.error("Unable to sign", ex);
-                        throw new UnableToSignException("Unable to sign",ex);
+                        throw new UnableToSignException("Unable to sign", ex);
                     }
 
                     break;
@@ -349,7 +318,7 @@ namespace org.apache.juddi.v3.client.sub
                         catch (Exception ex)
                         {
                             log.error("Unable to sign", ex);
-                            throw new UnableToSignException("Unable to sign",ex);
+                            throw new UnableToSignException("Unable to sign", ex);
                         }
                     }
                     break;
@@ -574,7 +543,7 @@ namespace org.apache.juddi.v3.client.sub
             {
                 return Dns.GetHostName();
             }
-            catch (Exception ex)
+            catch (Exception)
             {
                 return "HOST_UNKNOWN";
             }

Modified: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client/UDDIConstants.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client/UDDIConstants.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client/UDDIConstants.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client/UDDIConstants.cs Sun Nov 17 00:39:36 2013
@@ -494,7 +494,7 @@ namespace org.apache.juddi.v3.client
         ///
         public static String WILDCARD = "%";
         ///
-        ///Presents any SINGLE character<br> Wildcards, when they are allowed, may
+        ///Presents any SINGLE character. Wildcards, when they are allowed, may
         ///occur at any position in the string of characters that constitutes the
         ///argument value and may occur more than once. Wildcards are denoted with a
         ///percent sign (%) to indicate any value for any number of characters and
@@ -503,7 +503,6 @@ namespace org.apache.juddi.v3.client
         ///sign, underscore and backslash characters. Use of the "exactMatch"
         ///findQualifier will cause wildcard characters to be interpreted literally,
         ///and as such should not also be combined with the escape character.
-        ///
         public static String WILDCARD_CHAR = "_";
         ///
         ///unchecked: Marking a tModel with this categorization asserts that it

Modified: juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/cryptor/DigSigUtil.java
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/cryptor/DigSigUtil.java?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/cryptor/DigSigUtil.java (original)
+++ juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/cryptor/DigSigUtil.java Sun Nov 17 00:39:36 2013
@@ -153,25 +153,11 @@ public class DigSigUtil {
      * (default) * Example
      * <pre>
      * Map map = new HashMap();
-     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_BASE64, true);</pre>
+     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_BASE64, "true");</pre>
      * any value can be used.
      */
     public final static String SIGNATURE_OPTION_CERT_INCLUSION_BASE64 = "BASE64";
-    /*
-     * Include the signer's thumbprint of the public key.
-     * 
-     * Clients will not be able to validate the signature unless they have a copy of the signer's public key 
-     * in a trust store or the full certificate is included
-     * out of band
-     * 
-     * Example
-     * <pre>
-     * Map map = new HashMap();
-     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_THUMBPRINT, true);</pre>
-     * any value can be used.
-     *@see SIGNATURE_OPTION_CERT_INCLUSION_BASE64
-     */
-    //public final static String SIGNATURE_OPTION_CERT_INCLUSION_THUMBPRINT = "THUMBPRINT";
+    
     /**
      * Include the signer's serial of the public key and the issuer's subject
      * name
@@ -183,7 +169,7 @@ public class DigSigUtil {
      * Example
      * <pre>
      * Map map = new HashMap();
-     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SERIAL, true);</pre>
+     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SERIAL, "true");</pre>
      * any value can be used.
      *
      * @see SIGNATURE_OPTION_CERT_INCLUSION_BASE64
@@ -199,7 +185,7 @@ public class DigSigUtil {
      * Example
      * <pre>
      * Map map = new HashMap();
-     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN, true);</pre>
+     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN, "true");</pre>
      * any value can be used.
      *
      * @see SIGNATURE_OPTION_CERT_INCLUSION_BASE64
@@ -215,7 +201,7 @@ public class DigSigUtil {
      * Example
      * <pre>
      * Map map = new HashMap();
-     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_X500_PRINICPAL, true);</pre>
+     * map.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_X500_PRINICPAL, "true");</pre>
      * any value can be used.
      *
      * @see SIGNATURE_OPTION_CERT_INCLUSION_BASE64

Modified: juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/DigSigUtilTest.java
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/DigSigUtilTest.java?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/DigSigUtilTest.java (original)
+++ juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/DigSigUtilTest.java Sun Nov 17 00:39:36 2013
@@ -59,34 +59,32 @@ public class DigSigUtilTest {
         ds.put(DigSigUtil.TRUSTSTORE_FILE, "./src/test/resources/truststore.jks");
         ds.put(DigSigUtil.TRUSTSTORE_FILETYPE, "JKS");
         ds.put(DigSigUtil.TRUSTSTORE_FILE_PASSWORD, "Test");
-
-
     }
 
     void Default() throws CertificateException {
         ds = new DigSigUtil();
         SetCertStoreSettigns();
-        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_BASE64, "t");
+        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_BASE64, "true");
     }
 
     void Everything() throws CertificateException {
         ds = new DigSigUtil();
         SetCertStoreSettigns();
-        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_BASE64, "t");
-        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN, "t");
-        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SERIAL, "t");
+        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_BASE64, "true");
+        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN, "true");
+        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SERIAL, "true");
     }
 
     void SubjectDNOnly() throws CertificateException {
         ds = new DigSigUtil();
         SetCertStoreSettigns();
-        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN, "t");
+        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SUBJECTDN, "true");
     }
 
     void SerialAndIssuerOnly() throws CertificateException {
         ds = new DigSigUtil();
         SetCertStoreSettigns();
-        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SERIAL, "t");
+        ds.put(DigSigUtil.SIGNATURE_OPTION_CERT_INCLUSION_SERIAL, "true");
     }
 
     @Test



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org