View Javadoc

1   /*
2    *   Copyright 2004 The Apache Software Foundation
3    *
4    *   Licensed under the Apache License, Version 2.0 (the "License");
5    *   you may not use this file except in compliance with the License.
6    *   You may obtain a copy of the License at
7    *
8    *       http://www.apache.org/licenses/LICENSE-2.0
9    *
10   *   Unless required by applicable law or agreed to in writing, software
11   *   distributed under the License is distributed on an "AS IS" BASIS,
12   *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   *   See the License for the specific language governing permissions and
14   *   limitations under the License.
15   *
16   */
17  package org.apache.asn1.ber ;
18  
19  
20  import org.apache.asn1.codec.stateful.DecoderMonitor;
21  
22  
23  /***
24   * A monitor designed for extended BER decoder functionality with greater 
25   * detail to specific BER decoder events.
26   *
27   * @author <a href="mailto:dev@directory.apache.org">
28   * Apache Directory Project</a>
29   * @version $Rev: 157644 $
30   */
31  public interface BERDecoderMonitor extends DecoderMonitor
32  {
33      /***
34       * Method used to receive notification that a tag was decoded.  The 
35       * following tag properties of the TLV tuple are valid at this point:
36       * <ul>
37       * <li>id</li>
38       * <li>isPrimitive</li>
39       * <li>typeClass</li>
40       * </ul>
41       * 
42       * @param tlv the TLV tuple
43       */
44      void tagDecoded( Tuple tlv ) ;
45      
46      /***
47       * Method used to receive notification that a length was decoded.  The 
48       * following properties of the TLV tuple are valid at this point:
49       * <ul>
50       * <li>id</li>
51       * <li>isPrimitive</li>
52       * <li>typeClass</li>
53       * <li>length</li>
54       * </ul>
55       * 
56       * @param tlv the TLV tuple
57       */
58      void lengthDecoded( Tuple tlv ) ;
59  }