diff --git a/jps/model-api/src/org/jetbrains/jps/model/JpsProject.java b/jps/model-api/src/org/jetbrains/jps/model/JpsProject.java index 16ea595874c9..cd1e6a3e815b 100644 --- a/jps/model-api/src/org/jetbrains/jps/model/JpsProject.java +++ b/jps/model-api/src/org/jetbrains/jps/model/JpsProject.java @@ -52,4 +52,7 @@ public interface JpsProject extends JpsCompositeElement, JpsReferenceableElement @NotNull String getName(); void setName(@NotNull String name); + + @NotNull + JpsModel getModel(); } diff --git a/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsGlobalImpl.java b/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsGlobalImpl.java index 55a5a1335856..349b8fb718b8 100644 --- a/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsGlobalImpl.java +++ b/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsGlobalImpl.java @@ -15,7 +15,7 @@ import org.jetbrains.jps.model.library.sdk.JpsSdkType; public class JpsGlobalImpl extends JpsRootElementBase implements JpsGlobal { private final JpsLibraryCollectionImpl myLibraryCollection; - public JpsGlobalImpl(JpsModel model, JpsEventDispatcher eventDispatcher) { + public JpsGlobalImpl(@NotNull JpsModel model, JpsEventDispatcher eventDispatcher) { super(model, eventDispatcher); myLibraryCollection = new JpsLibraryCollectionImpl(myContainer.setChild(JpsLibraryRole.LIBRARIES_COLLECTION_ROLE)); myContainer.setChild(JpsFileTypesConfigurationImpl.ROLE, new JpsFileTypesConfigurationImpl()); diff --git a/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsProjectImpl.java b/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsProjectImpl.java index b405c1bbf56f..c10959b83bf2 100644 --- a/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsProjectImpl.java +++ b/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsProjectImpl.java @@ -34,7 +34,7 @@ public class JpsProjectImpl extends JpsRootElementBase implement private final JpsLibraryCollection myLibraryCollection; private String myName = ""; - public JpsProjectImpl(JpsModel model, JpsEventDispatcher eventDispatcher) { + public JpsProjectImpl(@NotNull JpsModel model, JpsEventDispatcher eventDispatcher) { super(model, eventDispatcher); myContainer.setChild(JpsModuleRole.MODULE_COLLECTION_ROLE); myContainer.setChild(EXTERNAL_REFERENCES_COLLECTION_ROLE); diff --git a/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsRootElementBase.java b/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsRootElementBase.java index 6ffafc14e136..cf8e65823336 100644 --- a/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsRootElementBase.java +++ b/jps/model-impl/src/org/jetbrains/jps/model/impl/JpsRootElementBase.java @@ -12,7 +12,7 @@ public abstract class JpsRootElementBase> extend private final JpsModel myModel; private final JpsEventDispatcher myEventDispatcher; - protected JpsRootElementBase(JpsModel model, JpsEventDispatcher eventDispatcher) { + protected JpsRootElementBase(@NotNull JpsModel model, JpsEventDispatcher eventDispatcher) { super(); myModel = model; myEventDispatcher = eventDispatcher; @@ -29,8 +29,9 @@ public abstract class JpsRootElementBase> extend return myEventDispatcher; } + @NotNull @Override - protected JpsModel getModel() { + public JpsModel getModel() { return myModel; } diff --git a/plugins/eclipse/jps-plugin/src/org/jetbrains/jps/eclipse/model/JpsEclipseClasspathReader.java b/plugins/eclipse/jps-plugin/src/org/jetbrains/jps/eclipse/model/JpsEclipseClasspathReader.java index 9c865365e405..bb3fef56de2c 100644 --- a/plugins/eclipse/jps-plugin/src/org/jetbrains/jps/eclipse/model/JpsEclipseClasspathReader.java +++ b/plugins/eclipse/jps-plugin/src/org/jetbrains/jps/eclipse/model/JpsEclipseClasspathReader.java @@ -23,10 +23,9 @@ import org.jdom.Element; import org.jetbrains.annotations.Nullable; import org.jetbrains.idea.eclipse.*; import org.jetbrains.jps.model.JpsElementFactory; -import org.jetbrains.jps.model.JpsModel; -import org.jetbrains.jps.model.JpsProject; import org.jetbrains.jps.model.java.*; import org.jetbrains.jps.model.library.JpsLibrary; +import org.jetbrains.jps.model.library.JpsLibraryReference; import org.jetbrains.jps.model.library.JpsOrderRootType; import org.jetbrains.jps.model.module.*; import org.jetbrains.jps.model.serialization.JpsMacroExpander; @@ -67,11 +66,10 @@ class JpsEclipseClasspathReader extends AbstractEclipseClasspathReader