/**
   * @param ar abstract resource
   * @param am abstract method
   * @param p parameter
   * @return parameter
   * @see
   *     org.glassfish.jersey.server.wadl.WadlGenerator#createParam(org.glassfish.jersey.server.model.Resource,
   *     org.glassfish.jersey.server.model.ResourceMethod,
   *     org.glassfish.jersey.server.model.Parameter)
   */
  public Param createParam(
      org.glassfish.jersey.server.model.Resource ar,
      org.glassfish.jersey.server.model.ResourceMethod am,
      Parameter p) {
    final Param param = wadlGeneratorDelegate.createParam(ar, am, p);

    // If the paramter is an entity we probably want to convert this to XML
    //
    if (p.getSource() == Parameter.Source.ENTITY) {
      nameCallbacks.add(
          new TypeCallbackPair(
              new GenericType(p.getType()),
              new NameCallbackSetter() {
                public void setName(QName name) {
                  param.setType(name);
                }
              }));
    }

    return param;
  }