org.eclipse.emf.ocl.parser
Interface TypeResolver

All Known Implementing Classes:
TypeResolverImpl

Deprecated. Use the TypeResolver interface with the Environment, instead.

@Deprecated
public interface TypeResolver

Definition of a resolver for the dynamically-generated OCL types based on the types in the user model. It is expected that an implementation of this interface will cache types for the duration of the associated Environment and, if serialization of OCLExpressions is required, persist them in a Resource.

This interface is not intended to be implemented directly by clients; use or extend the TypeResolverImpl class, instead.


Method Summary
 Resource getResource()
          Deprecated. Obtains the resource in which the types that I generate are stored for persistence.
 EClassifier resolve(EClassifier type)
          Deprecated. Resolves the specified type, returning my own persistent type instance representing the same OCL type.
 EOperation resolveAdditionalOperation(EClassifier owner, EOperation operation)
          Deprecated. Resolves the specified "additional operation" defined by the OCL client on the specified owner type.
 EStructuralFeature resolveAdditionalProperty(EClassifier owner, EStructuralFeature property)
          Deprecated. Resolves the specified "additional property" defined by the OCL client on the specified owner type.
 CollectionType resolveCollectionType(CollectionKind kind, EClassifier elementType)
          Deprecated. Resolves the collection type of the specified kind and element type, either created anew or previously created.
 MessageType resolveMessageType(EClass signal)
          Deprecated. Resolves the type for a message expression referencing the specified signal.
 MessageType resolveMessageType(EOperation operation)
          Deprecated. Resolves the type for a message expression referencing the specified operation.
 TupleType resolveTupleType(List parts)
          Deprecated. Resolves the tuple type consisting of the specified parts, in no particular order, either created anew or previously created.
 TypeType resolveTypeType(EClassifier type)
          Deprecated. Resolves the type for a type expression referencing the specified type.
 

Method Detail

getResource

Resource getResource()
Deprecated. 
Obtains the resource in which the types that I generate are stored for persistence.

Returns:
my resource

resolve

EClassifier resolve(EClassifier type)
Deprecated. 
Resolves the specified type, returning my own persistent type instance representing the same OCL type.

The type may have been newly created by the parser and be a duplicate of a type previously resolved, or it may actually be a type that was previously resolved. In the latter case, the type is returned as is. The null type is considered to be resolved (i.e., the result is also null).

Usually, this method will delegate to one of the resolveXyzType() methods defined by this interface.

Parameters:
type - a type to resolve
Returns:
the resolved type, or type if it is already resolved

resolveCollectionType

CollectionType resolveCollectionType(CollectionKind kind,
                                     EClassifier elementType)
Deprecated. 
Resolves the collection type of the specified kind and element type, either created anew or previously created.

Parameters:
kind - the kind of collection type to create
elementType - the element type
Returns:
the new or existing collection type

resolveTupleType

TupleType resolveTupleType(List parts)
Deprecated. 
Resolves the tuple type consisting of the specified parts, in no particular order, either created anew or previously created. The resulting type is uniquely defined by the names and types of its parts, and twp tuple types are considered equal if they have the same number of parts and their parts correspond one-for-one in name and type (order is not significant).

Parameters:
parts - a list of TypedElements defining the name and type of each tuple part. The part names are unique
Returns:
the new or existing tuple type

resolveTypeType

TypeType resolveTypeType(EClassifier type)
Deprecated. 
Resolves the type for a type expression referencing the specified type. This is, effectively, the OCL metatype counterpart for the specified model type.

Parameters:
type - a model type
Returns:
the new or existing type type

resolveMessageType

MessageType resolveMessageType(EOperation operation)
Deprecated. 
Resolves the type for a message expression referencing the specified operation.

Parameters:
operation - the operation call that the message represents
Returns:
the new or existing message type

resolveMessageType

MessageType resolveMessageType(EClass signal)
Deprecated. 
Resolves the type for a message expression referencing the specified signal.

Parameters:
signal - the signal send that the message represents
Returns:
the new or existing message type

resolveAdditionalOperation

EOperation resolveAdditionalOperation(EClassifier owner,
                                      EOperation operation)
Deprecated. 
Resolves the specified "additional operation" defined by the OCL client on the specified owner type.

Parameters:
owner - the type on which the additional operation is defined
operation - the additional operation
Returns:
the persistent operation

resolveAdditionalProperty

EStructuralFeature resolveAdditionalProperty(EClassifier owner,
                                             EStructuralFeature property)
Deprecated. 
Resolves the specified "additional property" defined by the OCL client on the specified owner type.

Parameters:
owner - the type on which the additional property is defined
property - the additional property
Returns:
the persistent property

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