initial commit
This commit is contained in:
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
target
|
||||
44
pom.xml
Normal file
44
pom.xml
Normal file
@@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<groupId>org.example</groupId>
|
||||
<artifactId>Widerhall</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
|
||||
<properties>
|
||||
<maven.compiler.source>17</maven.compiler.source>
|
||||
<maven.compiler.target>17</maven.compiler.target>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>javax.mail</groupId>
|
||||
<artifactId>javax.mail-api</artifactId>
|
||||
<version>1.6.2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>javax</groupId>
|
||||
<artifactId>javaee-api</artifactId>
|
||||
<version>8.0.1</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>ch.qos.logback</groupId>
|
||||
<artifactId>logback-classic</artifactId>
|
||||
<version>1.3.0-alpha13</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.googlecode.json-simple</groupId>
|
||||
<artifactId>json-simple</artifactId>
|
||||
<version>1.1.1</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
55
src/main/java/de/srsoftware/widerhall/SmtpClient.java
Normal file
55
src/main/java/de/srsoftware/widerhall/SmtpClient.java
Normal file
@@ -0,0 +1,55 @@
|
||||
package de.srsoftware.widerhall;
|
||||
|
||||
import org.json.simple.JSONObject;
|
||||
import org.json.simple.parser.JSONParser;
|
||||
import org.json.simple.parser.ParseException;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import javax.json.stream.JsonParser;
|
||||
import javax.mail.Authenticator;
|
||||
import javax.mail.PasswordAuthentication;
|
||||
import javax.mail.Session;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.util.Properties;
|
||||
|
||||
public class SmtpClient {
|
||||
private static final Logger LOG = LoggerFactory.getLogger(SmtpClient.class);
|
||||
private static final String HOST = "mail.smtp.host";
|
||||
private static final String PORT = "mail.smtp.port";
|
||||
private static final String SOCK = "mail.smtp.socketFactory.port";
|
||||
private static final String CLASS = "mail.smtp.socketFactory.class";
|
||||
private static final String SOCKET_FACTORY = javax.net.ssl.SSLSocketFactory.class.getCanonicalName();
|
||||
private static final String AUTH = "mail.smtp.auth";
|
||||
|
||||
private Session session;
|
||||
|
||||
public void login(String host, int port, String username, String password){
|
||||
Properties props = new Properties();
|
||||
props.put(HOST,host);
|
||||
props.put(PORT,port);
|
||||
props.put(SOCK,port);
|
||||
props.put(AUTH,true);
|
||||
props.put(CLASS,SOCKET_FACTORY);
|
||||
|
||||
Authenticator auth = new Authenticator() {
|
||||
@Override
|
||||
protected PasswordAuthentication getPasswordAuthentication() {
|
||||
return new PasswordAuthentication(username,password);
|
||||
}
|
||||
};
|
||||
|
||||
session = Session.getDefaultInstance(props,auth);
|
||||
LOG.debug("Created new session: {}", session);
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws IOException, ParseException {
|
||||
var parser = new JSONParser();
|
||||
var config = Files.readString(new File("/tmp/config.json").toPath());
|
||||
LOG.debug("config: {}",config);
|
||||
var json = parser.parse(config);
|
||||
LOG.debug("json: {}",json);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user