cdt/cdt_6_0_x/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/service/IBreakpointAttributeTranslator.java
author l12wang
Wed, 11 Nov 2009 14:48:30 -0600
changeset 112 6b1088abccf8
parent 103 1b990d2a43dd
permissions -rw-r--r--
Reworked BreakpointsMediator. See Eclipse bug 292468.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
37
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     1
/*******************************************************************************
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     2
 * Copyright (c) 2008 Wind River Systems and others.
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     3
 * All rights reserved. This program and the accompanying materials
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     4
 * are made available under the terms of the Eclipse Public License v1.0
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     5
 * which accompanies this distribution, and is available at
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     6
 * http://www.eclipse.org/legal/epl-v10.html
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     7
 * 
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     8
 * Contributors:
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
     9
 *     Wind River Systems - initial API and implementation
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    10
 *******************************************************************************/
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    11
package org.eclipse.cdt.dsf.debug.service;
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    12
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    13
import java.util.List;
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    14
import java.util.Map;
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    15
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    16
import org.eclipse.cdt.dsf.concurrent.ThreadSafeAndProhibitedFromDsfExecutor;
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    17
import org.eclipse.cdt.dsf.debug.service.IBreakpoints.IBreakpointDMContext;
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    18
import org.eclipse.core.runtime.CoreException;
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    19
import org.eclipse.debug.core.model.IBreakpoint;
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    20
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    21
/**
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    22
 * Breakpoint attribute translator interface
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    23
 * 
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    24
 * @since 1.0
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    25
 */
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    26
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    27
@ThreadSafeAndProhibitedFromDsfExecutor("")
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    28
public interface IBreakpointAttributeTranslator {
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    29
    
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    30
    public void initialize(BreakpointsMediator mediator);
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    31
    
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    32
    public void dispose();
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    33
    
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    34
    public List<Map<String, Object>> getBreakpointAttributes(IBreakpoint breakpoint, boolean bpManagerEnabled)  throws CoreException;
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    35
    
112
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    36
    /**
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    37
     * Whether DSF client can handle the given attribute change itself. If not, DSF will 
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    38
     * try to reinstall the breakpoint to apply the change.
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    39
     *  
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    40
     * @param bp - can be null.
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    41
     * @param delta
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    42
     * @return
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    43
     */
37
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    44
    public boolean canUpdateAttributes(IBreakpointDMContext bp, Map<String, Object> delta);
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    45
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    46
    public boolean supportsBreakpoint(IBreakpoint bp);
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    47
112
6b1088abccf8 Reworked BreakpointsMediator. See Eclipse bug 292468.
l12wang
parents: 103
diff changeset
    48
    public void updateBreakpointStatus(IBreakpoint bp);
37
c2bce6dd59e7 add cdt_6_0_x
cawthron
parents:
diff changeset
    49
}