You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ctakes.apache.org by ja...@apache.org on 2017/03/06 02:15:51 UTC

svn commit: r1785583 - /ctakes/trunk/ctakes-lvg/src/main/java/org/apache/ctakes/lvg/ae/LvgSingleton.java

Author: james-masanz
Date: Mon Mar  6 02:15:51 2017
New Revision: 1785583

URL: http://svn.apache.org/viewvc?rev=1785583&view=rev
Log:
CTAKES-418 Update LvgSingleton similar to LvgAnnotator - only extract lvg.properties etc. to /tmp if unable to get absolute path through resource URL. 

Modified:
    ctakes/trunk/ctakes-lvg/src/main/java/org/apache/ctakes/lvg/ae/LvgSingleton.java

Modified: ctakes/trunk/ctakes-lvg/src/main/java/org/apache/ctakes/lvg/ae/LvgSingleton.java
URL: http://svn.apache.org/viewvc/ctakes/trunk/ctakes-lvg/src/main/java/org/apache/ctakes/lvg/ae/LvgSingleton.java?rev=1785583&r1=1785582&r2=1785583&view=diff
==============================================================================
--- ctakes/trunk/ctakes-lvg/src/main/java/org/apache/ctakes/lvg/ae/LvgSingleton.java (original)
+++ ctakes/trunk/ctakes-lvg/src/main/java/org/apache/ctakes/lvg/ae/LvgSingleton.java Mon Mar  6 02:15:51 2017
@@ -1,7 +1,6 @@
 package org.apache.ctakes.lvg.ae;
 
 
-import org.apache.commons.io.FileUtils;
 import org.apache.ctakes.lvg.resource.LvgCmdApiResourceImpl;
 import org.apache.log4j.Logger;
 import org.apache.uima.UimaContext;
@@ -13,7 +12,6 @@ import org.apache.uima.resource.Resource
 
 import java.io.File;
 import java.io.IOException;
-import java.io.InputStream;
 import java.net.URL;
 
 /**
@@ -32,7 +30,6 @@ enum LvgSingleton {
    }
 
    static public final String PROPERTIES_PATH = "org/apache/ctakes/lvg/data/config/lvg.properties";
-   static public final String PROP_FILE_PATH = "/tmp/lvg.properties";
 
    private final Logger LOGGER = Logger.getLogger( "LvgSingleton" );
    private final Object LOCK = new Object();
@@ -71,17 +68,20 @@ enum LvgSingleton {
          if ( _lvgCmdApi != null ) {
             return _lvgCmdApi;
          }
-         final File lvgFile = new File( PROP_FILE_PATH );
-         try ( InputStream propFileStream = LvgSingleton.class.getClassLoader()
-               .getResourceAsStream( PROPERTIES_PATH ) ) {
-            FileUtils.copyInputStreamToFile( propFileStream, lvgFile );
-         } catch ( IOException ioE ) {
-            LOGGER.error( "Error copying temporary InputStream " + PROPERTIES_PATH + " to " + PROP_FILE_PATH );
-            throw ioE;
+         
+         URL url = LvgAnnotator.class.getClassLoader().getResource( PROPERTIES_PATH );
+         if (url!=null) {
+        	 LOGGER.info("URL for lvg.properties =" + url.getFile());
+         } else {
+             String absolutePath = "/tmp/";
+             LOGGER.info("URL==null");
+             LOGGER.info("Unable to find " + PROPERTIES_PATH + ".");
+             LOGGER.info("Copying files and directories to under " + absolutePath);
+             File lvgFile = new File(LvgAnnotator.copyLvgFiles(absolutePath));
+             url = lvgFile.toURI().toURL();
          }
-         final URL propFileUrl = lvgFile.toURI().toURL();
-         _lvgCmdApi
-               = ExternalResourceFactory.createExternalResourceDescription( LvgCmdApiResourceImpl.class, propFileUrl );
+
+         _lvgCmdApi = ExternalResourceFactory.createExternalResourceDescription( LvgCmdApiResourceImpl.class, url );
          return _lvgCmdApi;
       }
    }