From 44509a158e9998212971f2a986fff1b55bc42545 Mon Sep 17 00:00:00 2001 From: Gunnar Morling Date: Fri, 7 Nov 2014 23:02:14 +0100 Subject: [PATCH] #108 Simplify error analysis in case null is passed via model include --- .../org/mapstruct/ap/writer/ModelIncludeDirective.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/processor/src/main/java/org/mapstruct/ap/writer/ModelIncludeDirective.java b/processor/src/main/java/org/mapstruct/ap/writer/ModelIncludeDirective.java index 6ca5f1610..40ba21d7d 100644 --- a/processor/src/main/java/org/mapstruct/ap/writer/ModelIncludeDirective.java +++ b/processor/src/main/java/org/mapstruct/ap/writer/ModelIncludeDirective.java @@ -56,7 +56,9 @@ public class ModelIncludeDirective implements TemplateDirectiveModel { DefaultModelElementWriterContext context = createContext( params ); try { - modelElement.write( context, env.getOut() ); + if ( modelElement != null ) { + modelElement.write( context, env.getOut() ); + } } catch ( TemplateException te ) { throw te; @@ -83,13 +85,11 @@ public class ModelIncludeDirective implements TemplateDirectiveModel { BeanModel objectModel = (BeanModel) params.get( "object" ); if ( objectModel == null ) { - throw new IllegalArgumentException( - "Object passed to this directive via the 'object' parameter must not be null" - ); + return null; } if ( !( objectModel.getWrappedObject() instanceof Writable ) ) { - throw new IllegalArgumentException( "Given object isn't a ModelElement:" + objectModel.getWrappedObject() ); + throw new IllegalArgumentException( "Given object isn't a Writable:" + objectModel.getWrappedObject() ); } return (Writable) objectModel.getWrappedObject();