MISC: VERRARI: Added NPE check. 68/12968/2
authorTaeyoung Son <taeyoung2.son@samsung.com>
Wed, 27 Nov 2013 04:29:26 +0000 (13:29 +0900)
committerTaeyoung Son <taeyoung2.son@samsung.com>
Wed, 27 Nov 2013 05:35:12 +0000 (14:35 +0900)
Description (Issue: N_SE-12345)

Change-Id: I8f1e3c3bf39df7abd4b880d41d772f261892167b
Signed-off-by: Taeyoung Son <taeyoung2.son@samsung.com>
org.tizen.common.verrari.realm/src/org/tizen/common/verrari/template/DirectoryTemplate.java
org.tizen.common.verrari.realm/src/org/tizen/common/verrari/template/StandardTemplate.java

index d6961f5..353a66b 100644 (file)
@@ -60,6 +60,7 @@ import org.tizen.common.util.StringUtil;
 import org.tizen.common.verrari.IModelProvider;
 import org.tizen.common.verrari.ITemplate;
 import org.tizen.common.verrari.ITemplateEngine;
+import org.tizen.common.verrari.ITemplateProvider;
 import org.tizen.common.verrari.Storage;
 import org.tizen.common.verrari.Template;
 import org.tizen.common.verrari.TemplateException;
@@ -408,29 +409,31 @@ extends CommonTemplate
         try {
             pretemplate( models );
 
-            // copy
-            for ( final String name : this.copyNames )
-            {
-                logger.trace( "Copy[{}] start", name );
-                final String target = nvl( this.mapper.map( (OSChecker.isWindows() ? name.replace( System.getProperty("file.separator"), "/" ) : name) ), name );
-
-                ITemplate template = engine.getTemplateProvider().getTemplate( name );
-                if ( template == null ) {
-                    continue;
-                }
-
-                InputStream in = null;
-                OutputStream out = null;
-                try
+            ITemplateProvider provider = engine.getTemplateProvider();
+            if ( provider != null ) {
+                // copy
+                for ( final String name : this.copyNames )
                 {
-                    in = template.open();
-                    out = storage.getTarget( target );
-                    ExecutionContext.getCurrentContext().getPrompter().notify( target + " created" );
-                    IOUtil.redirect( in , out );
-                }
-                finally
-                {
-                    tryClose( in, out );
+                    logger.trace( "Copy[{}] start", name );
+                    final String target = nvl( this.mapper.map( (OSChecker.isWindows() ? name.replace( System.getProperty("file.separator"), "/" ) : name) ), name );
+                    ITemplate template = provider.getTemplate( name );
+                    if ( template == null ) {
+                        continue;
+                    }
+
+                    InputStream in = null;
+                    OutputStream out = null;
+                    try
+                    {
+                        in = template.open();
+                        out = storage.getTarget( target );
+                        ExecutionContext.getCurrentContext().getPrompter().notify( target + " created" );
+                        IOUtil.redirect( in , out );
+                    }
+                    finally
+                    {
+                        tryClose( in, out );
+                    }
                 }
             }
 
index b5791c0..87ed7da 100755 (executable)
@@ -54,6 +54,7 @@ import org.tizen.common.util.IOUtil;
 import org.tizen.common.util.StringUtil;\r
 import org.tizen.common.verrari.IModelProvider;\r
 import org.tizen.common.verrari.ITemplate;\r
+import org.tizen.common.verrari.ITemplateProvider;\r
 import org.tizen.common.verrari.Storage;\r
 import org.tizen.common.verrari.Template;\r
 import org.tizen.common.verrari.TemplateException;\r
@@ -228,27 +229,30 @@ extends CommonTemplate
         context.set( this );\r
         try\r
         {\r
-            for ( final String name : this.copyNames )\r
-            {\r
-                logger.trace( "Copy[{}] start", name );\r
-                final String target = nvl( this.mapper.map( name ), name );\r
+            ITemplateProvider provider = engine.getTemplateProvider();\r
+            if ( provider != null ) {\r
+                for ( final String name : this.copyNames )\r
+                {\r
+                    logger.trace( "Copy[{}] start", name );\r
+                    final String target = nvl( this.mapper.map( name ), name );\r
 \r
-                InputStream in = null;\r
-                OutputStream out = null;\r
+                    InputStream in = null;\r
+                    OutputStream out = null;\r
 \r
-                try\r
-                {\r
-                    ITemplate template = engine.getTemplateProvider().getTemplate( name );\r
-                    if ( template != null ) {\r
-                        in = template.open();\r
-                        out = storage.getTarget( target );\r
-                        ExecutionContext.getCurrentContext().getPrompter().notify( target + " created" );\r
-                        IOUtil.redirect( in , out );\r
+                    try\r
+                    {\r
+                        ITemplate template = provider.getTemplate( name );\r
+                        if ( template != null ) {\r
+                            in = template.open();\r
+                            out = storage.getTarget( target );\r
+                            ExecutionContext.getCurrentContext().getPrompter().notify( target + " created" );\r
+                            IOUtil.redirect( in , out );\r
+                        }\r
+                    }\r
+                    finally\r
+                    {\r
+                        tryClose( in, out );\r
                     }\r
-                }\r
-                finally\r
-                {\r
-                    tryClose( in, out );\r
                 }\r
             }\r
             for ( final String name : this.templateNames )\r