@@ -189,25 +189,31 @@ protected void addInterfaces(List<Schema> schemas, CodegenModel codegenModel, Ma
189
189
final String schemaName = ref .substring (ref .lastIndexOf ("/" ) + 1 );
190
190
191
191
final CodegenModel model = allModels .get (codegenConfig .toModelName (schemaName ));
192
- this .addInterfaceModel (model , codegenModel );
193
-
194
- boolean subTypeAdded = false ;
195
- if (codegenModel .getSubTypes () != null ) {
196
- subTypeAdded = codegenModel .getSubTypes ().stream ().anyMatch (existingSubType -> existingSubType .classname .equalsIgnoreCase (model .classname ));
197
- }
198
- if (!subTypeAdded ) {
199
- codegenModel .addSubType (model );
200
- }
201
-
202
-
203
- if (codegenModel .getDiscriminator () != null && StringUtils .isNotBlank (codegenModel .getDiscriminator ().getPropertyName ())) {
204
- Optional <CodegenProperty > optionalProperty = model .vars .stream ()
205
- .filter (codegenProperty -> codegenProperty .baseName .equals (codegenModel .getDiscriminator ().getPropertyName ())).findFirst ();
206
-
207
- optionalProperty .ifPresent (codegenProperty -> {
208
- codegenModel .getVendorExtensions ().put ("x-discriminator-type" , codegenProperty .datatypeWithEnum );
209
- codegenModel .getVendorExtensions ().put ("x-discriminator-type-getter" , codegenConfig .toGetter (codegenModel .getDiscriminator ().getPropertyName ()));
210
- });
192
+ if (model != null ) {
193
+ {
194
+ this .addInterfaceModel (model , codegenModel );
195
+
196
+ boolean subTypeAdded = false ;
197
+ if (codegenModel .getSubTypes () != null ) {
198
+ subTypeAdded = codegenModel .getSubTypes ().stream ().anyMatch (existingSubType -> existingSubType .classname .equalsIgnoreCase (model .classname ));
199
+ }
200
+ if (!subTypeAdded ) {
201
+ codegenModel .addSubType (model );
202
+ }
203
+
204
+
205
+ if (codegenModel .getDiscriminator () != null && StringUtils .isNotBlank (codegenModel .getDiscriminator ().getPropertyName ())) {
206
+ Optional <CodegenProperty > optionalProperty = model .vars .stream ()
207
+ .filter (codegenProperty -> codegenProperty .baseName .equals (codegenModel .getDiscriminator ().getPropertyName ())).findFirst ();
208
+
209
+ optionalProperty .ifPresent (codegenProperty -> {
210
+ codegenModel .getVendorExtensions ().put ("x-discriminator-type" , codegenProperty .datatypeWithEnum );
211
+ codegenModel .getVendorExtensions ().put ("x-discriminator-type-getter" , codegenConfig .toGetter (codegenModel .getDiscriminator ().getPropertyName ()));
212
+ });
213
+ }
214
+ }
215
+ }else {
216
+ throw new NullPointerException ("Could not find model for reference: " + ref );
211
217
}
212
218
}
213
219
}
0 commit comments