[runtime] Remove handler block trampoline code
[mono.git] / mcs / class / System.Security / System.Security.Cryptography.Xml / XmlDsigBase64Transform.cs
index b4c9cca214472ffdec8ac58d05f7df2b346abc7b..389c4ba952887f4872effa348129ee12a5e34735 100644 (file)
@@ -40,26 +40,32 @@ namespace System.Security.Cryptography.Xml {
        public class XmlDsigBase64Transform : Transform {
 
                private CryptoStream cs;
+               private Type[] input;
+               private Type[] output;
 
                public XmlDsigBase64Transform () 
                {
-                       Algorithm = "http://www.w3.org/2000/09/xmldsig#base64";
+                       Algorithm = XmlSignature.AlgorithmNamespaces.XmlDsigBase64Transform;
                }
 
                public override Type[] InputTypes {
                        get {
-                               Type[] input = new Type [3];
-                               input[0] = typeof (System.IO.Stream);
-                               input[1] = typeof (System.Xml.XmlDocument);
-                               input[2] = typeof (System.Xml.XmlNodeList);
+                               if (input == null) {
+                                       input = new Type [3];
+                                       input[0] = typeof (System.IO.Stream);
+                                       input[1] = typeof (System.Xml.XmlDocument);
+                                       input[2] = typeof (System.Xml.XmlNodeList);
+                               }
                                return input;
                        }
                }
 
                public override Type[] OutputTypes {
                        get {
-                               Type[] output = new Type [1];
-                               output[0] = typeof (System.IO.Stream);
+                               if (output == null) {
+                                       output = new Type [1];
+                                       output[0] = typeof (System.IO.Stream);
+                               }
                                return output;
                        }
                }