01: /*******************************************************************************
02: * Copyright (c) 2000, 2005 IBM Corporation and others.
03: * All rights reserved. This program and the accompanying materials
04: * are made available under the terms of the Eclipse Public License v1.0
05: * which accompanies this distribution, and is available at
06: * http://www.eclipse.org/legal/epl-v10.html
07: *
08: * Contributors:
09: * IBM Corporation - initial API and implementation
10: *******************************************************************************/package org.eclipse.jdt.internal.corext.refactoring.tagging;
11:
12: /**
13: * Interface implemented by processors able to rename similar declarations.
14: *
15: * @since 3.2
16: */
17: public interface ISimilarDeclarationUpdating {
18:
19: /**
20: * Checks if this refactoring object is capable of updating similar declarations
21: * of the renamed element.
22: *
23: * This can be disabled globally by setting the product configuration property
24: * "org.eclipse.jdt.ui.refactoring.handlesSimilarDeclarations" to "false".
25: */
26: public boolean canEnableSimilarDeclarationUpdating();
27:
28: /**
29: * If <code>canEnableSimilarElementUpdating</code> returns
30: * <code>true</code>, then this method is used to inform the refactoring
31: * object whether similar declarations should be updated. This call can be
32: * ignored if <code>canEnableSimilarElementUpdating</code> returns
33: * <code>false</code>.
34: */
35: public void setUpdateSimilarDeclarations(boolean update);
36:
37: /**
38: * If <code>canEnableSimilarElementUpdating</code> returns
39: * <code>true</code>, then this method is used to ask the refactoring
40: * object whether similar declarations should be updated. This call can be
41: * ignored if <code>canEnableSimilarElementUpdating</code> returns
42: * <code>false</code>.
43: */
44: public boolean getUpdateSimilarDeclarations();
45:
46: /**
47: * If <code>canEnableSimilarElementUpdating</code> returns
48: * <code>true</code>, then this method is used to set the match strategy
49: * for determining similarly named elements.
50: *
51: * @param selectedStrategy one of the STRATEGY_* constants in {@link org.eclipse.jdt.internal.corext.refactoring.rename.RenamingNameSuggestor}
52: */
53: public void setMatchStrategy(int selectedStrategy);
54:
55: /**
56: * If <code>canEnableSimilarElementUpdating</code> returns
57: * <code>true</code>, then this method is used to ask the refactoring
58: * object which match strategy is used for determining similar elements.
59: *
60: * @return one of the STRATEGY_* constants in {@link org.eclipse.jdt.internal.corext.refactoring.rename.RenamingNameSuggestor}
61: */
62: public int getMatchStrategy();
63:
64: }
|