blob: 237cabf695901e74f440a4e7f1503230b52c9236 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2000, 2003 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Common Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/cpl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.jdt.debug.core;
import org.eclipse.core.runtime.CoreException;
/**
* A line breakpoint installed in types associated with a specific source file
* (based on source file name debug attribute) and whose fully
* qualified name matches a specified pattern per target.
* The {target, type name pattern} pairs are not persisted with this breakpoint, as
* targets are transient. Clients that use this type of breakpoint are intended
* to be breakpoint listeners that set a pattern per target as each breakpoint
* is added to a target.
* <p>
* This interface is not intended to be implemented.
* </p>
* @see org.eclipse.jdt.debug.core.IJavaBreakpointListener
* @since 2.0
*/
public interface IJavaTargetPatternBreakpoint extends IJavaLineBreakpoint {
/**
* Returns the type name pattern this breakpoint uses to identify types
* in which to install itself in the given target
*
* @param target debug target
* @return the type name pattern this breakpoint uses to identify types
* in which to install itself in the given target
*/
public String getPattern(IJavaDebugTarget target);
/**
* Sets the type name pattern this breakpoint uses to identify types
* in which to install itself in the given target
*
* @param target debug target
* @param pattern type name pattern
* @exception CoreException if changing the pattern for this breakpoint fails
*/
public void setPattern(IJavaDebugTarget target, String pattern) throws CoreException;
/**
* Returns the source file name in which this breakpoint is set.
* When this breakpoint specifies a source file name, this breakpoint is
* only installed in types whose source file name debug attribute
* match this value.
*
* @return the source file name in which this breakpoint is set
* @exception CoreException if unable to access the property from
* this breakpoint's underlying marker
*/
public String getSourceName() throws CoreException;
}