Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package patterns.behavioral.command;
- import java.io.IOException;
- import java.nio.charset.StandardCharsets;
- import java.nio.file.Files;
- import java.nio.file.Path;
- import java.nio.file.Paths;
- import java.util.*;
- import java.util.function.Function;
- import java.util.function.Predicate;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- import java.util.stream.Collectors;
- import static java.util.Arrays.asList;
- public class CommandTestDrive {
- public static void main(String[] args) throws IOException {
- Pattern pattern = Pattern.compile("java:global.ejb.[\\w]*");
- List<String> sourceList = new ArrayList<>();
- List<String> finalList = new ArrayList<>();
- List<String> resultList = new ArrayList<>();
- Set<String> set = new HashSet<>();
- Path[] pathToSource = {Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\integration\\services.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\integration\\jboss-web.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\integration\\target\\services.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\integration\\target\\jboss-web.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\service\\jboss-ejb3.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\service\\oboz-ejb-context.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\service\\resources\\oboz-service-context.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\service\\target\\jboss-ejb3.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\service\\target\\oboz-ejb-context.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\service\\target\\oboz-service-context.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\validation\\validationContext.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\validation\\target\\validationContext.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\web\\applicationContext.xml"),
- Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\web\\target\\applicationContext.xml"),
- };
- Path pathToFinal = Paths.get("C:\\Users\\rNazarenkov\\Desktop\\regex\\ejbLookup.xml");
- sourceList = findEJB(pathToSource, sourceList, pattern);
- finalList = findEJB(pathToFinal, finalList, pattern);
- sourceList = substringList(sourceList, pattern);
- finalList = substringList(finalList, pattern);
- Boolean isUnique = true;
- for (int i = 0; i < sourceList.size(); i++) {
- for (int l = 0; l < finalList.size(); l++) {
- if (sourceList.get(i).equals(finalList.get(l))) {
- isUnique = false;
- }
- }
- if (isUnique == true) {
- resultList.add(sourceList.get(i));
- } else {
- isUnique = true;
- }
- }
- resultList = resultList.stream().distinct().collect(Collectors.toList());
- System.out.println(resultList.size());
- resultList.stream().forEach(x -> System.out.println(x));
- }
- public static List<String> substringList(List<String> list, Pattern pattern) {
- Matcher matcher = null;
- List<String> arrayList = new ArrayList<>(list);
- for (int i = 0; i < arrayList.size(); i++) {
- matcher = pattern.matcher(arrayList.get(i));
- if (matcher.find()) {
- arrayList.set(i, matcher.group());
- }
- }
- return arrayList;
- }
- public static List<String> findEJB(Path[] path, List<String> list, Pattern pattern) throws IOException {
- List<String> ejbList = new ArrayList<>(list);
- for (int i = 0; i < path.length; i++) {
- Files.lines(path[i], StandardCharsets.UTF_8)
- .filter(pattern.asPredicate())
- .forEach(y -> ejbList.add(y));
- }
- return ejbList;
- }
- public static List<String> findEJB(Path path, List<String> list, Pattern pattern) throws IOException {
- List<String> ejbList = new ArrayList<>(list);
- Files.lines(path, StandardCharsets.UTF_8)
- .filter(pattern.asPredicate())
- .forEach(y -> ejbList.add(y));
- return ejbList;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement