code: @Override
  	public String resolve(
  			String mid,
  			Features features,
  			Set<String> dependentFeatures,
  			StringBuffer sb,
  			boolean resolveAliases,
  			boolean evaluateHasPluginConditionals) {
  		final String sourceMethod = "resolve"; //$NON-NLS-1$
  		boolean isTraceLogging = log.isLoggable(Level.FINER);
  		if (isTraceLogging) {
  			log.entering(ConfigImpl.class.getName(), sourceMethod, new Object[]{mid, features, dependentFeatures, sb, resolveAliases, evaluateHasPluginConditionals});
  		}
  
  		mid = _resolve(mid, features, dependentFeatures, resolveAliases, evaluateHasPluginConditionals, 0, sb);
  
  		// check for package name and replace with the package's main module id
  		IPackage pkg = packages.get(mid);
  		if (pkg != null) {
  			mid = pkg.getMain();
  		}
  		if (isTraceLogging) {
  			log.exiting(ConfigImpl.class.getName(), sourceMethod, mid);
  		}
  		return mid;
  	}
docs: /* (non-Javadoc)
  @see com.ibm.jaggr.service.config.IConfig#resolve(java.lang.String, com.ibm.jaggr.service.util.Features, java.util.Set, java.lang.StringBuffer, boolean, boolean)