Home » freemarker-2.3.13 » freemarker.debug » [javadoc | source]

    1   /*
    2    * Copyright (c) 2003 The Visigoth Software Society. All rights
    3    * reserved.
    4    *
    5    * Redistribution and use in source and binary forms, with or without
    6    * modification, are permitted provided that the following conditions
    7    * are met:
    8    *
    9    * 1. Redistributions of source code must retain the above copyright
   10    *    notice, this list of conditions and the following disclaimer.
   11    *
   12    * 2. Redistributions in binary form must reproduce the above copyright
   13    *    notice, this list of conditions and the following disclaimer in
   14    *    the documentation and/or other materials provided with the
   15    *    distribution.
   16    *
   17    * 3. The end-user documentation included with the redistribution, if
   18    *    any, must include the following acknowledgement:
   19    *       "This product includes software developed by the
   20    *        Visigoth Software Society (http://www.visigoths.org/)."
   21    *    Alternately, this acknowledgement may appear in the software itself,
   22    *    if and wherever such third-party acknowledgements normally appear.
   23    *
   24    * 4. Neither the name "FreeMarker", "Visigoth", nor any of the names of the 
   25    *    project contributors may be used to endorse or promote products derived
   26    *    from this software without prior written permission. For written
   27    *    permission, please contact visigoths@visigoths.org.
   28    *
   29    * 5. Products derived from this software may not be called "FreeMarker" or "Visigoth"
   30    *    nor may "FreeMarker" or "Visigoth" appear in their names
   31    *    without prior written permission of the Visigoth Software Society.
   32    *
   33    * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   34    * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   35    * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   36    * DISCLAIMED.  IN NO EVENT SHALL THE VISIGOTH SOFTWARE SOCIETY OR
   37    * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   38    * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   39    * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   40    * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   41    * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   42    * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   43    * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   44    * SUCH DAMAGE.
   45    * ====================================================================
   46    *
   47    * This software consists of voluntary contributions made by many
   48    * individuals on behalf of the Visigoth Software Society. For more
   49    * information on the Visigoth Software Society, please see
   50    * http://www.visigoths.org/
   51    */
   52   
   53   package freemarker.debug;
   54   
   55   import java.rmi.Remote;
   56   import java.rmi.RemoteException;
   57   import java.util.Collection;
   58   import java.util.List;
   59   
   60   /**
   61    * The main debugger interface. Allows management of breakpoints as well as
   62    * installation of listeners for debug events.
   63    * @author Attila Szegedi
   64    * @version $Id: Debugger.java,v 1.1 2003/05/02 15:55:48 szegedia Exp $
   65    */
   66   public interface Debugger extends Remote
   67   {
   68       public static final int DEFAULT_PORT = 7011;
   69   
   70       /**
   71        * Adds a breakpoint
   72        * @param breakpoint the breakpoint to add
   73        * @throws RemoteException
   74        */
   75       public void addBreakpoint(Breakpoint breakpoint)
   76       throws
   77           RemoteException;
   78       
   79       /**
   80        * Removes a single breakpoint
   81        * @param breakpoint the breakpoint to remove
   82        * @throws RemoteException
   83        */
   84       public void removeBreakpoint(Breakpoint breakpoint)
   85       throws
   86           RemoteException;
   87   
   88       /**
   89        * Removes all breakpoints for a specific template
   90        * @param templateName
   91        * @throws RemoteException
   92        */
   93       public void removeBreakpoints(String templateName)
   94       throws
   95           RemoteException;
   96   
   97       /**
   98        * Removes all breakpoints
   99        * @throws RemoteException
  100        */
  101       public void removeBreakpoints()
  102       throws
  103           RemoteException;
  104   
  105       /**
  106        * Retrieves a list of all {@link Breakpoint} objects.
  107        * @throws RemoteException
  108        */
  109       public List getBreakpoints()
  110       throws
  111           RemoteException;
  112           
  113       /**
  114        * Retrieves a list of all {@link Breakpoint} objects for the specified
  115        * template.
  116        * @throws RemoteException
  117        */
  118       public List getBreakpoints(String templateName)
  119       throws
  120           RemoteException;
  121   
  122       /**
  123        * Retrieves a collection of all {@link DebuggedEnvironment} objects that 
  124        * are currently suspended.
  125        * @throws RemoteException
  126        */
  127       public Collection getSuspendedEnvironments()
  128       throws
  129           RemoteException;
  130           
  131       /**
  132        * Adds a listener for debugger events.
  133        * @return an identification token that should be passed to 
  134        * {@link #removeDebuggerListener(Object)} to remove this listener.
  135        * @throws RemoteException
  136        */
  137       public Object addDebuggerListener(DebuggerListener listener)
  138       throws
  139           RemoteException;
  140           
  141       /**
  142        * Removes a previously added debugger listener.
  143        * @param id the identification token for the listener that was returned
  144        * from a prior call to {@link #addDebuggerListener(DebuggerListener)}.
  145        * @throws RemoteException
  146        */
  147       public void removeDebuggerListener(Object id)
  148       throws
  149           RemoteException;
  150   }

Home » freemarker-2.3.13 » freemarker.debug » [javadoc | source]