Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright (C) 2015 The Minium Authors
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   * http://www.apache.org/licenses/LICENSE-2.0
   *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package minium.web.config.services;
 
 import java.io.File;
 
 import  org.springframework.beans.factory.DisposableBean;
 import  org.springframework.beans.factory.annotation.Value;
 
 public class DriverServicesProperties implements DisposableBean {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(DriverServicesProperties.class);
 
     @Value("${app.home:.}")
     private File homedir;
 
         if ( == null) {
             File chromedriverExe = findExecutable("chromedriver");
             if (chromedriverExe != null) {
                 .debug("Chrome driver found at {}"chromedriverExe.getAbsolutePath());
                  = new ChromeDriverServiceProperties();
                 .setDriverExecutable(chromedriverExe);
                 .setSilent(true);
             }
         }
         return ;
     }
 
     public void setChrome(ChromeDriverServiceProperties chrome) {
         this. = chrome;
     }
 
         if ( == null) {
             File ieDriverExe = findExecutable("IEDriverServer");
             if (ieDriverExe != null) {
                 .debug("IE driver server found at {}"ieDriverExe.getAbsolutePath());
                  = new InternetExplorerDriverServiceProperties();
                 .setDriverExecutable(ieDriverExe);
             }
         }
         return ;
     }
 
     public void setInternetExplorer(InternetExplorerDriverServiceProperties internetExplorer) {
         this. = internetExplorer;
     }
 
         if ( == null) {
             File phantomjsExe = findExecutable("phantomjs");
             if (phantomjsExe != null) {
                 .debug("PhantomJS found at {}"phantomjsExe.getAbsolutePath());
                  = new PhantomJsDriverServiceProperties();
                 .setDriverExecutable(phantomjsExe);
             }
         }
         return ;
     }
 
     public void setPhantomJs(PhantomJsDriverServiceProperties phamtomJs) {
         this. = phamtomJs;
     }
 
     protected File findExecutable(String exeName) {
         File driversDir = getDriversDir();
         if (driversDir == nullreturn null;
 
         String osSpecificExeName = Platform.getCurrent().is(.) ? exeName + ".exe" : exeName;
         File exeFile = new File(driversDirosSpecificExeName);
 
         return exeFile.exists() && exeFile.isFile() && exeFile.canExecute() ? exeFile : null;
     }
 
     protected File getDriversDir() {
         File driverDir =  == null ? null : new File("drivers");
         return driverDir != null && driverDir.exists() && driverDir.isDirectory() ? driverDir : null;
     }
 
    @Override
    public void destroy() throws Exception {
        if ( != null.destroy();
        if ( != null.destroy();
        if ( != null.destroy();
    }
New to GrepCode? Check out our FAQ X