code: public Map<String, Collection<String>> toMap() {
          Map<String, Collection<String>> params = new HashMap<String, Collection<String>>();
          if (name != null) {
              ArrayList<String> valueList = new ArrayList<String>();
              valueList.add(name);
              params.put("name", valueList);
          }
          if (resolution != null) {
              ArrayList<String> valueList = new ArrayList<String>();
              valueList.add(resolution);
              params.put("resolution", valueList);
          }
          ArrayList<String> valueList = new ArrayList<String>();
          valueList.add(Boolean.toString(hasAudio));
          params.put("hasAudio", valueList);
          
          valueList = new ArrayList<String>();
          valueList.add(Boolean.toString(hasVideo));
          params.put("hasVideo", valueList);
          
          valueList = new ArrayList<String>();
          valueList.add(outputMode.toString());
          params.put("outputMode", valueList);
  
          if (layout != null) {
              valueList = new ArrayList<String>();
              valueList.add(layout.toString());
              params.put("layout", valueList);
          }
  
          return params;
      }
docs: Returns the archive properties as a Map.