Merge branch 'maint-rel-1.6' into develop

This commit is contained in:
hudajkhan 2013-12-04 11:47:02 -05:00
commit 6e330a89db

View file

@ -112,7 +112,7 @@ public class DefaultObjectPropertyFormGenerator implements EditConfigurationGene
Individual subject = EditConfigurationUtils.getSubjectIndividual(vreq); Individual subject = EditConfigurationUtils.getSubjectIndividual(vreq);
String predicateUri = EditConfigurationUtils.getPredicateUri(vreq); String predicateUri = EditConfigurationUtils.getPredicateUri(vreq);
String rangeUri = EditConfigurationUtils.getRangeUri(vreq); String rangeUri = EditConfigurationUtils.getRangeUri(vreq);
if (rangeUri != null) { if (rangeUri != null && !rangeUri.isEmpty()) {
VClass rangeVClass = ctxDaoFact.getVClassDao().getVClassByURI(rangeUri); VClass rangeVClass = ctxDaoFact.getVClassDao().getVClassByURI(rangeUri);
if (!rangeVClass.isUnion()) { if (!rangeVClass.isUnion()) {
types.add(rangeVClass); types.add(rangeVClass);
@ -125,18 +125,23 @@ public class DefaultObjectPropertyFormGenerator implements EditConfigurationGene
} }
WebappDaoFactory wDaoFact = vreq.getWebappDaoFactory(); WebappDaoFactory wDaoFact = vreq.getWebappDaoFactory();
//Get all vclasses applicable to subject //Get all vclasses applicable to subject
List<VClass> vClasses = subject.getVClasses(); if(subject != null) {
HashMap<String, VClass> typesHash = new HashMap<String, VClass>(); List<VClass> vClasses = subject.getVClasses();
for(VClass vclass: vClasses) { HashMap<String, VClass> typesHash = new HashMap<String, VClass>();
List<VClass> rangeVclasses = wDaoFact.getVClassDao().getVClassesForProperty(vclass.getURI(),predicateUri); for(VClass vclass: vClasses) {
if(rangeVclasses != null) { List<VClass> rangeVclasses = wDaoFact.getVClassDao().getVClassesForProperty(vclass.getURI(),predicateUri);
for(VClass range: rangeVclasses) { if(rangeVclasses != null) {
//a hash will keep a unique list of types and so prevent duplicates for(VClass range: rangeVclasses) {
typesHash.put(range.getURI(), range); //a hash will keep a unique list of types and so prevent duplicates
typesHash.put(range.getURI(), range);
}
} }
} }
} types.addAll(typesHash.values());
types.addAll(typesHash.values()); } else {
log.error("Subject individual was null for");
}
return types; return types;
} }