Sync Adapter to Java 25: add StripePaymentClassAdapter, README mapping

This commit is contained in:
2026-06-24 14:19:36 +05:30
parent 4b6a02f396
commit 8471913dbd
8 changed files with 60 additions and 56 deletions

View File

@@ -1,25 +1,17 @@
package adapter;
/**
* The Client — uses only the PaymentGateway interface.
* It has no idea whether it's talking to Stripe, PayPal, or Braintree.
* This is the point: the client is completely isolated from the vendor.
*/
public class OrderService {
private final PaymentGateway gateway;
// Receives a PaymentGateway — could be Stripe, PayPal, anything
public OrderService(PaymentGateway gateway) {
this.gateway = gateway;
}
public void processOrder(String orderId, String customerId, double total) {
System.out.printf("%nProcessing order %s for customer %s, total: $%.2f%n",
orderId, customerId, total);
boolean charged = gateway.charge(customerId, total, "USD");
if (charged) {
System.out.println("Payment accepted. Order confirmed.");
String status = gateway.getStatus("ch_" + orderId);