-
The
Adaptee
:
public class CustomOperation {
public int customAdd(final String a, final String b) {
return Integer.valueOf(a) + Integer.valueOf(b);
}
}
-
The
Adapter
:
public class Operation {
private CustomOperation adaptee;
Operation(final CustomOperation adaptee) {
this.adaptee = adaptee;
}
public int add(final int a, final int b) {
return adaptee.customAdd(String.valueOf(a), String.valueOf(b));
}
}
-
A simple class to test the
Adapter
design pattern:
public class AdapterPatternTest {
public static void main(String[] args) {
final CustomOperation adaptee = new CustomOperation();
final Operation adapter = new Operation(adaptee);
System.out.println(adapter.add(2, 3));
}
}