mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-23 12:25:18 +00:00
deps: Refactor dependencies (#3224)
* remove spring dep move junit, logging, mockito under dep mgmt * upgrade anti-corruption-layer deps * async method invocation * balking, bloc * bridge to bytecode * caching * callback - cqrs * component - health check * hexagonal - metadata mapping * rest of the patterns * remove checkstyle, take spotless into use
This commit is contained in:
@@ -46,16 +46,15 @@ public class App {
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
|
||||
//Create 3 different units
|
||||
// Create 3 different units
|
||||
var soldierUnit = new SoldierUnit("SoldierUnit1");
|
||||
var sergeantUnit = new SergeantUnit("SergeantUnit1");
|
||||
var commanderUnit = new CommanderUnit("CommanderUnit1");
|
||||
|
||||
//check for each unit to have an extension
|
||||
// check for each unit to have an extension
|
||||
checkExtensionsForUnit(soldierUnit);
|
||||
checkExtensionsForUnit(sergeantUnit);
|
||||
checkExtensionsForUnit(commanderUnit);
|
||||
|
||||
}
|
||||
|
||||
private static void checkExtensionsForUnit(Unit unit) {
|
||||
|
||||
@@ -24,9 +24,7 @@
|
||||
*/
|
||||
package abstractextensions;
|
||||
|
||||
/**
|
||||
* Interface with their method.
|
||||
*/
|
||||
/** Interface with their method. */
|
||||
public interface CommanderExtension extends UnitExtension {
|
||||
|
||||
void commanderReady();
|
||||
|
||||
@@ -24,9 +24,7 @@
|
||||
*/
|
||||
package abstractextensions;
|
||||
|
||||
/**
|
||||
* Interface with their method.
|
||||
*/
|
||||
/** Interface with their method. */
|
||||
public interface SergeantExtension extends UnitExtension {
|
||||
|
||||
void sergeantReady();
|
||||
|
||||
@@ -24,9 +24,7 @@
|
||||
*/
|
||||
package abstractextensions;
|
||||
|
||||
/**
|
||||
* Interface with their method.
|
||||
*/
|
||||
/** Interface with their method. */
|
||||
public interface SoldierExtension extends UnitExtension {
|
||||
void soldierReady();
|
||||
}
|
||||
|
||||
@@ -24,8 +24,5 @@
|
||||
*/
|
||||
package abstractextensions;
|
||||
|
||||
/**
|
||||
* Other Extensions will extend this interface.
|
||||
*/
|
||||
public interface UnitExtension {
|
||||
}
|
||||
/** Other Extensions will extend this interface. */
|
||||
public interface UnitExtension {}
|
||||
|
||||
@@ -25,14 +25,10 @@
|
||||
package concreteextensions;
|
||||
|
||||
import abstractextensions.CommanderExtension;
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import units.CommanderUnit;
|
||||
|
||||
/**
|
||||
* Class defining Commander.
|
||||
*/
|
||||
/** Class defining Commander. */
|
||||
@Slf4j
|
||||
public record Commander(CommanderUnit unit) implements CommanderExtension {
|
||||
|
||||
@@ -40,5 +36,4 @@ public record Commander(CommanderUnit unit) implements CommanderExtension {
|
||||
public void commanderReady() {
|
||||
LOGGER.info("[Commander] " + unit.getName() + " is ready!");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -25,14 +25,10 @@
|
||||
package concreteextensions;
|
||||
|
||||
import abstractextensions.SergeantExtension;
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import units.SergeantUnit;
|
||||
|
||||
/**
|
||||
* Class defining Sergeant.
|
||||
*/
|
||||
/** Class defining Sergeant. */
|
||||
@Slf4j
|
||||
public record Sergeant(SergeantUnit unit) implements SergeantExtension {
|
||||
|
||||
@@ -40,5 +36,4 @@ public record Sergeant(SergeantUnit unit) implements SergeantExtension {
|
||||
public void sergeantReady() {
|
||||
LOGGER.info("[Sergeant] " + unit.getName() + " is ready!");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -25,14 +25,10 @@
|
||||
package concreteextensions;
|
||||
|
||||
import abstractextensions.SoldierExtension;
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import units.SoldierUnit;
|
||||
|
||||
/**
|
||||
* Class defining Soldier.
|
||||
*/
|
||||
/** Class defining Soldier. */
|
||||
@Slf4j
|
||||
public record Soldier(SoldierUnit unit) implements SoldierExtension {
|
||||
|
||||
@@ -40,5 +36,4 @@ public record Soldier(SoldierUnit unit) implements SoldierExtension {
|
||||
public void soldierReady() {
|
||||
LOGGER.info("[Soldier] " + unit.getName() + " is ready!");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -28,9 +28,7 @@ import abstractextensions.UnitExtension;
|
||||
import concreteextensions.Commander;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* Class defining CommanderUnit.
|
||||
*/
|
||||
/** Class defining CommanderUnit. */
|
||||
public class CommanderUnit extends Unit {
|
||||
|
||||
public CommanderUnit(String name) {
|
||||
|
||||
@@ -28,9 +28,7 @@ import abstractextensions.UnitExtension;
|
||||
import concreteextensions.Sergeant;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* Class defining SergeantUnit.
|
||||
*/
|
||||
/** Class defining SergeantUnit. */
|
||||
public class SergeantUnit extends Unit {
|
||||
|
||||
public SergeantUnit(String name) {
|
||||
|
||||
@@ -28,9 +28,7 @@ import abstractextensions.UnitExtension;
|
||||
import concreteextensions.Soldier;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* Class defining SoldierUnit.
|
||||
*/
|
||||
/** Class defining SoldierUnit. */
|
||||
public class SoldierUnit extends Unit {
|
||||
|
||||
public SoldierUnit(String name) {
|
||||
|
||||
@@ -28,9 +28,7 @@ import abstractextensions.UnitExtension;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* Class defining Unit, other units will extend this class.
|
||||
*/
|
||||
/** Class defining Unit, other units will extend this class. */
|
||||
@Setter
|
||||
@Getter
|
||||
public class Unit {
|
||||
|
||||
@@ -22,18 +22,15 @@
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
|
||||
|
||||
/**
|
||||
* Created by Srdjan on 03-May-17.
|
||||
*/
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/** Created by Srdjan on 03-May-17. */
|
||||
class AppTest {
|
||||
|
||||
@Test
|
||||
void shouldExecuteApplicationWithoutException() {
|
||||
assertDoesNotThrow(() -> App.main(new String[]{}));
|
||||
assertDoesNotThrow(() -> App.main(new String[] {}));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,20 +24,18 @@
|
||||
*/
|
||||
package concreteextensions;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
import ch.qos.logback.classic.Level;
|
||||
import ch.qos.logback.classic.Logger;
|
||||
import ch.qos.logback.classic.spi.ILoggingEvent;
|
||||
import ch.qos.logback.core.read.ListAppender;
|
||||
import java.util.List;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import units.CommanderUnit;
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
/**
|
||||
* CommanderTest
|
||||
*/
|
||||
/** CommanderTest */
|
||||
class CommanderTest {
|
||||
|
||||
@Test
|
||||
@@ -54,9 +52,8 @@ class CommanderTest {
|
||||
commander.commanderReady();
|
||||
|
||||
List<ILoggingEvent> logsList = listAppender.list;
|
||||
assertEquals("[Commander] " + commander.unit().getName() + " is ready!", logsList.get(0)
|
||||
.getMessage());
|
||||
assertEquals(Level.INFO, logsList.get(0)
|
||||
.getLevel());
|
||||
assertEquals(
|
||||
"[Commander] " + commander.unit().getName() + " is ready!", logsList.get(0).getMessage());
|
||||
assertEquals(Level.INFO, logsList.get(0).getLevel());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,20 +24,18 @@
|
||||
*/
|
||||
package concreteextensions;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
import ch.qos.logback.classic.Level;
|
||||
import ch.qos.logback.classic.Logger;
|
||||
import ch.qos.logback.classic.spi.ILoggingEvent;
|
||||
import ch.qos.logback.core.read.ListAppender;
|
||||
import java.util.List;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import units.SergeantUnit;
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
/**
|
||||
* Created by Srdjan on 03-May-17.
|
||||
*/
|
||||
/** Created by Srdjan on 03-May-17. */
|
||||
class SergeantTest {
|
||||
|
||||
@Test
|
||||
@@ -54,10 +52,8 @@ class SergeantTest {
|
||||
sergeant.sergeantReady();
|
||||
|
||||
List<ILoggingEvent> logsList = listAppender.list;
|
||||
assertEquals("[Sergeant] " + sergeant.unit().getName() + " is ready!", logsList.get(0)
|
||||
.getMessage());
|
||||
assertEquals(Level.INFO, logsList.get(0)
|
||||
.getLevel());
|
||||
assertEquals(
|
||||
"[Sergeant] " + sergeant.unit().getName() + " is ready!", logsList.get(0).getMessage());
|
||||
assertEquals(Level.INFO, logsList.get(0).getLevel());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,21 +24,18 @@
|
||||
*/
|
||||
package concreteextensions;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
import ch.qos.logback.classic.Level;
|
||||
import ch.qos.logback.classic.Logger;
|
||||
import ch.qos.logback.classic.spi.ILoggingEvent;
|
||||
import ch.qos.logback.core.read.ListAppender;
|
||||
import java.util.List;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import units.SoldierUnit;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||
|
||||
/**
|
||||
* Created by Srdjan on 03-May-17.
|
||||
*/
|
||||
/** Created by Srdjan on 03-May-17. */
|
||||
class SoldierTest {
|
||||
|
||||
@Test
|
||||
@@ -55,10 +52,8 @@ class SoldierTest {
|
||||
soldier.soldierReady();
|
||||
|
||||
List<ILoggingEvent> logsList = listAppender.list;
|
||||
assertEquals("[Soldier] " + soldier.unit().getName() + " is ready!", logsList.get(0)
|
||||
.getMessage());
|
||||
assertEquals(Level.INFO, logsList.get(0)
|
||||
.getLevel());
|
||||
assertEquals(
|
||||
"[Soldier] " + soldier.unit().getName() + " is ready!", logsList.get(0).getMessage());
|
||||
assertEquals(Level.INFO, logsList.get(0).getLevel());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,9 +29,7 @@ import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/**
|
||||
* Created by Srdjan on 03-May-17.
|
||||
*/
|
||||
/** Created by Srdjan on 03-May-17. */
|
||||
class CommanderUnitTest {
|
||||
|
||||
@Test
|
||||
@@ -42,5 +40,4 @@ class CommanderUnitTest {
|
||||
assertNull(unit.getUnitExtension("SergeantExtension"));
|
||||
assertNotNull(unit.getUnitExtension("CommanderExtension"));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,9 +29,7 @@ import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/**
|
||||
* Created by Srdjan on 03-May-17.
|
||||
*/
|
||||
/** Created by Srdjan on 03-May-17. */
|
||||
class SergeantUnitTest {
|
||||
|
||||
@Test
|
||||
@@ -42,5 +40,4 @@ class SergeantUnitTest {
|
||||
assertNotNull(unit.getUnitExtension("SergeantExtension"));
|
||||
assertNull(unit.getUnitExtension("CommanderExtension"));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,9 +29,7 @@ import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/**
|
||||
* Created by Srdjan on 03-May-17.
|
||||
*/
|
||||
/** Created by Srdjan on 03-May-17. */
|
||||
class SoldierUnitTest {
|
||||
|
||||
@Test
|
||||
@@ -42,5 +40,4 @@ class SoldierUnitTest {
|
||||
assertNull(unit.getUnitExtension("SergeantExtension"));
|
||||
assertNull(unit.getUnitExtension("CommanderExtension"));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,9 +29,7 @@ import static org.junit.jupiter.api.Assertions.assertNull;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
/**
|
||||
* Created by Srdjan on 03-May-17.
|
||||
*/
|
||||
/** Created by Srdjan on 03-May-17. */
|
||||
class UnitTest {
|
||||
|
||||
@Test
|
||||
@@ -44,11 +42,9 @@ class UnitTest {
|
||||
unit.setName(newName);
|
||||
assertEquals(newName, unit.getName());
|
||||
|
||||
|
||||
assertNull(unit.getUnitExtension(""));
|
||||
assertNull(unit.getUnitExtension("SoldierExtension"));
|
||||
assertNull(unit.getUnitExtension("SergeantExtension"));
|
||||
assertNull(unit.getUnitExtension("CommanderExtension"));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user