Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Moves pipeline to Java 11
  • Loading branch information
anuragagarwal561994 committed Dec 29, 2019
commit 9e804e63c8415c6755fc75c02deaea894dbaab19
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,12 @@ class ConvertToCharArrayHandler implements Handler<String, char[]> {

@Override
public char[] process(String input) {
char[] characters = input.toCharArray();
LOGGER
.info(String.format("Current handler: %s, input is %s of type %s, output is %s, of type %s",
ConvertToCharArrayHandler.class, input, String.class, Arrays
.toString(characters), Character[].class));
var characters = input.toCharArray();
var string = Arrays.toString(characters);
LOGGER.info(
String.format("Current handler: %s, input is %s of type %s, output is %s, of type %s",
ConvertToCharArrayHandler.class, input, String.class, string, Character[].class)
);

return characters;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@

package com.iluwatar.pipeline;

import java.util.function.IntPredicate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand All @@ -36,18 +37,11 @@ class RemoveAlphabetsHandler implements Handler<String, String> {

@Override
public String process(String input) {
StringBuilder inputWithoutAlphabets = new StringBuilder();
var inputWithoutAlphabets = new StringBuilder();
var isAlphabetic = (IntPredicate) Character::isAlphabetic;
input.chars().filter(isAlphabetic.negate()).forEachOrdered(inputWithoutAlphabets::append);

for (int index = 0; index < input.length(); index++) {
char currentCharacter = input.charAt(index);
if (Character.isAlphabetic(currentCharacter)) {
continue;
}

inputWithoutAlphabets.append(currentCharacter);
}

String inputWithoutAlphabetsStr = inputWithoutAlphabets.toString();
var inputWithoutAlphabetsStr = inputWithoutAlphabets.toString();
LOGGER.info(
String.format(
"Current handler: %s, input is %s of type %s, output is %s, of type %s",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@

package com.iluwatar.pipeline;

import java.util.function.IntPredicate;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand All @@ -36,21 +37,17 @@ class RemoveDigitsHandler implements Handler<String, String> {

@Override
public String process(String input) {
StringBuilder inputWithoutDigits = new StringBuilder();

for (int index = 0; index < input.length(); index++) {
char currentCharacter = input.charAt(index);
if (Character.isDigit(currentCharacter)) {
continue;
}

inputWithoutDigits.append(currentCharacter);
}

String inputWithoutDigitsStr = inputWithoutDigits.toString();
LOGGER
.info(String.format("Current handler: %s, input is %s of type %s, output is %s, of type %s",
RemoveDigitsHandler.class, input, String.class, inputWithoutDigitsStr, String.class));
var inputWithoutDigits = new StringBuilder();
var isDigit = (IntPredicate) Character::isDigit;
input.chars().filter(isDigit.negate()).forEachOrdered(inputWithoutDigits::append);

var inputWithoutDigitsStr = inputWithoutDigits.toString();
LOGGER.info(
String.format(
"Current handler: %s, input is %s of type %s, output is %s, of type %s",
RemoveDigitsHandler.class, input, String.class, inputWithoutDigitsStr, String.class
)
);

return inputWithoutDigitsStr;
}
Expand Down
3 changes: 1 addition & 2 deletions pipeline/src/test/java/com/iluwatar/pipeline/AppTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ public class AppTest {

@Test
public void test() {
String[] args = {};
App.main(args);
App.main(new String[]{});
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -23,23 +23,23 @@

package com.iluwatar.pipeline;

import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertArrayEquals;

import org.junit.jupiter.api.Test;

/**
* Test for {@link Pipeline}
*/
public class PipelineTest {

@Test
public void testAddHandlersToPipeline() {
Pipeline<String, char[]> filters = new Pipeline<>(new RemoveAlphabetsHandler())
var filters = new Pipeline<>(new RemoveAlphabetsHandler())
.addHandler(new RemoveDigitsHandler())
.addHandler(new ConvertToCharArrayHandler());

assertArrayEquals(
new char[] {'#', '!', '(', '&', '%', '#', '!'},
new char[]{'#', '!', '(', '&', '%', '#', '!'},
filters.execute("#H!E(L&L0O%THE3R#34E!")
);
}
Expand Down