/* * Copyright 2013 Guidewire Software, Inc. */ package gw.compiler.ij.processors; import gw.lang.parser.expressions.IBeanMethodCallExpression; import gw.lang.reflect.IMethodInfo; import gw.lang.reflect.IType; import gw.lang.reflect.gs.IGosuEnhancement; public class BeanMethodCallDependencyCollector implements IDependencyCollector<IBeanMethodCallExpression> { @Override public void collect(IBeanMethodCallExpression methodCall, DependencySink sink) { final IMethodInfo info = methodCall.getMethodDescriptor(); if (info != null) { final IType type = info.getOwnersType(); if (type instanceof IGosuEnhancement) { sink.addType(type); } // do not merge below code into opensource gosu if ("com.guidewire.pl.system.locale.DisplayKeyMethod".equals(info.getClass().getName())) { //special handling for displaykeys sink.addDisplayKey(methodCall.getRootExpression().toString() + "." + info.getName()); } } } }