Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.jface.text.templates
Class TemplateVariableResolver

    java.lang.Object
      org.eclipse.jface.text.templates.TemplateVariableResolver

Direct Known Subclasses:
  SimpleTemplateVariableResolver

public class TemplateVariableResolver
extends Object

A `TemplateVariableResolver` resolves `TemplateVariables` of a certain type inside a `TemplateContext`.

Clients may instantiate and extend this class.

Since:
  3.0
See Also:
  `TemplateVariable`

Constructor Summary
`` | `TemplateVariableResolver()` Creates an empty instance.
`protected` | `TemplateVariableResolver(String type, String description)` Creates an instance of `TemplateVariableResolver`.

Method Summary
`String` | `getDescription()` Returns the description for the resolver.
`String` | `getType()` Returns the type of this resolver.
`protected boolean` | `isUnambiguous(TemplateContext context)` Returns whether this resolver is able to resolve unambiguously.
`protected String` | `resolve(TemplateContext context)` Returns an instance of the type resolved by the receiver available in `context`.
`void` | `resolve(TemplateVariable variable, TemplateContext context)` Resolves `variable` in `context`.
`protected String[]` | `resolveAll(TemplateContext context)` Returns all possible bindings available in `context`.
`void` | `setDescription(String description)` Sets the description.
`void` | `setType(String type)` Sets the type.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### TemplateVariableResolver

    protected TemplateVariableResolver(String type,
                                       String description)

  Creates an instance of `TemplateVariableResolver`.

Parameters:
  `type` - the name of the type
  `description` - the description for the type

### TemplateVariableResolver

    public TemplateVariableResolver()

  Creates an empty instance.

  This is a framework-only constructor that exists only so that resolvers can be contributed via an extension point and that should not be called in client code except for subclass constructors; use `TemplateVariableResolver(String, String)` instead.

Method Detail

### getType

    public String getType()

  Returns the type of this resolver.

  Returns:
    the type

### getDescription

    public String getDescription()

  Returns the description for the resolver.

  Returns:
    the description for the resolver

### resolve

    protected String resolve(TemplateContext context)

  Returns an instance of the type resolved by the receiver available in `context`. To resolve means to provide a binding to a concrete text object (a `String`) in the given context.

  The default implementation looks up the type in the context.

  Parameters:
    `context` - the context in which to resolve the type
  Returns:
    the name of the text object of this type, or `null` if it cannot be determined

### resolveAll

    protected String[] resolveAll(TemplateContext context)

  Returns all possible bindings available in `context`. The default implementation simply returns an array which contains the result of `resolve(TemplateContext)`, or an empty array if that call returns `null`.

  Parameters:
    `context` - the context in which to resolve the type
  Returns:
    an array of possible bindings of this type in `context`

### resolve

    public void resolve(TemplateVariable variable,
                        TemplateContext context)

  Resolves `variable` in `context`. To resolve means to find a valid binding of the receiver's type in the given `TemplateContext`. If the variable can be successfully resolved, its value is set using `TemplateVariable.setValues(String[])`.

  Parameters:
    `context` - the context in which variable is resolved
    `variable` - the variable to resolve

### isUnambiguous

    protected boolean isUnambiguous(TemplateContext context)

  Returns whether this resolver is able to resolve unambiguously. When resolving a `TemplateVariable`, its `isUmambiguous` state is set to the one of this resolver. By default, this method returns `false`. Clients can overwrite this method to give a hint about whether there should be e.g. prompting for input values for ambiguous variables.

  Parameters:
    `context` - the context in which the resolved check should be evaluated
  Returns:
    `true` if the receiver is unambiguously resolvable in `context`, `false` otherwise

### setDescription

    public final void setDescription(String description)

  Sets the description.

  This is a framework-only method that exists only so that resolvers can be contributed via an extension point and that should not be called in client code; use `TemplateVariableResolver(String, String)` instead.

  Parameters:
    `description` - the description of this resolver

### setType

    public final void setType(String type)

  Sets the type.

  This is a framework-only method that exists only so that resolvers can be contributed via an extension point and that should not be called in client code; use `TemplateVariableResolver(String, String)` instead.

  Parameters:
    `type` - the type of this resolver

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.