tg
tg copied to clipboard
Deprecation of `@IsProperty.value`
Description
Annotation @IsProperty and its member value have long been used to capture type arguments of property types.
Specifically, the type of elements in a collection:
@IsProperty(Details.class)
List<Details> details;
And the type argument of a property descriptor:
@IsProperty(WorkActivity.class)
PropertyDescriptor<WorkActivity> pd;
However, this information can also be accessed via Field.getGenericType(), which is a simpler alternative that alleviates engineers from the burden of correctly using and maintaining @IsProperty.value().
The goal of this issue is to deprecate public API @IsProperty.value() and to modify the implementation so that Field.getGenericType() is used instead.
Change overview
TODO
Expected outcome
Simplification of property definitions, @IsProperty.value() is no longer required.