blob: 68ac17e4d12e6710f47fa5c567fe4d54835a79c8 [file] [log] [blame]
package org.jetbrains.idea.maven.server;
import com.intellij.util.containers.WeakValueHashMap;
import org.apache.maven.project.MavenProject;
import org.jetbrains.annotations.NotNull;
public class RemoteNativeMavenProjectHolder implements NativeMavenProjectHolder {
private static final WeakValueHashMap<Integer, RemoteNativeMavenProjectHolder> myMap =
new WeakValueHashMap<Integer, RemoteNativeMavenProjectHolder>();
private final MavenProject myMavenProject;
public RemoteNativeMavenProjectHolder(@NotNull MavenProject mavenProject) {
myMavenProject = mavenProject;
myMap.put(getId(), this);
}
public int getId() {
return System.identityHashCode(this);
}
@NotNull
public static MavenProject findProjectById(int id) {
RemoteNativeMavenProjectHolder result = myMap.get(id);
if (result == null) {
throw new RuntimeException("NativeMavenProjectHolder not found for id: " + id);
}
return result.myMavenProject;
}
}