2016-05-16 12 views
1

私は、2つの独立したライブラリが同じ目的のために保管されているJavaネットワーク関連のプロジェクトで作業しています。Javaで2つの独立したライブラリの共通ラッパーを作成する方法

例えば、ここ

public class L1 
{ 
    public T1 sendRequest(Type1 t1, Type2 t2, Type3 t3) 
    { 

    } 

    public T2 getLastResponse(Type1 t1, Type1 t1, Type4 t4) 
    { 

    } 

    ..... 
} 

public class L2 
{ 
    public T1 sendMessage(Type1 t1, Type3 t4) 
    { 

    } 

    public T2 getLastMessage(Type1 t1, Type1 t2, Type4 t4, Type1 t1) 
    { 

    } 

    ..... 
} 

は、L1は、一のライブラリを表すされ、L2は、別のライブラリを表しています。

L1とL2の間に関係はなく、関数名は異なる場合があります。同様に、L1にはsendRequestという名前の関数があり、L2にはsendMessageという名前の関数があります。しかし、どちらも同じアクションを実行でき、その戻り値のタイプは同じです。

ユーザーのL1 & L2ライブラリの間にラッパーを作成したいと思います。そのラッパーでは、ユーザーはL1ライブラリーまたはL2ライブラリーのいずれかを選択できますが、両方を選択することはできません。

このタイプのラッパーを作成するにはどうすればよいでしょうか?デザインパターンに関する提案が参考になります。

答えて

1

共通の署名を使用してメソッドを記述するインタフェースを作成します。次に、このインターフェイスを実装するクラスをいくつか作成し、これらのクラスの内部でさまざまな実装を処理します。使用する適切なクラスをファクトリ化し、必要に応じて異なる動作を実現できます。

関連する問題