@Override public SModule resolve(SModuleReference reference) { if (reference == null) { return null; } SModule module; if (reference.getModuleId() != null) { module = MPSModuleRepository.getInstance().getModule(reference.getModuleId()); } else { module = MPSModuleRepository.getInstance().getModuleByFqName(reference.getModuleName()); } if (module == null) { return null; } synchronized (LOCK) { initialize(); if (myVisibleModules.contains(module) || myUsedLanguages.contains(module) || myUsedDevkits.contains(module)) { return module; } else { return null; } } }
protected void setModuleReference(@NotNull SModuleReference reference) { assertCanChange(); assert reference.getModuleId() != null : "module must have an id"; assert myModuleReference == null || reference.getModuleId().equals(myModuleReference.getModuleId()) : "module id can't be changed"; SModuleReference oldValue = myModuleReference; myModuleReference = reference; if (oldValue != null && oldValue.getModuleName() != null && !oldValue.getModuleName().equals(myModuleReference.getModuleName())) { MPSModuleRepository.getInstance().moduleFqNameChanged(this, oldValue.getModuleName()); } }
public SModule getModule(@NotNull SModuleReference ref) { return ref.getModuleId() != null ? REPO.getModuleById(ref.getModuleId()) : REPO.getModuleByFqName(ref.getModuleName()); }