title: GSON - Deserialize case insensitive field name (no definite case pattern)
body: <p>I want to build a flexible api, I have no definite case sensitivity the user can pass, so GSON must be able to deserialize this in case sensitive.</p>
  
  <pre><code>{"firstName":"Juan"}
  {"firstname":"Juan"}
  {"Firstname":"Juan"}
  ...
  </code></pre>
  
  <p>How can I deserialize these field into my Foo's firstName?</p>
  
  <pre><code>public class Foo {
      private String firstName;
      //..getters
  }
  </code></pre>
  
  <p>I tried to use FieldNamingPolicy, but it did not work.</p>
  
  <pre><code>new GsonBuilder()
              .setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE)
              .setPrettyPrinting()
              .create();
  </code></pre>