/** Create a FieldModel object from a non-null Schema object. */ public static synchronized DiscoveryField create(Schema schema, DiscoApiModel rootApiModel) { if (!Strings.isNullOrEmpty(schema.reference()) && rootApiModel != null) { // First create a DiscoveryField for the underlying referenced Schema. create(schema.dereference(), rootApiModel); } return new DiscoveryField(schema, rootApiModel); }