code: private Collection<ConnectionParameterModel> getParameterModels(ModeledConnection connection) {
  
          Map<String, String> parameters = connection.getConfiguration().getParameters();
          
          // Convert parameters to model objects
          Collection<ConnectionParameterModel> parameterModels = new ArrayList<ConnectionParameterModel>(parameters.size());
          for (Map.Entry<String, String> parameterEntry : parameters.entrySet()) {
  
              // Get parameter name and value
              String name = parameterEntry.getKey();
              String value = parameterEntry.getValue();
  
              // There is no need to insert empty parameters
              if (value == null || value.isEmpty())
                  continue;
              
              // Produce model object from parameter
              ConnectionParameterModel model = new ConnectionParameterModel();
              model.setConnectionIdentifier(connection.getIdentifier());
              model.setName(name);
              model.setValue(value);
  
              // Add model to list
              parameterModels.add(model);
              
          }
  
          return parameterModels;
  
      }
docs: Given an arbitrary Guacamole connection, produces a collection of
  parameter model objects containing the name/value pairs of that
  connection's parameters.
  
  @param connection
  The connection whose configuration should be used to produce the
  collection of parameter models.
  
  @return
  A collection of parameter models containing the name/value pairs
  of the given connection's parameters.