mirror of
https://github.com/tiennm99/java-design-patterns.git
synced 2026-05-16 04:58:46 +00:00
* #1317 Add Special Case Pattern To focus on pattern itself, I implement DB and maintenance lock by the singleton instance. * #1317 Add special cases unit tests Assert the logger output (ref: https://stackoverflow.com/a/52229629) * #1317 Add README.md Add Special Case Pattern README * #1317 Format: add a new line to end of file Co-authored-by: Subhrodip Mohanta <subhrodipmohanta@gmail.com>
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
package com.iluwatar.specialcase;
|
||||
|
||||
public class ApplicationServicesImpl implements ApplicationServices {
|
||||
|
||||
private DomainServicesImpl domain = new DomainServicesImpl();
|
||||
|
||||
@Override
|
||||
public ReceiptViewModel loggedInUserPurchase(String userName, String itemName) {
|
||||
if (isDownForMaintenance()) {
|
||||
return new DownForMaintenance();
|
||||
}
|
||||
return this.domain.purchase(userName, itemName);
|
||||
}
|
||||
|
||||
private boolean isDownForMaintenance() {
|
||||
return MaintenanceLock.getInstance().isLock();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user