public LBStickinessPolicyResponse(StickinessPolicy stickinesspolicy) {
    this.name = stickinesspolicy.getName();
    List<Pair<String, String>> paramsList = stickinesspolicy.getParams();
    this.methodName = stickinesspolicy.getMethodName();
    this.description = stickinesspolicy.getDescription();
    if (stickinesspolicy.isRevoke()) {
      this.setState("Revoked");
    }
    if (stickinesspolicy.getId() != 0) setId(stickinesspolicy.getId());

    /* Get the param and values from the database and fill the response object
     *  The following loop is to
     *    1) convert from List of Pair<String,String> to Map<String, String>
     *    2)  combine all params with name with ":" , currently we have one param called "domain" that can appear multiple times.
     * */

    Map<String, String> tempParamList = new HashMap<String, String>();
    for (Pair<String, String> paramKV : paramsList) {
      String key = paramKV.first();
      String value = paramKV.second();
      StringBuilder sb = new StringBuilder();
      sb.append(value);
      if (tempParamList.get(key) != null) {
        sb.append(":").append(tempParamList.get(key));
      }

      tempParamList.put(key, sb.toString());
    }

    this.params = tempParamList;
    setObjectName("stickinesspolicy");
  }