Subversion Repositories SmartDukaan

Rev

Rev 23929 | Rev 24002 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
23755 amit.gupta 1
package com.smartdukaan.cron;
23723 amit.gupta 2
 
23906 amit.gupta 3
import java.util.Properties;
4
 
23723 amit.gupta 5
import org.apache.logging.log4j.LogManager;
6
import org.apache.logging.log4j.Logger;
23898 amit.gupta 7
import org.springframework.beans.factory.annotation.Autowired;
8
import org.springframework.boot.ApplicationArguments;
9
import org.springframework.boot.ApplicationRunner;
23723 amit.gupta 10
import org.springframework.boot.WebApplicationType;
11
import org.springframework.boot.autoconfigure.SpringBootApplication;
12
import org.springframework.boot.builder.SpringApplicationBuilder;
13
import org.springframework.cache.annotation.EnableCaching;
14
import org.springframework.context.annotation.Bean;
15
import org.springframework.context.annotation.ComponentScan;
23935 amit.gupta 16
import org.springframework.context.annotation.Primary;
23723 amit.gupta 17
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
18
import org.springframework.core.io.ClassPathResource;
23906 amit.gupta 19
import org.springframework.mail.javamail.JavaMailSender;
20
import org.springframework.mail.javamail.JavaMailSenderImpl;
23723 amit.gupta 21
import org.springframework.scheduling.annotation.EnableScheduling;
22
 
23898 amit.gupta 23
import com.smartdukaan.cron.migrations.RunOnceTasks;
23929 amit.gupta 24
import com.smartdukaan.cron.scheduled.ScheduledTasks;
23724 amit.gupta 25
 
23898 amit.gupta 26
 
23723 amit.gupta 27
@SpringBootApplication
28
@EnableCaching
29
@EnableScheduling
23755 amit.gupta 30
@ComponentScan("com.smartdukaan.cron.*, com.spice.profitmandi.common.*")
23898 amit.gupta 31
public class Application implements ApplicationRunner{
23723 amit.gupta 32
 
33
	private static final Logger LOGGER=LogManager.getLogger(Application.class);
34
 
35
	public static void main(String[] args) throws Throwable {
23738 amit.gupta 36
		new SpringApplicationBuilder(Application.class).web(WebApplicationType.NONE).run(args);
23723 amit.gupta 37
	}
38
 
39
	@Bean
23738 amit.gupta 40
	public static PropertySourcesPlaceholderConfigurer propertyConfigurer1() {
23755 amit.gupta 41
		LOGGER.info("Called Configuration");
23723 amit.gupta 42
		PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer =  new PropertySourcesPlaceholderConfigurer();
43
		propertySourcesPlaceholderConfigurer.setLocation(new ClassPathResource("/META-INF/env.properties"));
44
		return propertySourcesPlaceholderConfigurer;
45
	}
23906 amit.gupta 46
 
47
	@Bean(name="mailSender")
23935 amit.gupta 48
	@Primary
49
    public JavaMailSender sendGridMailSender(){
23906 amit.gupta 50
        JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
51
 
52
        //Using gmail
53
        mailSender.setHost("smtp.sendgrid.net");
54
        mailSender.setPort(587);
55
        mailSender.setUsername("shop2020");
56
        mailSender.setPassword("U2/=fP,t");
57
 
58
        Properties javaMailProperties = new Properties();
59
        javaMailProperties.put("mail.smtp.starttls.enable", "false");
60
        javaMailProperties.put("mail.smtp.auth", "true");
61
        javaMailProperties.put("mail.transport.protocol", "smtp");
62
        javaMailProperties.put("mail.debug", "true");//Prints out everything on screen
63
 
64
        mailSender.setJavaMailProperties(javaMailProperties);
65
        return mailSender;
66
    }
23723 amit.gupta 67
 
23935 amit.gupta 68
	@Bean
69
	public JavaMailSender googleMailSender(){
70
		JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
71
		//Using gmail
72
		mailSender.setHost("smtp.gmail.com");
73
		mailSender.setPort(587);
74
		mailSender.setUsername("build@shop2020.in");
75
		mailSender.setPassword("cafe@nes");
76
 
77
		Properties javaMailProperties = new Properties();
78
		javaMailProperties.put("mail.smtp.starttls.enable", "true");
79
		javaMailProperties.put("mail.smtp.auth", "true");
80
		javaMailProperties.put("mail.transport.protocol", "smtp");
81
		javaMailProperties.put("mail.debug", "true");//Prints out everything on screen
82
		mailSender.setJavaMailProperties(javaMailProperties);
83
		return mailSender;
84
	}
85
 
23898 amit.gupta 86
	@Autowired 
87
	private RunOnceTasks runOnceTasks;
23929 amit.gupta 88
 
89
	@Autowired 
90
	private ScheduledTasks scheduledTasks;
23898 amit.gupta 91
	@Override
92
	public void run(ApplicationArguments args) throws Exception {
93
		LOGGER.info("Called run method");
94
		if(args.containsOption("once")) {
23929 amit.gupta 95
			scheduledTasks.sendPartnerInvestmentDetails();
23898 amit.gupta 96
			System.exit(0);
97
		}
98
 
99
	}
100
 
23723 amit.gupta 101
}