さて、これらすべてのパターンを理解しようとしています。
よし、私は CodeIgniter でアプリケーションをコーディングしています。このアプリケーションは、車と顧客に関するデータをさまざまなタイプの企業に、SOAP、おそらく XML、コンマ区切りなどを使用して送信できるようにする必要があります。
しかし、それらはすべて同じものを必要とします。
できるだけ動的にして、テストを簡単に記述できるようにしたいと考えています。
したがって、このサービスは次の 2 つのことを行う必要があります。
- ハンドラー
- 応募者[1-2]
- パラメータ
- 物体
さまざまなクラスの作成を開始しました
Gr8Exp NordCar SwePerf
それぞれがインターフェースiServiceRequestを実装しています
interface iServiceRequest{
/**
* Send the request to the company server.
*/
function sendRequest();
/**
* Saves the response into the database.
*/
function saveResponse();
/**
* Prepares the request to the company, setting info from form and shit.
*/
function prepareRequest();
/**
* Soap, XML, CSV, JSON
* @param type $method
*/
function setRequestHandler(iServiceRequestHandler $handler);
}
次に、私が入れたハンドラーに応じて、Soap、XML、CSV、JSON リクエストを構成する必要があります。
検証が必要な人たちの後に(すべてではありませんでした)、私は以下を使用しました:
interface iAdaptServiceRequest{
/**
* Structure the array information and put it into an object structure in the right place.
*/
function structure(array $info);
/**
* Make all the checks for the function
*/
function validateInfo();
}
しかし、私は立ち往生しています.SOAPリクエストを使用したときは本当にうまくいきました。でも今。それらを異なる形式にする必要があるため、リクエストの種類または会社ごとに異なるハンドラーを使用してください。どうすればよいかわかりません。それらを別のフォルダーに入れて、別のフォルダーにクラスを再作成できます。しかし、私はコードを複製しているので、それは良い習慣ではありません。
最後に、次のような連鎖を実行したいと思います。
$result = $m->prepareRequest()->sendRequest()->saveResponse();
助言がありますか??