Skip to content

Commit 2898f1e

Browse files
author
chrish
committed
Refactoring DecoratorPattern.
1 parent da4c0d0 commit 2898f1e

7 files changed

Lines changed: 33 additions & 5 deletions

File tree

StructuralDesignPattern/DecoratorPattern/Java/DecoratorPatternDemo/EmailSender.java renamed to Structural/DecoratorPattern/src/io/csie/chris/EmailSender.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
1+
package io.csie.chris;
2+
3+
import io.csie.chris.decorator.ExternalEmailDecorator;
4+
import io.csie.chris.decorator.SecureEmailDecorator;
5+
import io.csie.chris.email.Email;
6+
17
public class EmailSender {
8+
29
public static void main(String args[]) {
10+
311
Email email = new Email("This an e-mail!");
412
System.out.println(email.getContents());
513

StructuralDesignPattern/DecoratorPattern/Java/DecoratorPatternDemo/EmailDecorator.java renamed to Structural/DecoratorPattern/src/io/csie/chris/decorator/EmailDecorator.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
package io.csie.chris.decorator;
2+
3+
import io.csie.chris.email.IEmail;
4+
15
public abstract class EmailDecorator implements IEmail {
6+
27
IEmail originalEmail;
38
}

StructuralDesignPattern/DecoratorPattern/Java/DecoratorPatternDemo/ExternalEmailDecorator.java renamed to Structural/DecoratorPattern/src/io/csie/chris/decorator/ExternalEmailDecorator.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1+
package io.csie.chris.decorator;
2+
3+
import io.csie.chris.email.IEmail;
4+
15
public class ExternalEmailDecorator extends EmailDecorator {
6+
27
private String content;
38

49
public ExternalEmailDecorator(IEmail iEmail) {

StructuralDesignPattern/DecoratorPattern/Java/DecoratorPatternDemo/SecureEmailDecorator.java renamed to Structural/DecoratorPattern/src/io/csie/chris/decorator/SecureEmailDecorator.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1+
package io.csie.chris.decorator;
2+
3+
import io.csie.chris.email.IEmail;
4+
15
public class SecureEmailDecorator extends EmailDecorator {
6+
27
private String content;
38

49
public SecureEmailDecorator(IEmail iEmail) {
@@ -12,7 +17,6 @@ public String getContents() {
1217
}
1318

1419
private String encryptEmailContent(String message) {
15-
String temp = new StringBuilder(message).reverse().toString();
16-
return temp;
20+
return new StringBuilder(message).reverse().toString();
1721
}
1822
}

StructuralDesignPattern/DecoratorPattern/Java/DecoratorPatternDemo/Email.java renamed to Structural/DecoratorPattern/src/io/csie/chris/email/Email.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1+
package io.csie.chris.email;
2+
13
public class Email implements IEmail {
4+
25
private String content;
36

47
public Email(String content) {
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
package io.csie.chris.email;
2+
3+
public interface IEmail {
4+
5+
String getContents();
6+
}

StructuralDesignPattern/DecoratorPattern/Java/DecoratorPatternDemo/IEmail.java

Lines changed: 0 additions & 3 deletions
This file was deleted.

0 commit comments

Comments
 (0)