@@ -36,7 +36,11 @@ public SchemaDisplayField(String fieldPath, HollowCollectionSchema parentSchema)
3636 this .fieldName = "element" ;
3737 this .fieldType = FieldType .REFERENCE ;
3838 this .isSearchable = false ;
39- this .referencedType = new SchemaDisplay (parentSchema .getElementTypeState ().getSchema (), fieldPath );
39+ if (parentSchema .getElementTypeState () != null ) {
40+ this .referencedType = new SchemaDisplay (parentSchema .getElementTypeState ().getSchema (), fieldPath );
41+ } else {
42+ this .referencedType = null ;
43+ }
4044 }
4145
4246 public SchemaDisplayField (String fieldPath , HollowMapSchema parentSchema , int fieldNumber ) {
@@ -52,11 +56,18 @@ public SchemaDisplayField(String fieldPath, HollowObjectSchema parentSchema, int
5256 this .fieldName = parentSchema .getFieldName (fieldNumber );
5357 this .fieldType = parentSchema .getFieldType (fieldNumber );
5458 this .isSearchable = isSearchable (parentSchema , fieldNumber );
55- this .referencedType = fieldType == FieldType .REFERENCE ? new SchemaDisplay (parentSchema .getReferencedTypeState (fieldNumber ).getSchema (), fieldPath ) : null ;
59+ if (parentSchema .getReferencedTypeState (fieldNumber ) != null ) {
60+ this .referencedType = fieldType == FieldType .REFERENCE ? new SchemaDisplay (parentSchema .getReferencedTypeState (fieldNumber ).getSchema (), fieldPath ) : null ;
61+ } else {
62+ this .referencedType = null ;
63+ }
5664 }
5765
5866 private boolean isSearchable (HollowObjectSchema schema , int fieldNumber ) {
5967 if (schema .getFieldType (fieldNumber ) == FieldType .REFERENCE ) {
68+ if (schema .getReferencedTypeState (fieldNumber ) == null ) {
69+ return false ;
70+ }
6071 if (schema .getReferencedTypeState (fieldNumber ).getSchema ().getSchemaType () != SchemaType .OBJECT )
6172 return false ;
6273 HollowObjectSchema refObjSchema = (HollowObjectSchema )schema .getReferencedTypeState (fieldNumber ).getSchema ();
0 commit comments