1 /* 2 * reserved comment block 3 * DO NOT REMOVE OR ALTER! 4 */ 5 /* 6 * Copyright 2008 The Apache Software Foundation. 7 * 8 * Licensed under the Apache License, Version 2.0 (the "License"); 9 * you may not use this file except in compliance with the License. 10 * You may obtain a copy of the License at 11 * 12 * http://www.apache.org/licenses/LICENSE-2.0 13 * 14 * Unless required by applicable law or agreed to in writing, software 15 * distributed under the License is distributed on an "AS IS" BASIS, 16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 * See the License for the specific language governing permissions and 18 * limitations under the License. 19 * 20 */ 21 package com.sun.org.apache.xml.internal.security.transforms.implementations; 22 23 import java.io.OutputStream; 24 25 import com.sun.org.apache.xml.internal.security.c14n.CanonicalizationException; 26 import com.sun.org.apache.xml.internal.security.c14n.implementations.Canonicalizer11_WithComments; 27 import com.sun.org.apache.xml.internal.security.signature.XMLSignatureInput; 28 import com.sun.org.apache.xml.internal.security.transforms.Transform; 29 import com.sun.org.apache.xml.internal.security.transforms.TransformSpi; 30 import com.sun.org.apache.xml.internal.security.transforms.Transforms; 31 32 /** 33 * Implements the <CODE>http://www.w3.org/2006/12/xml-c14n-11#WithComments</CODE> 34 * (C14N 1.1 With Comments) transform. 35 * 36 * @author Sean Mullan 37 */ 38 public class TransformC14N11_WithComments extends TransformSpi { 39 40 protected String engineGetURI() { 41 return Transforms.TRANSFORM_C14N11_WITH_COMMENTS; 42 } 43 44 protected XMLSignatureInput enginePerformTransform 45 (XMLSignatureInput input, Transform transform) 46 throws CanonicalizationException { 47 return enginePerformTransform(input, null, transform); 48 } 49 50 protected XMLSignatureInput enginePerformTransform 51 (XMLSignatureInput input, OutputStream os, Transform transform) 52 throws CanonicalizationException { 53 54 Canonicalizer11_WithComments c14n = new Canonicalizer11_WithComments(); 55 if (os != null) { 56 c14n.setWriter(os); 57 } 58 59 byte[] result = null; 60 result = c14n.engineCanonicalize(input); 61 XMLSignatureInput output = new XMLSignatureInput(result); 62 if (os != null) { 63 output.setOutputStream(os); 64 } 65 return output; 66 } 67 }