org.eclipse.emf.query.conditions.eobjects.structuralfeatures
Interface IEStructuralFeatureValueGetter

All Known Implementing Classes:
EStructuralFeatureValueGetter

public interface IEStructuralFeatureValueGetter

An interface used to allow clients more control over the process of iteracting with EObject being evaluated by some EObjectConditions. It acts as a layer of indirection and EObjectConditions that make use of it will always be calling this interfaces methods instead of invoking them directly on the EObject they are testing.

Clients may provide their own implementation.


Method Summary
 List<EObject> eContents(EObject eObject, EObjectCondition filterCondition)
          Extract the contained EObjects of the argument eObject. and return them as a list.
 Object eGet(EObject eObject, EStructuralFeature eFeature, boolean resolve)
          An EStructuralFeature's value getter.
 EObject resolve(EObject eObject)
          Prepares the argument eObject for being tested by a given EObjectCondition so that it won't be necessary to use this getter to call eContents or eGet on it.
 

Method Detail

eContents

List<EObject> eContents(EObject eObject,
                        EObjectCondition filterCondition)
Extract the contained EObjects of the argument eObject. and return them as a list. It uses an -optional- EObjectCondition as a filtering condition of the content list where only those children EObjects that satisfy the filterCondition will be returned to the caller

Parameters:
eObject - The EObject to extract children from
filterCondition - The EObjectCondition to apply on the children in order to remove out those that don't satisfy it. It could be null.
Returns:
List The list of children of the argument eObject.

eGet

Object eGet(EObject eObject,
            EStructuralFeature eFeature,
            boolean resolve)
An EStructuralFeature's value getter.

Parameters:
eObject - The context eObject whose EStructuralFeature's value is to be returned
eFeature - The EStructuralFeature whose value is to be returned
resolve - A boolean flag indicating whether to resolve or not when extracting the value.
Returns:
Object the value held by the eFeature argument

resolve

EObject resolve(EObject eObject)
Prepares the argument eObject for being tested by a given EObjectCondition so that it won't be necessary to use this getter to call eContents or eGet on it. This function is used whenever the eObject is being passed by some EObjectCondition to some other evaluator that does not know about this interface, and thus, we must prepare the eObject to have its methods invoked directly. The prepared EObject that is returned by this function will be used for evaluation.

Parameters:
eObject - The EObject to be prepared
Returns:
EObject the prepared EObject

Copyright 2002, 2007 IBM Corporation and others.
All Rights Reserved.