Deskripsi Fitur
Kelas yang Dihasilkan dengan bidang berdasarkan Enum
Permintaan feater ini muncul dari pertanyaan saya di StackOverflow
Pada dasarnya fitur itu akan memungkinkan membuat kelas dengan bidang dari kelas enum dan jika @Data atau @Setter dan @Getters disetel, tandai bidang itu sebagai privet dan buat setter dan pengambil
Prototipe Kode Penggunaan:
Definisi
public enum JwtFields {
userId,
country,
sessionId,
anyOtherField
}
@FromEnum(JwtFields.class)
<strong i="19">@Data</strong>
public class JwtDeserialised {
private String someAdditionalCutomFieldIfIwant
}
Penggunaan:
String userId = jwtDeserialisedInstance.getUserId();
String anyOtherField = jwtDeserialisedInstance.getAnyOtherField();
String someAdditionalCutomFieldIfIwant = jwtDeserialisedInstance.GetSomeAdditionalCutomFieldIfIwant();
Target Pemirsa
Siapa pun yang menggunakan Enums sebagai kunci untuk menghindari salah ketik string, dan kemudian perlu deserialise enum itu ke kelas yang tepat dengan set dan get.
Mengapa tidak mengambil arah yang berlawanan: tentukan bidang Anda di kelas dan gunakan @FieldNameConstants(asEnum = true)
untuk menghasilkan enum Anda?
Kami telah menerapkan ini, tetapi seperti yang ditunjukkan @janrieke , dalam arah yang berlawanan: Buat kelas (dan bukan enum yang menamai 'bidang').
Perhatikan juga bahwa penerapan yang Anda inginkan memerlukan resolusi , yaitu fitur yang sangat kompleks.
Terima kasih kawan! Luar biasa! cara lain juga sangat cocok untuk saya!
Tidak menemukannya di dokumentasi, tetapi sekarang ditemukan di eksperimental! Fitur yang sangat bagus dan pasti pantas berada di fitur utama agak eksperimental!
Komentar yang paling membantu
Mengapa tidak mengambil arah yang berlawanan: tentukan bidang Anda di kelas dan gunakan
@FieldNameConstants(asEnum = true)
untuk menghasilkan enum Anda?