2013-04-29 63 views
0

我想申請一個工廠模式創建的請求豆協議棧上使用。現在請求豆保持與其它性能的豆 - 這也應該是工廠模式的一部分(因爲它們取決於在堆棧上是不同的)。工廠模式和複雜的豆

喜歡的東西:

public interface Factory { 
    public Request createRequest(); 
} 

public interface Request { 
    public Details getDetails(); 
    public void setDetails(Details details); 
    .. 
} 

public interface Details { 
    public String getSource(); 
    public void setSource(String s); 
    .. 
} 

我第一次嘗試是添加工廠方法Details爲好,但這很快就變成一個危險 - 尤其是傳遞一些參數的工廠。

此外,setter變得有點奇怪,因爲他們實際上拋出ClassCastException如果您要通過其他工廠的「詳細」實施。

的主要原因是我的情況是,我坐在我想以適應在我自己的bean接口一個相當複雜的第三方請求/響應/堆棧實現。有沒有更合理的方法來做到這一點?

+0

請註明您希望我們幫助解答 – gerrytan 2013-04-29 13:09:30

+0

看什麼的問題提出質疑,似乎只有自己知道所涉及的圖書館和其他信息的細節,以解決此問題。 – techuser 2013-04-30 03:51:43

回答

0

你可能看到更多的進入你的設計要求:哪一個有更多不同的變體或實現。把它變成工廠,離開另一個工廠。在這種情況下,它看起來對我來說是細節可以使用工廠來創建。 (如果要求沒有太大的許多不同的方式來實現。)