今天來看一下2012.10.30的后三次提交。
提交一:支持了請求時傳入一個流
InputStream is = this.getClass().getClassLoader().getResourceAsStream("foo.request");
server.request(eq(stream(is))).response("bar");
通過stream()方法把流包裝成自己定義的Stream類珠洗,然后再傳入eq()方法。
提交二:把Stream類重命名為ContentStream類(預(yù)計是想和java原生的Stream類作區(qū)分)
public class ContentStream {
private InputStream is;
public ContentStream(String text) {
this.is = new ByteArrayInputStream(text.getBytes());
}
public ContentStream(InputStream is) {
this.is = is;
}
public InputStream asInputStream() {
return is;
}
}
提交三:第三次提交的改動較多薪者,需要我們耐心看一下许帐。
一、ContentHandler類的構(gòu)造方法的參數(shù)由InputStream類型變?yōu)榱薭yte[]數(shù)組主经,這個改動的影響不是很大荣暮,我并沒看出太多的意義來。
二罩驻、重載了MocoHttpServer類中的response()方法穗酥,我把這個類中的這個方法視作welcome page,這個是首頁惠遏,不需要在request中加入任何的參數(shù)砾跃,就是去訪問這個頁面。現(xiàn)在這個方法可以傳入String和ContentStream兩種類型节吮。
三抽高、支持了response()方法可以傳入一個流,也就是由text()方法把一個字符串轉(zhuǎn)成ContentStream透绩,再把流對象傳入response()方法翘骂。
server.request(eq(text("foo"))).response(text("bar"));