|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2000 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.spi.debugger.jpda; import javax.swing.Action; import org.netbeans.api.debugger.jpda.Variable; import org.netbeans.spi.viewmodel.ComputingException; import org.netbeans.spi.viewmodel.NoInformationException; import org.netbeans.spi.viewmodel.NodeActionsProvider; import org.netbeans.spi.viewmodel.NodeModel; import org.netbeans.spi.viewmodel.TableModel; import org.netbeans.spi.viewmodel.TreeModel; import org.netbeans.spi.viewmodel.UnknownTypeException; /** * This filter allows to change nodes in Locals View and Watches View for * some concrete variable types. For example itallows to define "logical" view * for java.util.Hashtable. * * Instances of this filter should be registerred in: " * "META-INF\debugger\netbeans-JPDADebuggerEngine\org.netbeans.spi.debugger.jpda.VariablesFilter" * file. * * @author Jan Jancura */ public abstract class VariablesFilter { /** * Returns set of fully quilified class names (like java.lang.String) this * filter is registerred to. * * @return set of fully quilified class names */ public abstract String[] getSupportedTypes (); /** * Returns set of fully quilified class names (like java.lang.String) this * filter is registerred to. * * @return set of fully quilified class names */ public abstract String[] getSupportedAncestors (); /** * Returns filtered children for given variable on given indexes. * * @param original the original tree model * @param variable a variable of returned fields * @throws NoInformationException if the set of children can not be * resolved * @throws ComputingException if the children resolving process * is time consuming, and will be performed off-line * @throws UnknownTypeException if this TreeModelFilter implementation is not * able to resolve dchildren for given node type * * @return children for given parent on given indexes */ public abstract Object[] getChildren ( TreeModel original, Variable variable, int from, int to ) throws NoInformationException, ComputingException, UnknownTypeException; /** * Returns number of filtered children for given variable. * * @param original the original tree model * @param variable a variable of returned fields * * @throws NoInformationException if the set of children can not be * resolved * @throws ComputingException if the children resolving process * is time consuming, and will be performed off-line * @throws UnknownTypeException if this TreeModelFilter implementation is not * able to resolve dchildren for given node type * * @return number of filtered children for given variable */ public abstract int getChildrenCount ( TreeModel original, Variable variable ) throws NoInformationException, ComputingException, UnknownTypeException; /** * Returns true if variable is leaf. * * @param original the original tree model * @throws UnknownTypeException if this TreeModel implementation is not * able to resolve dchildren for given node type * @return true if node is leaf */ public abstract boolean isLeaf ( TreeModel original, Variable variable ) throws UnknownTypeException; // NodeModelFilter /** * Returns filterred display name for given variable. * * @throws ComputingException if the display name resolving process * is time consuming, and the value will be updated later * @throws UnknownTypeException if this NodeModel implementation is not * able to resolve display name for given node type * @return display name for given node */ public abstract String getDisplayName (NodeModel original, Variable variable) throws ComputingException, UnknownTypeException; /** * Returns filterred icon for given variable. * * @throws ComputingException if the icon resolving process * is time consuming, and the value will be updated later * @throws UnknownTypeException if this NodeModel implementation is not * able to resolve icon for given node type * @return icon for given node */ public abstract String getIconBase (NodeModel original, Variable variable) throws ComputingException, UnknownTypeException; /** * Returns filterred tooltip for given variable. * * @throws ComputingException if the tooltip resolving process * is time consuming, and the value will be updated later * @throws UnknownTypeException if this NodeModel implementation is not * able to resolve tooltip for given node type * @return tooltip for given node */ public abstract String getShortDescription (NodeModel original, Variable variable) throws ComputingException, UnknownTypeException; // NodeActionsProviderFilter /** * Returns set of actions for given variable. * * @throws UnknownTypeException if this NodeActionsProvider implementation * is not able to resolve actions for given node type * @return set of actions for given variable */ public abstract Action[] getActions ( NodeActionsProvider original, Variable variable ) throws UnknownTypeException; /** * Performs default action for given variable. * * @throws UnknownTypeException if this NodeActionsProvider implementation * is not able to resolve actions for given node type */ public abstract void performDefaultAction ( NodeActionsProvider original, Variable variable ) throws UnknownTypeException; // TableModelFilter /** * Returns filterred value to be displayed in column |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.