package grok.core;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonValue;
import com.google.auto.value.AutoValue;

@AutoValue
public abstract class Id {
  @JsonCreator
  public static Id of(String id) {
    return new AutoValue_Id(id);
  }

  Id() {}

  @Deprecated
  public String id() {
    return value();
  }

  @JsonValue
  public abstract String value();
}

@@ -284,16 +284,185 @@
 );%0A  %7D%0A%0A
+  /**%0A   * Use %7B@link #of(String)%7D instead. This is here for Jersey deserialization.%0A   */%0A  @Deprecated%0A  public static Id valueOf(String id) %7B%0A    return of(id);%0A  %7D%0A%0A
   Id() %7B

Allow Id to be used as @QueryParam/@PathParam