[BAEL-15993] - Move articles out of core-java pt 3
This commit is contained in:
@@ -1,29 +0,0 @@
|
||||
package com.baeldung.abstractclasses.application;
|
||||
|
||||
import com.baeldung.abstractclasses.filereaders.BaseFileReader;
|
||||
import com.baeldung.abstractclasses.filereaders.LowercaseFileReader;
|
||||
import com.baeldung.abstractclasses.filereaders.UppercaseFileReader;
|
||||
import java.io.IOException;
|
||||
import java.net.URISyntaxException;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
|
||||
public class Application {
|
||||
|
||||
public static void main(String[] args) throws IOException, URISyntaxException {
|
||||
|
||||
Application application = new Application();
|
||||
Path path = application.getPathFromResourcesFile("files/test.txt");
|
||||
BaseFileReader lowercaseFileReader = new LowercaseFileReader(path);
|
||||
lowercaseFileReader.readFile().forEach(line -> System.out.println(line));
|
||||
|
||||
BaseFileReader uppercaseFileReader = new UppercaseFileReader(path);
|
||||
uppercaseFileReader.readFile().forEach(line -> System.out.println(line));
|
||||
|
||||
}
|
||||
|
||||
private Path getPathFromResourcesFile(String filePath) throws URISyntaxException {
|
||||
return Paths.get(getClass().getClassLoader().getResource(filePath).toURI());
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
package com.baeldung.abstractclasses.filereaders;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public abstract class BaseFileReader {
|
||||
|
||||
protected Path filePath;
|
||||
|
||||
protected BaseFileReader(Path filePath) {
|
||||
this.filePath = filePath;
|
||||
}
|
||||
|
||||
public Path getFilePath() {
|
||||
return filePath;
|
||||
}
|
||||
|
||||
public List<String> readFile() throws IOException {
|
||||
return Files.lines(filePath)
|
||||
.map(this::mapFileLine).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
protected abstract String mapFileLine(String line);
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
package com.baeldung.abstractclasses.filereaders;
|
||||
|
||||
import java.nio.file.Path;
|
||||
|
||||
public class LowercaseFileReader extends BaseFileReader {
|
||||
|
||||
public LowercaseFileReader(Path filePath) {
|
||||
super(filePath);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String mapFileLine(String line) {
|
||||
return line.toLowerCase();
|
||||
}
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
package com.baeldung.abstractclasses.filereaders;
|
||||
|
||||
import java.nio.file.Path;
|
||||
|
||||
public class UppercaseFileReader extends BaseFileReader {
|
||||
|
||||
public UppercaseFileReader(Path filePath) {
|
||||
super(filePath);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String mapFileLine(String line) {
|
||||
return line.toUpperCase();
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
package com.baeldung.basicsyntax;
|
||||
|
||||
public class SimpleAddition {
|
||||
|
||||
public static void main(String[] args) {
|
||||
int a = 10;
|
||||
int b = 5;
|
||||
double c = a + b;
|
||||
System.out.println( a + " + " + b + " = " + c);
|
||||
}
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
package com.baeldung.jar;
|
||||
|
||||
public class JarExample {
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println("Hello Baeldung Reader!");
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
Main-Class: com.baeldung.jar.JarExample
|
||||
@@ -1,8 +0,0 @@
|
||||
package com.baeldung.manifest;
|
||||
|
||||
public class AppExample {
|
||||
|
||||
public static void main(String[] args){
|
||||
System.out.println("AppExample executed!");
|
||||
}
|
||||
}
|
||||
@@ -1,83 +0,0 @@
|
||||
package com.baeldung.manifest;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.BufferedWriter;
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
|
||||
public class ExecuteJarFile {
|
||||
|
||||
private static final String DELIMITER = " ";
|
||||
private static final String WORK_PATH = "src/main/java/com/baeldung/manifest";
|
||||
private static final String MANIFEST_MF_PATH = WORK_PATH + "/MANIFEST.MF";
|
||||
private static final String MAIN_MANIFEST_ATTRIBUTE = "Main-Class: com.baeldung.manifest.AppExample";
|
||||
|
||||
private static final String COMPILE_COMMAND = "javac -d . AppExample.java";
|
||||
private static final String CREATE_JAR_WITHOUT_MF_ATT_COMMAND = "jar cvf example.jar com/baeldung/manifest/AppExample.class";
|
||||
private static final String CREATE_JAR_WITH_MF_ATT_COMMAND = "jar cvmf MANIFEST.MF example.jar com/baeldung/manifest/AppExample.class";
|
||||
private static final String EXECUTE_JAR_COMMAND = "java -jar example.jar";
|
||||
|
||||
public static void main(String[] args) {
|
||||
System.out.println(executeJarWithoutManifestAttribute());
|
||||
System.out.println(executeJarWithManifestAttribute());
|
||||
}
|
||||
|
||||
public static String executeJarWithoutManifestAttribute() {
|
||||
return executeJar(CREATE_JAR_WITHOUT_MF_ATT_COMMAND);
|
||||
}
|
||||
|
||||
public static String executeJarWithManifestAttribute() {
|
||||
createManifestFile();
|
||||
return executeJar(CREATE_JAR_WITH_MF_ATT_COMMAND);
|
||||
}
|
||||
|
||||
private static void createManifestFile() {
|
||||
BufferedWriter writer;
|
||||
try {
|
||||
writer = new BufferedWriter(new FileWriter(MANIFEST_MF_PATH));
|
||||
writer.write(MAIN_MANIFEST_ATTRIBUTE);
|
||||
writer.newLine();
|
||||
writer.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
private static String executeJar(String createJarCommand) {
|
||||
executeCommand(COMPILE_COMMAND);
|
||||
executeCommand(createJarCommand);
|
||||
return executeCommand(EXECUTE_JAR_COMMAND);
|
||||
}
|
||||
|
||||
private static String executeCommand(String command) {
|
||||
String output = null;
|
||||
try {
|
||||
output = collectOutput(runProcess(command));
|
||||
} catch (Exception ex) {
|
||||
System.out.println(ex);
|
||||
}
|
||||
return output;
|
||||
}
|
||||
|
||||
private static String collectOutput(Process process) throws IOException {
|
||||
StringBuffer output = new StringBuffer();
|
||||
BufferedReader outputReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
|
||||
String line = "";
|
||||
while ((line = outputReader.readLine()) != null) {
|
||||
output.append(line + "\n");
|
||||
}
|
||||
return output.toString();
|
||||
}
|
||||
|
||||
private static Process runProcess(String command) throws IOException, InterruptedException {
|
||||
ProcessBuilder builder = new ProcessBuilder(command.split(DELIMITER));
|
||||
builder.directory(new File(WORK_PATH).getAbsoluteFile());
|
||||
builder.redirectErrorStream(true);
|
||||
Process process = builder.start();
|
||||
process.waitFor();
|
||||
return process;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
Main-Class: com.baeldung.manifest.AppExample
|
||||
Reference in New Issue
Block a user