title: Which design Pattern to use in case of Rest WebService Client?
body: <p>I have a webservice performing following operations:</p>
  
  <ul>
  <li>Login</li>
  <li>Logout</li>
  <li>Registration</li>
  </ul>
  
  <p>Each webservice differs only in terms of parameters passed in case of <code>createRequest()</code> method and <code>processResponse()</code> method.</p>
  
  <pre><code>public Map&lt;String, String&gt; SubscriberLogin(String username ,String password ,   String addInfoData)
  {
  
          Map&lt;String, String&gt; returnMap = new HashMap&lt;String, String&gt;();
          try {
              Map&lt;String,String&gt; paramMap = new HashMap&lt;String, String&gt;();
              paramMap.put("userIdentity", username);
              paramMap.put("password", password);
  
  // Every webservice varies in value of Rest_WsConstants(webservice path) and paramMap-key/value mapping 
              HttpPost postReq = createRequest(Rest_WsConstants.LOGIN_WS.path, paramMap);
  
              StringEntity entity = new StringEntity(addInfoData);
              postReq.setEntity(entity);
  
              HttpResponse wsResponse = wsClient.execute(postReq);
  
              returnMap = processResponse(wsResponse);
  
          }catch (Exception e) {
              Logger.logError(MODULE,"Error while login, reason:"+e.getMessage());
          }
          return returnMap;
  }
  </code></pre>
  
  <p>But currently there is a single Singleton class and all operations are defined as separate static methods.</p>
  
  <p>Please suggest which design pattern to implement in such scenarios.</p>