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 [1/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...
Author: alexoree
Date: Sun Nov 17 00:39:36 2013
New Revision: 1542621
URL: http://svn.apache.org/r1542621
Log:
JUDDI-567 adding feature to sign from a pfx file, digital signature tests. updated namespace to match the java cryptor. converted javadoc to .net xml comments
Added:
juddi/trunk/juddi-client.net/juddi-client.net.test/DigitalSignatureTests.cs
juddi/trunk/juddi-client.net/juddi-client.net.test/resources/cert.pfx (with props)
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES128Cryptor.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES256Cryptor.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AESCryptor.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/Cryptor.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/CryptorFactory.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/DigSigUtil.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/TripleDESCryptor.cs
Removed:
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.crypto/
Modified:
juddi/trunk/juddi-client.net/juddi-client.net-integration.test/juddi-client.net-integration.test.csproj
juddi/trunk/juddi-client.net/juddi-client.net-sample/DigitalSignaturesExample.cs
juddi/trunk/juddi-client.net/juddi-client.net-sample/Encryption.cs
juddi/trunk/juddi-client.net/juddi-client.net-sample/SubscriptionCallbackExample.cs
juddi/trunk/juddi-client.net/juddi-client.net-sample/WadlImport.cs
juddi/trunk/juddi-client.net/juddi-client.net-sample/WsdlImport.cs
juddi/trunk/juddi-client.net/juddi-client.net.test/CryptoTests.cs
juddi/trunk/juddi-client.net/juddi-client.net.test/WADL2UDDITests.cs
juddi/trunk/juddi-client.net/juddi-client.net.test/WSDL2UDDITest.cs
juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test-mono.csproj
juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test.csproj
juddi/trunk/juddi-client.net/juddi-client.net/bindings/JUDDIApiService.cs
juddi/trunk/juddi-client.net/juddi-client.net/bindings/ext.cs
juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net-mono.csproj
juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net.csproj
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.annotations/UDDIServiceBinding.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/ClientConfig.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/UDDIClerk.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WADL2UDDI.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.mapping/WSDL2UDDI.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.subscription/SubscriptionCallbackListener.cs
juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client/UDDIConstants.cs
juddi/trunk/juddi-client/src/main/java/org/apache/juddi/v3/client/cryptor/DigSigUtil.java
juddi/trunk/juddi-client/src/test/java/org/apache/juddi/v3/client/DigSigUtilTest.java
Modified: juddi/trunk/juddi-client.net/juddi-client.net-integration.test/juddi-client.net-integration.test.csproj
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net-integration.test/juddi-client.net-integration.test.csproj?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net-integration.test/juddi-client.net-integration.test.csproj (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net-integration.test/juddi-client.net-integration.test.csproj Sun Nov 17 00:39:36 2013
@@ -43,6 +43,7 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
+ <Compile Include="DigitalSignatureIntegrationTests.cs" />
<Compile Include="InquiryTests.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
Modified: juddi/trunk/juddi-client.net/juddi-client.net-sample/DigitalSignaturesExample.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net-sample/DigitalSignaturesExample.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net-sample/DigitalSignaturesExample.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net-sample/DigitalSignaturesExample.cs Sun Nov 17 00:39:36 2013
@@ -17,7 +17,7 @@
*/
using org.apache.juddi.v3.client;
using org.apache.juddi.v3.client.config;
-using org.apache.juddi.v3.client.crypto;
+using org.apache.juddi.v3.client.cryptor;
using org.apache.juddi.v3.client.transport;
using org.uddi.apiv3;
using System;
Modified: juddi/trunk/juddi-client.net/juddi-client.net-sample/Encryption.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net-sample/Encryption.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net-sample/Encryption.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net-sample/Encryption.cs Sun Nov 17 00:39:36 2013
@@ -15,19 +15,8 @@
*
*/
-using net.java.dev.wadl;
-using org.apache.juddi.jaxb;
-using org.apache.juddi.v3.client;
-using org.apache.juddi.v3.client.config;
-using org.apache.juddi.v3.client.crypto;
-using org.apache.juddi.v3.client.mapping;
-using org.apache.juddi.v3.client.transport;
-using org.uddi.apiv3;
-using org.xmlsoap.schemas.easyWsdl;
using System;
-using System.Collections.Generic;
using System.Security.Cryptography;
-using System.Text;
namespace org.apache.juddi.client.sample
{
Modified: juddi/trunk/juddi-client.net/juddi-client.net-sample/SubscriptionCallbackExample.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net-sample/SubscriptionCallbackExample.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net-sample/SubscriptionCallbackExample.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net-sample/SubscriptionCallbackExample.cs Sun Nov 17 00:39:36 2013
@@ -116,12 +116,6 @@ namespace org.apache.juddi.client.sample
if (clerk != null)
clerk.Dispose();
}
-
-
-
-
}
-
-
}
}
Modified: juddi/trunk/juddi-client.net/juddi-client.net-sample/WadlImport.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net-sample/WadlImport.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net-sample/WadlImport.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net-sample/WadlImport.cs Sun Nov 17 00:39:36 2013
@@ -16,18 +16,13 @@
*/
using net.java.dev.wadl;
-using org.apache.juddi.jaxb;
using org.apache.juddi.v3.client;
using org.apache.juddi.v3.client.config;
-using org.apache.juddi.v3.client.crypto;
using org.apache.juddi.v3.client.mapping;
using org.apache.juddi.v3.client.transport;
using org.uddi.apiv3;
-using org.xmlsoap.schemas.easyWsdl;
using System;
using System.Collections.Generic;
-using System.Security.Cryptography;
-using System.Text;
namespace org.apache.juddi.client.sample
{
Modified: juddi/trunk/juddi-client.net/juddi-client.net-sample/WsdlImport.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net-sample/WsdlImport.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net-sample/WsdlImport.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net-sample/WsdlImport.cs Sun Nov 17 00:39:36 2013
@@ -14,19 +14,13 @@
* limitations under the License.
*
*/
-using net.java.dev.wadl;
using org.apache.juddi.jaxb;
-using org.apache.juddi.v3.client;
using org.apache.juddi.v3.client.config;
-using org.apache.juddi.v3.client.crypto;
using org.apache.juddi.v3.client.mapping;
-using org.apache.juddi.v3.client.transport;
using org.uddi.apiv3;
using org.xmlsoap.schemas.easyWsdl;
using System;
using System.Collections.Generic;
-using System.Security.Cryptography;
-using System.Text;
namespace org.apache.juddi.client.sample
{
Modified: juddi/trunk/juddi-client.net/juddi-client.net.test/CryptoTests.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net.test/CryptoTests.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net.test/CryptoTests.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net.test/CryptoTests.cs Sun Nov 17 00:39:36 2013
@@ -1,5 +1,5 @@
using NUnit.Framework;
-using org.apache.juddi.v3.client.crypto;
+using org.apache.juddi.v3.client.cryptor;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -13,7 +13,7 @@ namespace juddi_client.net.test
[Test]
public void AES128()
{
- Cryptor c = org.apache.juddi.v3.client.crypto.CryptorFactory.getCryptor(CryptorFactory.AES128);
+ Cryptor c = org.apache.juddi.v3.client.cryptor.CryptorFactory.getCryptor(CryptorFactory.AES128);
TestCryptor(c);
}
@@ -31,14 +31,14 @@ namespace juddi_client.net.test
[Test]
public void AES256()
{
- Cryptor c = org.apache.juddi.v3.client.crypto.CryptorFactory.getCryptor(CryptorFactory.AES256);
+ Cryptor c = org.apache.juddi.v3.client.cryptor.CryptorFactory.getCryptor(CryptorFactory.AES256);
TestCryptor(c);
}
[Test]
public void TripleDES()
{
- Cryptor c = org.apache.juddi.v3.client.crypto.CryptorFactory.getCryptor(CryptorFactory.TripleDES);
+ Cryptor c = org.apache.juddi.v3.client.cryptor.CryptorFactory.getCryptor(CryptorFactory.TripleDES);
TestCryptor(c);
}
}
Added: juddi/trunk/juddi-client.net/juddi-client.net.test/DigitalSignatureTests.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net.test/DigitalSignatureTests.cs?rev=1542621&view=auto
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net.test/DigitalSignatureTests.cs (added)
+++ juddi/trunk/juddi-client.net/juddi-client.net.test/DigitalSignatureTests.cs Sun Nov 17 00:39:36 2013
@@ -0,0 +1,215 @@
+using NUnit.Framework;
+using org.apache.juddi.jaxb;
+using org.apache.juddi.v3.client;
+using org.apache.juddi.v3.client.config;
+using org.apache.juddi.v3.client.cryptor;
+using org.apache.juddi.v3.client.transport;
+using org.uddi.apiv3;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+
+namespace juddi_client.net.test
+{
+ [TestFixture]
+ public class DigitalSignatureTests
+ {
+ org.apache.juddi.v3.client.cryptor.DigSigUtil ds = null;
+ string path = "";
+ bool serialize = false;
+ public DigitalSignatureTests()
+ {
+ if (Environment.GetEnvironmentVariable("debug") != null
+ && Environment.GetEnvironmentVariable("debug").Equals("true", StringComparison.CurrentCultureIgnoreCase))
+ {
+ serialize = true;
+ }
+ Console.Out.WriteLine(Directory.GetCurrentDirectory());
+ path = Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + "resources";
+ if (!Directory.Exists(path))
+ {
+ path = Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + ".." + Path.DirectorySeparatorChar + ".." + Path.DirectorySeparatorChar + "resources";
+ Console.Out.WriteLine(path);
+ }
+ if (!Directory.Exists(path))
+ {
+ path = Environment.GetEnvironmentVariable("JUDDI_TEST_RES");
+ Console.Out.WriteLine(path);
+ }
+ if (path == null || !Directory.Exists(path))
+ {
+ path = null;
+ Console.Out.WriteLine("uh oh, I can't find the resources directory, override with the environment variable JUDDI_TEST_RES=<path>");
+ }
+ ds = new DigSigUtil();
+ ds.put(DigSigUtil.SIGNATURE_KEYSTORE_FILE, path + Path.DirectorySeparatorChar+"cert.pfx");
+ ds.put(DigSigUtil.SIGNATURE_KEYSTORE_FILETYPE, "PFX");
+ ds.put(DigSigUtil.SIGNATURE_KEYSTORE_FILE_PASSWORD, "password");
+ ds.put(DigSigUtil.SIGNATURE_KEYSTORE_KEY_ALIAS, "selfsigned"); //the friendly name = alias
+ //ds.put(DigSigUtil.TRUSTSTORE_FILE, "./src/test/resources/truststore.jks");
+ //ds.put(DigSigUtil.TRUSTSTORE_FILETYPE, "JKS");
+ //ds.put(DigSigUtil.TRUSTSTORE_FILE_PASSWORD, "Test");
+ 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");
+ ds.put(DigSigUtil.CHECK_TIMESTAMPS, "true");
+
+ }
+
+ void resetDS()
+ {
+ ds = new DigSigUtil();
+ ds.put(DigSigUtil.SIGNATURE_KEYSTORE_FILE, path + Path.DirectorySeparatorChar + "cert.pfx");
+ ds.put(DigSigUtil.SIGNATURE_KEYSTORE_FILETYPE, "PFX");
+ ds.put(DigSigUtil.SIGNATURE_KEYSTORE_FILE_PASSWORD, "password");
+ ds.put(DigSigUtil.SIGNATURE_KEYSTORE_KEY_ALIAS, "selfsigned"); //the friendly name = alias
+ //ds.put(DigSigUtil.TRUSTSTORE_FILE, "./src/test/resources/truststore.jks");
+ //ds.put(DigSigUtil.TRUSTSTORE_FILETYPE, "JKS");
+ //ds.put(DigSigUtil.TRUSTSTORE_FILE_PASSWORD, "Test");
+ 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");
+ }
+
+ [Test]
+ public void Business()
+ {
+
+ businessEntity be = new businessEntity();
+ be.businessKey = "uddi:business";
+ be.businessServices = new businessService[] { NewBusinessService() };
+ be.name = new name[] { new name("stuff", null) };
+ be.identifierBag = new keyedReference[] { new keyedReference("key", "name", "val") };
+ be.categoryBag = new categoryBag();
+ be.categoryBag.Items = new object[] { new keyedReference("key", "name", "val") };
+ be.contacts = new contact[] { new contact() };
+
+ be.contacts[0].useType = "admin";
+ be.contacts[0].personName = new personName[] { new personName("bob", "en") };
+ be.businessServices = new businessService[] { getService() };
+
+ SigningAndVerify(be);
+ }
+
+ private businessService NewBusinessService()
+ {
+ businessService bs = new businessService();
+ bs.bindingTemplates = new bindingTemplate[] { NewBindingTempalte() };
+ bs.businessKey = "asd";
+ bs.categoryBag = new categoryBag();
+ bs.categoryBag.Items = new object[] { new keyedReference("key", "name", "val") };
+ bs.name = new name[] { new name("stuff", null) };
+ bs.serviceKey = "asd";
+ return bs;
+ }
+
+ private bindingTemplate NewBindingTempalte()
+ {
+ bindingTemplate bt = new bindingTemplate();
+ bt.bindingKey = "asd";
+ bt.categoryBag = new categoryBag();
+ bt.categoryBag.Items = new object[] { new keyedReference("key", "name", "val") };
+ bt.description = new description[] { new description("hi", "en") };
+ bt.Item = new accessPoint("http://localhost", "wsdl");
+ bt.serviceKey = "svc";
+ bt.tModelInstanceDetails = new tModelInstanceInfo[] { new tModelInstanceInfo() };
+ return bt;
+ }
+ [Test]
+ public void Service()
+ {
+ businessService bs = NewBusinessService();
+ SigningAndVerify(bs);
+ }
+
+ [Test]
+ public void Tmodel()
+ {
+ tModel bs = UDDIClerk.createKeyGenator("part", "desc", "en");
+
+ SigningAndVerify(bs);
+ }
+
+ private businessService getService()
+ {
+ businessService bs = new businessService();
+ bs.serviceKey = "hello";
+ bs.name = new name[] { new name("hi", "en") };
+ bs.businessKey = "asd";
+ return bs;
+
+ }
+
+ void SigningAndVerify(object uddielement)
+ {
+
+ uddielement = ds.signUddiEntity(uddielement);
+ Assert.NotNull(uddielement);
+ if (serialize)
+ {
+ if (uddielement.GetType().Equals(typeof(bindingTemplate)))
+ {
+ PrintUDDI<bindingTemplate> p = new PrintUDDI<bindingTemplate>();
+ Console.Out.WriteLine(p.print(uddielement));
+
+ }
+ if (uddielement.GetType().Equals(typeof(businessService)))
+ {
+ PrintUDDI<businessService> p = new PrintUDDI<businessService>();
+ Console.Out.WriteLine(p.print(uddielement));
+ }
+ if (uddielement.GetType().Equals(typeof(businessEntity)))
+ {
+ PrintUDDI<businessEntity> p = new PrintUDDI<businessEntity>();
+ Console.Out.WriteLine(p.print(uddielement));
+ }
+ if (uddielement.GetType().Equals(typeof(tModel)))
+ {
+ PrintUDDI<tModel> p = new PrintUDDI<tModel>();
+ Console.Out.WriteLine(p.print(uddielement));
+ }
+ }
+ String err="";
+ bool check=ds.verifySignedUddiEntity(uddielement, out err);
+ Console.Out.WriteLine("Signature status is " + check + ": " + err);
+ Assert.True(check);
+ Assert.True(String.IsNullOrEmpty(err));
+ validAllSignatureElementsArePresent(uddielement);
+ }
+
+ private void validAllSignatureElementsArePresent(object uddielement)
+ {
+ if (uddielement.GetType().Equals(typeof(bindingTemplate)))
+ {
+ validAllSignatureElementsArePresent(((bindingTemplate)uddielement).Signature);
+ }
+ if (uddielement.GetType().Equals(typeof(businessService)))
+ {
+ validAllSignatureElementsArePresent(((businessService)uddielement).Signature);
+ }
+ if (uddielement.GetType().Equals(typeof(businessEntity)))
+ {
+ validAllSignatureElementsArePresent(((businessEntity)uddielement).Signature);
+ }
+ if (uddielement.GetType().Equals(typeof(tModel)))
+ {
+ validAllSignatureElementsArePresent(((tModel)uddielement).Signature);
+ }
+ }
+
+ private void validAllSignatureElementsArePresent(SignatureType[] signatureType)
+ {
+ if (signatureType == null || signatureType.Length == 0)
+ Assert.Fail("no signed");
+ for (int i = 0; i < signatureType.Length; i++)
+ {
+ Assert.NotNull(signatureType[i].KeyInfo);
+ Assert.NotNull(signatureType[i].KeyInfo.Items);
+
+ }
+ }
+
+ }
+}
Modified: juddi/trunk/juddi-client.net/juddi-client.net.test/WADL2UDDITests.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net.test/WADL2UDDITests.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net.test/WADL2UDDITests.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net.test/WADL2UDDITests.cs Sun Nov 17 00:39:36 2013
@@ -1,5 +1,6 @@
using net.java.dev.wadl;
using NUnit.Framework;
+using org.apache.juddi.jaxb;
using org.apache.juddi.v3.client;
using org.apache.juddi.v3.client.config;
using org.apache.juddi.v3.client.mapping;
@@ -15,9 +16,15 @@ namespace juddi_client.net.test
[TestFixture]
public class WADL2UDDITests
{
+ bool serialize = false;
string path = "";
public WADL2UDDITests()
{
+ if (Environment.GetEnvironmentVariable("debug") != null
+ && Environment.GetEnvironmentVariable("debug").Equals("true", StringComparison.CurrentCultureIgnoreCase))
+ {
+ serialize = true;
+ }
Console.Out.WriteLine(Directory.GetCurrentDirectory());
path = Directory.GetCurrentDirectory() + Path.DirectorySeparatorChar + "resources";
if (!Directory.Exists(path))
@@ -101,8 +108,10 @@ namespace juddi_client.net.test
properties.put("businessName", domain);
properties.put("serverName", url.Host);
properties.put("serverPort", url.Port.ToString());
- WADL2UDDI wadl2UDDI = new WADL2UDDI(clerk, properties);
+ WADL2UDDI wadl2UDDI = new WADL2UDDI(clerk, properties);
businessService businessServices = wadl2UDDI.createBusinessService(new QName("MyWasdl.namespace", "Servicename"), app);
+ if (serialize)
+ Console.Out.WriteLine(new PrintUDDI<businessService>().print(businessServices));
Assert.NotNull(businessServices);
Assert.NotNull(businessServices.bindingTemplates);
foreach (bindingTemplate bt in businessServices.bindingTemplates)
Modified: juddi/trunk/juddi-client.net/juddi-client.net.test/WSDL2UDDITest.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net.test/WSDL2UDDITest.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net.test/WSDL2UDDITest.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net.test/WSDL2UDDITest.cs Sun Nov 17 00:39:36 2013
@@ -78,7 +78,7 @@ namespace juddi_client.net.test
{
Assume.That(File.Exists(pathAndFile));
- String wsdlURL = "http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL";
+
ReadWSDL wsi = new ReadWSDL();
org.xmlsoap.schemas.easyWsdl.tDefinitions wsdlDefinition = wsi.readWSDL(
pathAndFile
@@ -91,7 +91,7 @@ namespace juddi_client.net.test
Dictionary<QName, tPortType> portTypes1 = (Dictionary<QName, tPortType>)wsdlDefinition.getAllPortTypes();
Assert.NotNull(portTypes1);
Assert.True(portTypes1.Count > 0);
- List<tModel> portTypeTModels1 = wsdl2UDDI.createWSDLPortTypeTModels(wsdlURL, portTypes1);
+ List<tModel> portTypeTModels1 = wsdl2UDDI.createWSDLPortTypeTModels(pathAndFile, portTypes1);
Assert.NotNull(portTypeTModels1);
Assert.True(portTypeTModels1.Count > 0);
@@ -100,7 +100,7 @@ namespace juddi_client.net.test
Dictionary<QName, tBinding> allBindings1 = wsdlDefinition.getAllBindings();
Assert.NotNull(allBindings1);
Assert.True(allBindings1.Count > 0);
- List<tModel> createWSDLBindingTModels1 = wsdl2UDDI.createWSDLBindingTModels(wsdlURL, allBindings1);
+ List<tModel> createWSDLBindingTModels1 = wsdl2UDDI.createWSDLBindingTModels(pathAndFile, allBindings1);
Assert.NotNull(createWSDLBindingTModels1);
Assert.True(createWSDLBindingTModels1.Count > 0);
Modified: juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test-mono.csproj
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test-mono.csproj?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test-mono.csproj (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test-mono.csproj Sun Nov 17 00:39:36 2013
@@ -42,9 +42,11 @@
</ItemGroup>
<ItemGroup>
<Compile Include="CryptoTests.cs" />
+ <Compile Include="DigitalSignatureTests.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="SerializationTests.cs" />
<Compile Include="WADL2UDDITests.cs" />
+ <Compile Include="WSDL2UDDITest.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config">
Modified: juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test.csproj
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test.csproj?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test.csproj (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net.test/juddi-client.net.test.csproj Sun Nov 17 00:39:36 2013
@@ -42,6 +42,7 @@
</ItemGroup>
<ItemGroup>
<Compile Include="CryptoTests.cs" />
+ <Compile Include="DigitalSignatureTests.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="SerializationTests.cs" />
<Compile Include="WADL2UDDITests.cs" />
Added: juddi/trunk/juddi-client.net/juddi-client.net.test/resources/cert.pfx
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net.test/resources/cert.pfx?rev=1542621&view=auto
==============================================================================
Binary file - no diff available.
Propchange: juddi/trunk/juddi-client.net/juddi-client.net.test/resources/cert.pfx
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: juddi/trunk/juddi-client.net/juddi-client.net/bindings/JUDDIApiService.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/bindings/JUDDIApiService.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/bindings/JUDDIApiService.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/bindings/JUDDIApiService.cs Sun Nov 17 00:39:36 2013
@@ -645,7 +645,7 @@ namespace org.apache.juddi.apiv3
private get_subscriptionResults[] listField;
[System.Xml.Serialization.XmlElement(Namespace = "urn:uddi-org:api_v3")]
- /// <remarks/>
+
public string authInfo
{
get
Modified: juddi/trunk/juddi-client.net/juddi-client.net/bindings/ext.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/bindings/ext.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/bindings/ext.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/bindings/ext.cs Sun Nov 17 00:39:36 2013
@@ -21,7 +21,15 @@ using System;
namespace org.uddi.apiv3
{
-
+ public partial class personName
+ {
+ public personName() { }
+ public personName(String value, String lang)
+ {
+ this.Value = value;
+ this.lang = lang;
+ }
+ }
public partial class accessPoint
{
@@ -52,6 +60,12 @@ namespace org.uddi.apiv3
}
public partial class keyedReference
{
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="key"></param>
+ /// <param name="name"></param>
+ /// <param name="value"></param>
public keyedReference(String key, String name, String value)
{
this.tModelKey = key;
@@ -61,8 +75,16 @@ namespace org.uddi.apiv3
}
public partial class name
{
+ /// <summary>
+ ///
+ /// </summary>
public name()
{ }
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="Value"></param>
+ /// <param name="lang"></param>
public name(String Value, String lang)
{
this.valueField = Value;
Modified: juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net-mono.csproj
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net-mono.csproj?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net-mono.csproj (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net-mono.csproj Sun Nov 17 00:39:36 2013
@@ -20,7 +20,7 @@
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
- <WarningLevel>3</WarningLevel>
+ <WarningLevel>1</WarningLevel>
<RunCodeAnalysis>true</RunCodeAnalysis>
<DocumentationFile>bin\Debug\juddi-dotnet-client.XML</DocumentationFile>
</PropertyGroup>
@@ -34,11 +34,11 @@
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
- <Reference Include="System.Core" />
+ <Reference Include="System.Core" />
<Reference Include="System.configuration" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Security" />
- <Reference Include="System.ServiceModel" />
+ <Reference Include="System.ServiceModel" />
<Reference Include="System.Web.Services" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
@@ -65,13 +65,13 @@
<Compile Include="org.apache.juddi.v3.client.config\UDDINode.cs" />
<Compile Include="org.apache.juddi.v3.client.config\XmlConfiguration.cs" />
<Compile Include="org.apache.juddi.v3.client.config\XRegistration.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\AES128Cryptor.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\AES256Cryptor.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\AESCryptor.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\Cryptor.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\CryptorFactory.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\DigSigUtil.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\TripleDESCryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\AES128Cryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\AES256Cryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\AESCryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\Cryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\CryptorFactory.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\DigSigUtil.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\TripleDESCryptor.cs" />
<Compile Include="org.apache.juddi.v3.client.mapping\easyWsdl.cs" />
<Compile Include="org.apache.juddi.v3.client.mapping\ServiceRegistrationResponse.cs" />
<Compile Include="org.apache.juddi.v3.client.mapping\URLLocalizer.cs" />
Modified: juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net.csproj
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net.csproj?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net.csproj (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/juddi-client.net.csproj Sun Nov 17 00:39:36 2013
@@ -20,7 +20,7 @@
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
- <WarningLevel>3</WarningLevel>
+ <WarningLevel>4</WarningLevel>
<RunCodeAnalysis>true</RunCodeAnalysis>
<DocumentationFile>bin\Debug\juddi-dotnet-client.XML</DocumentationFile>
</PropertyGroup>
@@ -65,13 +65,13 @@
<Compile Include="org.apache.juddi.v3.client.config\UDDINode.cs" />
<Compile Include="org.apache.juddi.v3.client.config\XmlConfiguration.cs" />
<Compile Include="org.apache.juddi.v3.client.config\XRegistration.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\AES128Cryptor.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\AES256Cryptor.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\AESCryptor.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\Cryptor.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\CryptorFactory.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\DigSigUtil.cs" />
- <Compile Include="org.apache.juddi.v3.client.crypto\TripleDESCryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\AES128Cryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\AES256Cryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\AESCryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\Cryptor.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\CryptorFactory.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\DigSigUtil.cs" />
+ <Compile Include="org.apache.juddi.v3.client.cryptor\TripleDESCryptor.cs" />
<Compile Include="org.apache.juddi.v3.client.mapping\easyWsdl.cs" />
<Compile Include="org.apache.juddi.v3.client.mapping\ServiceRegistrationResponse.cs" />
<Compile Include="org.apache.juddi.v3.client.mapping\URLLocalizer.cs" />
Modified: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.annotations/UDDIServiceBinding.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.annotations/UDDIServiceBinding.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.annotations/UDDIServiceBinding.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.annotations/UDDIServiceBinding.cs Sun Nov 17 00:39:36 2013
@@ -5,33 +5,41 @@ using System.Text;
namespace org.apache.juddi.v3.client.annotations
{
+ /// <summary>
+ /// Use this class to annotate your services programmatically. When your server start up, you can then automatically register endpoints using
+ /// this mechanism.
+ /// </summary>
+ /// <see>UDDIClient.registerAnnotatedServices</see>
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple = false)]
public class UDDIServiceBinding : System.Attribute
{
+ /// <summary>
+ /// defaults to "en" lang
+ /// </summary>
public UDDIServiceBinding()
{
- lang="en";
- bindingKey ="";
- description="";
- accessPoint="";
- tModelKeys="";
- categoryBag="";
- accessPointType="wsdlDeployment";
+ lang = "en";
+ bindingKey = "";
+ description = "";
+ accessPoint = "";
+ tModelKeys = "";
+ categoryBag = "";
+ accessPointType = "wsdlDeployment";
}
- /** name which can be referenced by TModelInstanceRegistration, this key is not send
- * down to the UDDI Registry. */
- public String bindingKey{ get; set;}
- /** Description of the ServiceBinding. */
- public String description{ get; set;}
- /** AccessPoint Type, which could be one of endPoint, wsdlDeployment, bindingTemplate, hostingDirector */
- public String accessPointType { get; set; }
- /** The URL of the accessPoint. */
- public String accessPoint{ get; set;}
- /** Language code i.e.: en, fr, nl. */
- public String lang{ get; set;}
- /** Comma separated list of tModel Keys */
- public String tModelKeys{ get; set;}
- /** List of KeyedReferences */
- public String categoryBag{ get; set;}
+ /** name which can be referenced by TModelInstanceRegistration, this key is not send
+ * down to the UDDI Registry. */
+ public String bindingKey { get; set; }
+ /** Description of the ServiceBinding. */
+ public String description { get; set; }
+ /** AccessPoint Type, which could be one of endPoint, wsdlDeployment, bindingTemplate, hostingDirector */
+ public String accessPointType { get; set; }
+ /** The URL of the accessPoint. */
+ public String accessPoint { get; set; }
+ /** Language code i.e.: en, fr, nl. */
+ public String lang { get; set; }
+ /** Comma separated list of tModel Keys */
+ public String tModelKeys { get; set; }
+ /** List of KeyedReferences */
+ public String categoryBag { get; set; }
}
}
Modified: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/ClientConfig.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/ClientConfig.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/ClientConfig.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/ClientConfig.cs Sun Nov 17 00:39:36 2013
@@ -1,5 +1,4 @@
-using org.apache.juddi.v3.client.crypto;
-/*
+/*
* Copyright 2001-2008 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,6 +14,7 @@
* limitations under the License.
*
*/
+using org.apache.juddi.v3.client.cryptor;
using org.apache.juddi.v3.client.log;
using System;
using System.Collections;
@@ -410,8 +410,6 @@ namespace org.apache.juddi.v3.client.con
/// <summary>
/// Fetches all digital signature related properties for the digital signature utility.
/// warning, this will decrypt all passwords
- ///
-
/// </summary>
/// <returns></returns>
public Properties getDigitalSignatureConfiguration()
Modified: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/UDDIClerk.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/UDDIClerk.cs?rev=1542621&r1=1542620&r2=1542621&view=diff
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/UDDIClerk.cs (original)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.config/UDDIClerk.cs Sun Nov 17 00:39:36 2013
@@ -16,7 +16,7 @@
*/
using org.apache.juddi.apiv3;
-using org.apache.juddi.v3.client.crypto;
+using org.apache.juddi.v3.client.cryptor;
using org.apache.juddi.v3.client.log;
using org.apache.juddi.v3.client.mapping;
using org.uddi.apiv3;
@@ -795,7 +795,7 @@ namespace org.apache.juddi.v3.client.con
/// <summary>
/// This calls a jUDDI implementation specific API call and is used to help
/// configure internode communication between jUDDI servers. This is NOT
- /// part of the UDDI specification.<br> Note: this API call should only
+ /// part of the UDDI specification. Note: this API call should only
/// be used with secure ports (SSL/TLS)
/// </summary>
/// <param name="senderClerk"></param>
@@ -911,26 +911,25 @@ namespace org.apache.juddi.v3.client.con
}
/// <summary>
- /// A helper class to create a tModel key generator.
///
- /// Why would I want a key generator? In UDDIv3, you're support to specify what you want the keys (unique identifiers) to be, however there's
+ /// A helper class to create a tModel key generator.<br>
+ /// Why would I want a key generator? In UDDIv3, you're suppose to specify what you want the keys (unique identifiers) to be, however there's
/// a number of naming rules associated with the keys. Generally, use the FQDN of your business or organization.
/// Optionally, when saving an UDDI entity, you can just leave the key name blank and the server
- /// should generate one for you. It's normally a UUID that's not easy to remember. In this case, there's no need to call this method.
- /// In addition, no changes are made to the UDDI server. You'll have to do that one using code similar to this:
- ///
+ /// should generate one for you. It's normally a UUID that's not easy to remember. In this case, there's no need to call this method. <br><br>
+ /// In addition, no changes are made to the UDDI server. You'll have to do that one using code similar to this:
+ /// <pre>
/// UDDIClerk clerk = ...
- /// tModel keygen = UDDIClerk.createKeyGenator("mydomain.com", "my domain", "en");
+ /// TModel keygen = UDDIClerk.createKeyGenator("uddi:mydomain.com:keygenerator", "my domain", "en");
/// clerk.register(keygen);
///
-
- /// @since 3.2
/// </summary>
- /// <param name="partitionName">think of this as the domain, i.e. juddi.apache.org, but it can really be anything you want. This will become part of the
- /// key associated with the tModel generator (uddi:juddi.apache.org:keygenerator)</param>
+ /// <param name="partitionName">think of this as the domain, i.e. juddi.apache.org, but it can really be anything you want. This will become part of the</param>
+ /// key associated with the tModel generator (uddi:juddi.apache.org:keygenerator)
/// <param name="DescriptiveName">required. max length is 255 char</param>
/// <param name="DescriptiveNameLanguage">optional, max length is 26 char</param>
/// <returns>a populated tModel entity representing a tModel key generator. No changes are made to any connect UDDI service</returns>
+ /// @since 3.2
public static tModel createKeyGenator(String partitionName, String DescriptiveName, String DescriptiveNameLanguage)
{
if (partitionName == null || partitionName.Length == 0)
@@ -975,10 +974,11 @@ namespace org.apache.juddi.v3.client.con
}
/// <summary>
- /// This calls a jUDDI implementation specific API call and is used to help
- /// configure internode communication between jUDDI servers. This is NOT
- /// part of the UDDI specification.<br> Note: this API call should only
- /// be used with secure ports (SSL/TLS)
+ ///
+ /// This calls a jUDDI implementation specific API call and is used to help
+ /// configure internode communication between jUDDI servers. This is NOT
+ /// part of the UDDI specification.<br>
+ /// Note: this API call should only be used with secure ports (SSL/TLS)
/// </summary>
/// <param name="node"></param>
/// <returns></returns>
@@ -1030,28 +1030,29 @@ namespace org.apache.juddi.v3.client.con
}
- /**
- * This is a convenience function that will build and return a TModelInstanceInfo
- * as described in the following link that will enable you to tag web services
- * registered in UDDI with some kind of version information.<Br><Br>
- * Article source: <a href="http://www.ibm.com/developerworks/webservices/library/ws-version/">http://www.ibm.com/developerworks/webservices/library/ws-version/</a>
- * <Br><Br>
- *
- * When using this tModel as a tModelInstance, it can be used to describe a
- * version associated with either a service interface, a bindingTemplate
- * service instance. Note: This is a jUDDI specific addon and may not be
- * present in other registries
- *
- * @param version From the article, no specificity is provided on what to use as a value, but
- * we recommend that you use the string representation of major.minor[.build[.revision]].<br>
- * Example
- * <ul>
- * <li>6.1.2.3</li>
- * <li>1.0</li>
- * <li>0.1</li>
- * </ul>
- * @return TModelInstanceInfo populated as described in the article, plus some descriptive information
- */
+ /// <summary>
+ ///
+ /// This is a convenience function that will build and return a TModelInstanceInfo
+ /// as described in the following link that will enable you to tag web services
+ /// registered in UDDI with some kind of version information.<Br><Br>
+ /// Article source: <a href="http://www.ibm.com/developerworks/webservices/library/ws-version/">http://www.ibm.com/developerworks/webservices/library/ws-version/</a>
+ /// <Br><Br>
+ ///
+ /// When using this tModel as a tModelInstance, it can be used to describe a
+ /// version associated with either a service interface, a bindingTemplate
+ /// service instance. Note: This is a jUDDI specific addon and may not be
+ /// present in other registries
+ ///
+ /// </summary>
+ /// <param name="version">From the article, no specificity is provided on what to use as a value, but</param>
+ /// we recommend that you use the string representation of major.minor[.build[.revision]].<br>
+ /// Example
+ /// <ul>
+ /// <li>6.1.2.3</li>
+ /// <li>1.0</li>
+ /// <li>0.1</li>
+ /// </ul>
+ /// <returns>TModelInstanceInfo populated as described in the article, plus some descriptive information</returns>
public static tModelInstanceInfo createServiceInterfaceVersion(String version, String lang)
{
if (version == null)
@@ -1074,34 +1075,40 @@ namespace org.apache.juddi.v3.client.con
return tt;
}
- /**
- * This is a convenience function that will filter a list of binding templates
- * and return a list of bindings matching the specified version number.
- *
- * This implements and expands upon service versioning described in the
- * following link and will enable you to tag web services
- * registered in UDDI with some kind of version information.<Br><Br>
- * Article source: <a href="http://www.ibm.com/developerworks/webservices/library/ws-version/">http://www.ibm.com/developerworks/webservices/library/ws-version/</a>
- * <Br><Br>
- * @see createServiceInterfaceVersion for more information<Br><br>
- *
- * This function operates using tModelInstances that are used to describe a
- * version associated with either a service interface, a bindingTemplate
- * service instance. Note: This is a jUDDI specific addon and may not be
- * present in other registries
- *
- * @param version From the article, no specificity is provided on what to use as a value, but
- * we recommend that you use the string representation of major.minor[.build[.revision]].<br>
- * Example
- * <ul>
- * <li>6.1.2.3</li>
- * <li>1.0</li>
- * <li>0.1</li>
- * </ul>
- * @param version
- * @param bindingTemplate
- * @return a list if binding templates where the version equals ignoring case trimmed equals the version value
- */
+ /// <summary>
+ ///
+ /// This is a convenience function that will filter a list of binding templates
+ /// and return a list of bindings matching the specified version number.
+ ///
+ /// This implements and expands upon service versioning described in the
+ /// following link and will enable you to tag web services
+ /// registered in UDDI with some kind of version information.<Br><Br>
+ /// Article source: <a href="http://www.ibm.com/developerworks/webservices/library/ws-version/">http://www.ibm.com/developerworks/webservices/library/ws-version/</a>
+ /// <Br><Br>
+ /// </summary>
+ /// <see cref="createServiceInterfaceVersion"></see>
+ /// <see cref="createServiceInterfaceVersion"></see>
+ /// <see cref="createServiceInterfaceVersion"></see>
+ /// <see cref="createServiceInterfaceVersion"></see>
+ /// <see cref="createServiceInterfaceVersion"></see>
+ ///
+ /// This function operates using tModelInstances that are used to describe a
+ /// version associated with either a service interface, a bindingTemplate
+ /// service instance. Note: This is a jUDDI specific addon and may not be
+ /// present in other registries
+ ///
+ /// <param name="version">From the article, no specificity is provided on what to use as a value, but</param>
+ /// we recommend that you use the string representation of major.minor[.build[.revision]].<br>
+ /// Example
+ /// <ul>
+ /// <li>6.1.2.3</li>
+ /// <li>1.0</li>
+ /// <li>0.1</li>
+ /// </ul>
+ /// <param name="version"></param>
+ /// <param name="bindingTemplate"></param>
+ /// <returns>a list if binding templates where the version equals ignoring case trimmed equals the version value</returns>
+
public static List<bindingTemplate> getBindingByVersion(String version, bindingTemplate[] bindingTemplate)
{
if (version == null)
Added: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES128Cryptor.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES128Cryptor.cs?rev=1542621&view=auto
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES128Cryptor.cs (added)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES128Cryptor.cs Sun Nov 17 00:39:36 2013
@@ -0,0 +1,51 @@
+/*
+ * 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.Text;
+
+namespace org.apache.juddi.v3.client.cryptor
+{
+ /// <summary>
+ /// AES128 Cipher
+ /// </summary>
+ /// <author><a href="mailto:alexoree@apache.org">Alex O'Ree</a></author>
+ internal sealed class AES128Cryptor : AESCryptor
+ {
+ protected internal override int GetKeySize()
+ {
+ return 128;
+ }
+
+ protected internal override int GetBlockSize()
+ {
+ return 128;
+ }
+
+ protected internal override byte[] GetKey()
+ {
+ return Convert.FromBase64String("oT5ljhVnMVQMnV2E7BOj7Q==");
+
+ }
+
+ protected internal override byte[] GetIV()
+ {
+ return Convert.FromBase64String("xtMa34fpJ9bCdpODQn8GmQ==");
+ }
+ }
+}
Added: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES256Cryptor.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES256Cryptor.cs?rev=1542621&view=auto
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES256Cryptor.cs (added)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AES256Cryptor.cs Sun Nov 17 00:39:36 2013
@@ -0,0 +1,91 @@
+/*
+ * 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.Security.Cryptography;
+using System.Text;
+
+namespace org.apache.juddi.v3.client.cryptor
+{
+ /// <summary>
+ /// AES256 Cipher
+ /// </summary>
+ /// <author><a href="mailto:alexoree@apache.org">Alex O'Ree</a></author>
+ public sealed class AES256Cryptor : AESCryptor
+ {
+
+ protected internal override int GetKeySize()
+ {
+ return 256;
+ }
+
+ protected internal override int GetBlockSize()
+ {
+ return 256;
+ }
+
+ public String generateKey()
+ {
+
+ /* AesManaged
+ Legal min key size = 128
+ Legal max key size = 256
+ Legal min block size = 128
+ Legal max block size = 128*/
+ using (RijndaelManaged rijAlg = new RijndaelManaged())
+ {
+ rijAlg.KeySize = 256;
+ rijAlg.BlockSize = 256;
+ rijAlg.GenerateKey();
+ rijAlg.GenerateIV();
+ return rijAlg.KeySize + " " + rijAlg.BlockSize + " " + Convert.ToBase64String(rijAlg.IV, Base64FormattingOptions.None) + " " +
+ Convert.ToBase64String(rijAlg.Key, Base64FormattingOptions.None);
+ }
+
+ }
+ protected internal override byte[] GetKey()
+ {
+ //256 256
+
+ //
+ //OI3xpA3ju175rBFDbgNek9fvQOXMhLNpktgm4+mDvvQ=
+ //tK47Y1FE1JragvCmanbzsA==
+ //yEt6Jn1rEnFFmWduUEu7fxki31k3/TPOzhzHXrKhd4U=
+
+ //256
+ //gAyHDYd4hwYru2ofV41KEw==
+ //2LsXyePZKqYRyxks/9mXiiMewNo5Ai8KDz8FNSi/OvU=
+
+
+ //zR5gURV+ZeJ9pzYIymEwkg==
+ //xgFJ6zCSBB7OAWo3v2y5H1JO4VYlRyxA5Z4gIOOBUzY=
+
+ //9jjQB84Xx1fA5D0vS8EWqA==
+ //RLzwr0D+wnoOPcl4lHPPILPN1TLaH89u0la2+GFWIFY=
+
+ //auWb4YCYAuZQ/joSieu8bg==
+ //VlfjcIggVX5QlvwAKzKmaI92q1ADZgop5RRsQUW8sXQ=
+ return Convert.FromBase64String("OI3xpA3ju175rBFDbgNek9fvQOXMhLNpktgm4+mDvvQ=");
+ }
+
+ protected internal override byte[] GetIV()
+ {
+ return Convert.FromBase64String("19BWwWbtICJkI04WpBkMBkURJTTRB0gIyUyiVgXcaCw= ");
+ }
+ }
+}
Added: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AESCryptor.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AESCryptor.cs?rev=1542621&view=auto
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AESCryptor.cs (added)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/AESCryptor.cs Sun Nov 17 00:39:36 2013
@@ -0,0 +1,153 @@
+/*
+ * 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>
+ /// An abstract class for AES functions
+ /// </summary>
+ /// <see cref="org.apache.juddi.v3.client.cryptor.AES128Cryptor"/>
+ /// <see cref="org.apache.juddi.v3.client.cryptor.AES256Cryptor"/>
+ /// <author><a href="mailto:alexoree@apache.org">Alex O'Ree</a></author>
+ public abstract class AESCryptor : Cryptor
+ {
+
+ protected internal abstract int GetKeySize();
+ protected internal abstract byte[] GetKey();
+ protected internal abstract byte[] GetIV();
+ protected internal abstract int GetBlockSize();
+ public string encrypt(string str)
+ {
+
+ // Encrypt the string to an array of bytes.
+ byte[] encryptedPassword = EncryptStringToBytes(str, GetKey(), GetKey());
+
+ return Convert.ToBase64String(encryptedPassword);
+
+ }
+
+ public string decrypt(string str)
+ {
+ byte[] encryptedPassword = Convert.FromBase64String(str);
+ string clear = DecryptStringFromBytes(encryptedPassword, GetKey(), GetKey());
+
+ return clear;
+ }
+
+
+ internal byte[] EncryptStringToBytes(string plainText, byte[] key, byte[] iv)
+ {
+ // Check arguments.
+ if (plainText == null || plainText.Length <= 0)
+ {
+ throw new ArgumentNullException("plainText");
+ }
+ if (key == null || key.Length <= 0)
+ {
+ throw new ArgumentNullException("key");
+ }
+ if (iv == null || iv.Length <= 0)
+ {
+ throw new ArgumentNullException("key");
+ }
+
+
+ byte[] encrypted;
+ // Create an RijndaelManaged object
+ // with the specified key and IV.
+ using (var rijAlg = new RijndaelManaged())
+ {
+ rijAlg.BlockSize = this.GetBlockSize();
+ rijAlg.KeySize = this.GetKeySize();
+ rijAlg.Key = key;
+ rijAlg.IV = iv;
+
+ // Create a decrytor to perform the stream transform.
+ ICryptoTransform encryptor = rijAlg.CreateEncryptor(rijAlg.Key, rijAlg.IV);
+
+ // Create the streams used for encryption.
+ using (var msEncrypt = new MemoryStream())
+ {
+ using (var csEncrypt = new CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write))
+ {
+ using (var swEncrypt = new StreamWriter(csEncrypt))
+ {
+ //Write all data to the stream.
+ swEncrypt.Write(plainText);
+ }
+ encrypted = msEncrypt.ToArray();
+ }
+ }
+ }
+
+
+ // Return the encrypted bytes from the memory stream.
+ return encrypted;
+
+ }
+
+ internal string DecryptStringFromBytes(byte[] cipherText, byte[] key, byte[] iv)
+ {
+ // Check arguments.
+ if (cipherText == null || cipherText.Length <= 0)
+ throw new ArgumentNullException("cipherText");
+ if (key == null || key.Length <= 0)
+ throw new ArgumentNullException("key");
+ if (iv == null || iv.Length <= 0)
+ throw new ArgumentNullException("key");
+
+ // Declare the string used to hold
+ // the decrypted text.
+ string plaintext;
+
+ // Create an RijndaelManaged object
+ // with the specified key and IV.
+ using (var rijAlg = new RijndaelManaged())
+ {
+ rijAlg.BlockSize = this.GetBlockSize();
+ rijAlg.KeySize = this.GetKeySize();
+ rijAlg.Key = key;
+ rijAlg.IV = iv;
+
+ // Create a decrytor to perform the stream transform.
+ ICryptoTransform decryptor = rijAlg.CreateDecryptor(rijAlg.Key, rijAlg.IV);
+
+ // Create the streams used for decryption.
+ using (var msDecrypt = new MemoryStream(cipherText))
+ {
+ using (var csDecrypt = new CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read))
+ {
+ using (var srDecrypt = new StreamReader(csDecrypt))
+ {
+ // Read the decrypted bytes from the decrypting stream
+ // and place them in a string.
+ plaintext = srDecrypt.ReadToEnd();
+ }
+ }
+ }
+
+ }
+ return plaintext;
+ }
+ }
+}
Added: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/Cryptor.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/Cryptor.cs?rev=1542621&view=auto
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/Cryptor.cs (added)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/Cryptor.cs Sun Nov 17 00:39:36 2013
@@ -0,0 +1,48 @@
+/*
+ * 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.Text;
+
+namespace org.apache.juddi.v3.client.cryptor
+{
+ /// <summary>
+ /// The Crpytor interface, used for encrypting and decrypted credentials
+ /// </summary>
+ /// <author><a href="mailto:alexoree@apache.org">Alex O'Ree</a></author>
+ public interface Cryptor
+ {
+
+
+
+ /// <summary>
+ /// Encrypt the string, if unable to encrypt, return null
+ /// </summary>
+ /// <param name="str"></param>
+ /// <returns>encrypted string</returns>
+ String encrypt(String str);
+ /// <summary>
+ /// decrypts the string
+ /// </summary>
+ /// <param name="str"></param>
+ /// <returns>if the password can be decrypted, the decrypted value is returned, otherwise the original value is returned.
+ /// In the event that decryption fails, the error message must be logged.</returns>
+ String decrypt(String str);
+
+ }
+}
Added: juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/CryptorFactory.cs
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/CryptorFactory.cs?rev=1542621&view=auto
==============================================================================
--- juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/CryptorFactory.cs (added)
+++ juddi/trunk/juddi-client.net/juddi-client.net/org.apache.juddi.v3.client.cryptor/CryptorFactory.cs Sun Nov 17 00:39:36 2013
@@ -0,0 +1,67 @@
+/*
+ * 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.Text;
+
+
+namespace org.apache.juddi.v3.client.cryptor
+{
+ /// <summary>
+ /// loads the appropriate cipher
+ /// </summary>
+ /// <author><a href="mailto:alexoree@apache.org">Alex O'Ree</a></author>
+ public class CryptorFactory
+ {
+ static Dictionary<String, Cryptor> cache = new Dictionary<string, Cryptor>();
+
+ public static readonly string AES128 = "AES128Cryptor";
+ public static readonly string AES256 = "AES256Cryptor";
+ public static readonly string TripleDES = "TripleDESCryptor";
+ /// <summary>
+ /// known implementations
+ /// org.apache.juddi.v3.client.crypto.AES128Cryptor
+ /// org.apache.juddi.v3.client.crypto.AES256Cryptor
+ /// org.apache.juddi.v3.client.crypto.TripleDESCryptor
+ /// </summary>
+ /// <param name="clazz"></param>
+ /// <returns></returns>
+ public static Cryptor getCryptor(string clazz)
+ {
+ if (cache.ContainsKey(clazz))
+ return cache[clazz];
+ Cryptor c = null;
+ if (clazz.Equals(typeof(org.apache.juddi.v3.client.cryptor.AES128Cryptor).Name))
+ {
+ c = new AES128Cryptor();
+ }
+ if (clazz.Equals(typeof(org.apache.juddi.v3.client.cryptor.AES256Cryptor).Name))
+ {
+ c = new AES256Cryptor();
+ }
+ if (clazz.Equals(typeof(org.apache.juddi.v3.client.cryptor.TripleDESCryptor).Name))
+ {
+ c = new TripleDESCryptor();
+ }
+ if (c != null)
+ cache.Add(clazz, c);
+ return c;
+
+ }
+ }
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org