Author: vyemialyanchyk
Date: 2009-05-15 13:52:33 -0400 (Fri, 15 May 2009)
New Revision: 15317
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.jdt.ui/src/org/hibernate/eclipse/jdt/ui/internal/jpa/collect/AllEntitiesInfoCollector.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-4322 - npe fix
Modified:
trunk/hibernatetools/plugins/org.hibernate.eclipse.jdt.ui/src/org/hibernate/eclipse/jdt/ui/internal/jpa/collect/AllEntitiesInfoCollector.java
===================================================================
---
trunk/hibernatetools/plugins/org.hibernate.eclipse.jdt.ui/src/org/hibernate/eclipse/jdt/ui/internal/jpa/collect/AllEntitiesInfoCollector.java 2009-05-15
17:30:14 UTC (rev 15316)
+++
trunk/hibernatetools/plugins/org.hibernate.eclipse.jdt.ui/src/org/hibernate/eclipse/jdt/ui/internal/jpa/collect/AllEntitiesInfoCollector.java 2009-05-15
17:52:33 UTC (rev 15317)
@@ -698,21 +698,29 @@
if (cu == null) {
return;
}
- if (cu.types() != null && cu.types().size() > 0 ) {
- Object tmp = cu.types().get(0);
- if (!(tmp instanceof TypeDeclaration)) {
- // ignore EnumDeclaration & AnnotationTypeDeclaration
- return;
- }
+ if (cu.types() == null || cu.types().size() == 0 ) {
+ return;
}
- String fullyQualifiedName =
cu.getTypeRoot().findPrimaryType().getFullyQualifiedName();
+ Object tmp = cu.types().get(0);
+ if (!(tmp instanceof TypeDeclaration)) {
+ // ignore EnumDeclaration & AnnotationTypeDeclaration
+ return;
+ }
+ String fullyQualifiedName = null;
+ //TODO: should inspect all types in cu? so next method to get fullyQualifiedName:
+ //((TypeDeclaration)tmp).resolveBinding().getBinaryName()
+ if (cu.getTypeRoot() == null || cu.getTypeRoot().findPrimaryType() == null) {
+ //fullyQualifiedName = ((TypeDeclaration)tmp).resolveBinding().getBinaryName();
+ return;
+ } else {
+ fullyQualifiedName = cu.getTypeRoot().findPrimaryType().getFullyQualifiedName();
+ }
if (mapCUs_Info.containsKey(fullyQualifiedName)) {
return;
}
CollectEntityInfo finder = new CollectEntityInfo();
cu.accept(finder);
EntityInfo result = finder.getEntityInfo();
-
if (result != null) {
result.adjustParameters();
mapCUs_Info.put(fullyQualifiedName, result);