From ca16de580ab5a7d175b2fd2476e696e2470991c0 Mon Sep 17 00:00:00 2001 From: zaien24 Date: Wed, 26 Aug 2020 19:45:36 +0900 Subject: [PATCH] =?UTF-8?q?AOP=20=ED=94=84=EB=A1=9D=EC=8B=9C=20=ED=8C=A8?= =?UTF-8?q?=ED=84=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../samples/petclinic/proxy/CashPerf.java | 18 ++++++++++++++++++ .../samples/petclinic/proxy/CreditCard.java | 14 -------------- .../samples/petclinic/proxy/Store.java | 4 ++-- .../samples/petclinic/proxy/StoreTest.java | 16 ++++++++++++++++ 4 files changed, 36 insertions(+), 16 deletions(-) create mode 100644 src/main/java/org/springframework/samples/petclinic/proxy/CashPerf.java delete mode 100644 src/main/java/org/springframework/samples/petclinic/proxy/CreditCard.java create mode 100644 src/test/java/org/springframework/samples/petclinic/proxy/StoreTest.java diff --git a/src/main/java/org/springframework/samples/petclinic/proxy/CashPerf.java b/src/main/java/org/springframework/samples/petclinic/proxy/CashPerf.java new file mode 100644 index 000000000..d8565f89c --- /dev/null +++ b/src/main/java/org/springframework/samples/petclinic/proxy/CashPerf.java @@ -0,0 +1,18 @@ +package org.springframework.samples.petclinic.proxy; + +import org.springframework.util.StopWatch; + +public class CashPerf implements Payment { + Payment cash = new Cash(); + + @Override + public void pay(int amount) { + StopWatch stopWatch = new StopWatch(); + stopWatch.start(); + + cash.pay(amount); + + stopWatch.stop(); + System.out.println(stopWatch.prettyPrint()); + } +} diff --git a/src/main/java/org/springframework/samples/petclinic/proxy/CreditCard.java b/src/main/java/org/springframework/samples/petclinic/proxy/CreditCard.java deleted file mode 100644 index 1f2798ee8..000000000 --- a/src/main/java/org/springframework/samples/petclinic/proxy/CreditCard.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.springframework.samples.petclinic.proxy; - -public class CreditCard implements Payment { - Payment cash = new Cash(); - - @Override - public void pay(int amount) { - if (amount > 100) { - System.out.println(amount + " ์‹ ์šฉ ์นด๋“œ"); - } else { - cash.pay(amount); - } - } -} diff --git a/src/main/java/org/springframework/samples/petclinic/proxy/Store.java b/src/main/java/org/springframework/samples/petclinic/proxy/Store.java index aa5600ac8..2600230ce 100644 --- a/src/main/java/org/springframework/samples/petclinic/proxy/Store.java +++ b/src/main/java/org/springframework/samples/petclinic/proxy/Store.java @@ -8,7 +8,7 @@ public class Store { this.payment = payment; } - public void buySomething() { - payment.pay(100); + public void buySomething(int amount) { + payment.pay(amount); } } diff --git a/src/test/java/org/springframework/samples/petclinic/proxy/StoreTest.java b/src/test/java/org/springframework/samples/petclinic/proxy/StoreTest.java new file mode 100644 index 000000000..f2e3b6bb3 --- /dev/null +++ b/src/test/java/org/springframework/samples/petclinic/proxy/StoreTest.java @@ -0,0 +1,16 @@ +package org.springframework.samples.petclinic.proxy; + +import org.junit.Test; + +import static org.junit.Assert.*; + +public class StoreTest { + + @Test + public void testPay() { + Payment cashPerf = new CashPerf(); + Store store = new Store(cashPerf); + store.buySomething(100); + } + +}