Until
Date: 2016-11-03

com.google.gson.annotations

## Annotation Type Until

-     @Documented
      @Retention(value=RUNTIME)
      @Target(value={FIELD,TYPE})
      public @interface Until

  An annotation that indicates the version number until a member or a type should be present. Basically, if Gson is created with a version number that exceeds the value stored in the `Until` annotation then the field will be ignored from the JSON output. This annotation is useful to manage versioning of your JSON classes for a web-service.

  This annotation has no effect unless you build `Gson` with a `GsonBuilder` and invoke `GsonBuilder.setVersion(double)` method.

  Here is an example of how this annotation is meant to be used:

       public class User {
         private String firstName;
         private String lastName;
         @Until(1.1) private String emailAddress;
         @Until(1.1) private String password;
       }

  If you created Gson with `new Gson()`, the `toJson()` and `fromJson()` methods will use all the fields for serialization and deserialization. However, if you created Gson with `Gson gson = new GsonBuilder().setVersion(1.2).create()` then the `toJson()` and `fromJson()` methods of Gson will exclude the `emailAddress` and `password` fields from the example above, because the version number passed to the GsonBuilder, `1.2`, exceeds the version number set on the `Until` annotation, `1.1`, for those fields.

  Since:
    1.3

- - ### Required Element Summary

    Required Elements
    Modifier and Type | Required Element and Description
    --- | ---
    `double` | `value` the value indicating a version number until this member or type should be ignored.

- - ### Element Detail

    - #### value

          public abstract double value

      the value indicating a version number until this member or type should be ignored.