1 /******************************************************************************* 2 * Copyright (c) 2000, 2005 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.core.variables; 12 13 import org.eclipse.core.runtime.CoreException; 14 15 /** 16 * Resolves the value for a dynamic variable. A dynamic variable extension 17 * contributes a resolver which must implement this interface. 18 * <p> 19 * Clients contributing a dynamic variable are intended to provide an implementation 20 * of this interface. 21 * </p> 22 * @since 3.0 23 */ 24 public interface IDynamicVariableResolver { 25 26 /** 27 * Resolves and returns a value for the specified variable when referenced 28 * with the given argument, possibly <code>null</code> 29 * 30 * @param variable variable to resolve a value for 31 * @param argument argument present in expression or <code>null</code> if none 32 * @return variable value, possibly <code>null</code> 33 * @throws CoreException if unable to resolve a value for the given variable 34 */ 35 public String resolveValue(IDynamicVariable variable, String argument) throws CoreException; 36 } 37