code: @Override
      protected ModelNode convertParameterExpressions(ModelNode parameter) {
          ModelNode result = parameter;
  
          List<ModelNode> asList;
          try {
              asList = parameter.asList();
          } catch (IllegalArgumentException iae) {
              // We can't convert; we'll just return parameter
              asList = null;
          }
  
          if (asList != null) {
              boolean changeMade = false;
              ModelNode newList = new ModelNode().setEmptyList();
              for (ModelNode item : asList) {
                  ModelNode converted = convertParameterElementExpressions(item);
                  newList.add(converted);
                  changeMade |= !converted.equals(item);
              }
              if (changeMade) {
                  result = newList;
              }
          }
          return result;
      }
docs: Iterates through the elements in the {@code parameter} list, calling {@link #convertParameterElementExpressions(ModelNode)}
  for each.
  <p>
  <strong>Note</strong> that the default implementation of {@link #convertParameterElementExpressions(ModelNode)}
  will only convert simple {@link ModelType#STRING} elements. If users need to handle complex elements
  with embedded expressions, they should use a subclass that overrides that method.
  </p>
  
  {@inheritDoc}