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); + } + +}