Sync Integ to Master
[sdc.git] / asdctool / src / main / java / org / openecomp / sdc / asdctool / main / ArtifactValidatorTool.java
1 package org.openecomp.sdc.asdctool.main;
2
3 import org.openecomp.sdc.asdctool.impl.validator.ArtifactToolBL;
4 import org.openecomp.sdc.asdctool.impl.validator.config.ValidationConfigManager;
5 import org.openecomp.sdc.asdctool.impl.validator.config.ValidationToolConfiguration;
6 import org.openecomp.sdc.asdctool.impl.validator.utils.ReportManager;
7 import org.openecomp.sdc.be.config.ConfigurationManager;
8 import org.openecomp.sdc.common.api.ConfigurationSource;
9 import org.openecomp.sdc.common.impl.ExternalConfiguration;
10 import org.openecomp.sdc.common.impl.FSConfigurationSource;
11 import org.slf4j.Logger;
12 import org.slf4j.LoggerFactory;
13 import org.springframework.context.annotation.AnnotationConfigApplicationContext;
14
15 public class ArtifactValidatorTool {
16         private static Logger log = LoggerFactory.getLogger(ValidationTool.class.getName());
17         
18         public static void main(String[] args) throws Exception {
19
20         String outputPath = args[0];
21         ValidationConfigManager.setOutputFullFilePath(outputPath);
22         ValidationConfigManager.setCsvReportFilePath(outputPath);
23         
24         String appConfigDir = args[1];
25         AnnotationConfigApplicationContext context = initContext(appConfigDir);
26         ArtifactToolBL validationToolBL = context.getBean(ArtifactToolBL.class);
27
28         System.out.println("Start ArtifactValidation Tool");
29         Boolean result = validationToolBL.validateAll();
30        // ReportManager.reportEndOfToolRun();
31         if (result) {
32             System.out.println("ArtifactValidation finished successfully");
33             System.exit(0);
34         } else {
35             System.out.println("ArtifactValidation finished with warnings");
36             System.exit(2);
37         }
38         }
39         
40         private static AnnotationConfigApplicationContext initContext(String appConfigDir) {
41                 ConfigurationSource configurationSource = new FSConfigurationSource(ExternalConfiguration.getChangeListener(), appConfigDir);
42                 ConfigurationManager configurationManager = new ConfigurationManager(configurationSource);
43                 AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(ValidationToolConfiguration.class);
44                 return context;
45         }
46
47 }