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