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.ldap.server.tools.schema;
18  
19  
20  /***
21   * A console reporting monitor.  Add system property 'maven.eve.schema.parser.trace'
22   * to get this monitor to trace parser production execution.
23   *
24   * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
25   * @version $Rev: 264732 $
26   */
27  public class ConsoleParserMonitor implements ParserMonitor
28  {
29      public static final String TRACE_KEY = "maven.eve.schema.parser.trace";
30  
31  
32      public void matchedProduction( String prod )
33      {
34          if ( System.getProperties().containsKey( TRACE_KEY ) )
35          {
36              System.out.println( prod );
37          }
38      }
39  
40      public void startedParse( String s )
41      {
42          if ( System.getProperties().containsKey( TRACE_KEY ) )
43          {
44              System.out.println( s );
45          }
46      }
47  
48      public void finishedParse( String s )
49      {
50          if ( System.getProperties().containsKey( TRACE_KEY ) )
51          {
52              System.out.println( s );
53          }
54      }
55  }