12.07.2015 Views

Podsumowanie wzorców projektowych GoF

Podsumowanie wzorców projektowych GoF

Podsumowanie wzorców projektowych GoF

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

System.out.println("interpreting show title for actor : " +dvdInterpreterClient.interpret("show title for actor "));}}Klasy wzorca:TitleAndActorpackage pk.dydakt.to.dp.b.gof.interpreter;public class TitleAndActor {private String title;private String actor;public TitleAndActor(String title, String actor) {this.title = title;this.actor = actor;}public String getTitle() {return this.title;}public String getActor() {return this.actor;}}DvdInterpreterClientpackage pk.dydakt.to.dp.b.gof.interpreter;import java.util.StringTokenizer;public class DvdInterpreterClient {DvdInterpreterContext dvdInterpreterContext;public DvdInterpreterClient(DvdInterpreterContext dvdInterpreterContext) {this.dvdInterpreterContext = dvdInterpreterContext;}// expression syntax:// show title | actor [for actor | title ]public String interpret(String expression) {StringBuffer result = new StringBuffer("Query Result: ");String currentToken;StringTokenizer expressionTokens =new StringTokenizer(expression);char mainQuery = ' ';char subQuery = ' ';boolean forUsed = false;String searchString = null;boolean searchStarted = false;boolean searchEnded = false;while (expressionTokens.hasMoreTokens()){currentToken = expressionTokens.nextToken();if (currentToken.equals("show")) {continue;//show in all queries, not really used} else if (currentToken.equals("title")) {if (mainQuery == ' ') {83

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!