私は次のコードを順番に実行し、メソッドを次々と実行します。
リクエストをロードし、このリクエストに対するレスポンスがすでに存在するかどうかを確認するなど、いくつかのチェックを実行します。存在しない場合は、サービスを呼び出して、DB に保存するレスポンスを受け取ります。
そんな時に使えるデザインパターンを探していたので、ここに投稿してアイデアを得ようと思いました。
public class Manager
{
public void PutRequest()
{
//Do Something
if (loadRequest())
{
callService();
//Do Something
saveResponse();
}
}
private bool loadRequest()
{
bool isExist = checkIfResponseExists();
if (!isExist)
{
// If false, load request from DB
}
return !isExist;
}
private bool checkIfDataExists()
{
//Check if a response already exists in the DB for this request
}
private void callService()
{
//Call the service and receive the response
}
private void saveResponse()
{
//Store the response in the DB
}
}