/** * <copyright> * </copyright> * * */ package org.dresdenocl.language.ocl.resource.ocl.analysis; import java.util.List; import org.dresdenocl.language.ocl.resource.ocl.IOclReferenceResolveHelper; import org.dresdenocl.language.ocl.resource.ocl.OclReferenceResolveHelperProvider; import org.dresdenocl.pivotmodel.Parameter; public class ParameterCSParameterReferenceResolver implements org.dresdenocl.language.ocl.resource.ocl.IOclReferenceResolver<org.dresdenocl.language.ocl.ParameterCS, org.dresdenocl.pivotmodel.Parameter> { private org.dresdenocl.language.ocl.resource.ocl.analysis.OclDefaultResolverDelegate<org.dresdenocl.language.ocl.ParameterCS, org.dresdenocl.pivotmodel.Parameter> delegate = new org.dresdenocl.language.ocl.resource.ocl.analysis.OclDefaultResolverDelegate<org.dresdenocl.language.ocl.ParameterCS, org.dresdenocl.pivotmodel.Parameter>(); public void resolve( java.lang.String identifier, org.dresdenocl.language.ocl.ParameterCS container, org.eclipse.emf.ecore.EReference reference, int position, boolean resolveFuzzy, final org.dresdenocl.language.ocl.resource.ocl.IOclReferenceResolveResult<org.dresdenocl.pivotmodel.Parameter> result) { IOclReferenceResolveHelper rrHelper = OclReferenceResolveHelperProvider .getOclReferenceResolveHelper(); if (rrHelper != null) { List<Parameter> parameters = rrHelper.resolveParameterDefinition( identifier, resolveFuzzy, container, reference, container .getParameterType()); for (Parameter parameter : parameters) { if (!resolveFuzzy) result.addMapping(identifier, parameter); else result.addMapping(parameter.getName(), parameter); } } } public java.lang.String deResolve( org.dresdenocl.pivotmodel.Parameter element, org.dresdenocl.language.ocl.ParameterCS container, org.eclipse.emf.ecore.EReference reference) { return delegate.deResolve(element, container, reference); } public void setOptions(java.util.Map<?, ?> options) { // save options in a field or leave method empty if this resolver does not // depend on any option } }