1 /*
   2  * reserved comment block
   3  * DO NOT REMOVE OR ALTER!
   4  */
   5 /*
   6  * Copyright  1999-2004 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.signature;
  22 
  23 import org.w3c.dom.Node;
  24 
  25 /**
  26  * An interface to tell to the c14n if a node is included or not in the output
  27  * @author raul
  28  *
  29  */
  30 public interface NodeFilter {
  31         /**
  32          * Tells if a node must be outputed in c14n.
  33          * @param n
  34          * @return 1 if the node should be outputed.
  35          *                 0 if node must not be outputed,
  36          *                -1 if the node and all it's child must not be output.
  37          *
  38          */
  39         public int isNodeInclude(Node n);
  40         /**
  41          * Tells if a node must be outputed in a c14n.
  42          * The caller must assured that this method is always call
  43          * in document order. The implementations can use this
  44          * restriction to optimize the transformation.
  45          * @param n
  46          * @param level the relative level in the tree
  47          * @return 1 if the node should be outputed.
  48          *                 0 if node must not be outputed,
  49          *                -1 if the node and all it's child must not be output.
  50          */
  51         public int isNodeIncludeDO(Node n, int level);
  52 
  53 }