//
// here we support the deprecated annotations
//
final PostsPropertyChangedEvent postsPropertyChangedEvent = Annotations.getAnnotation(method, PostsPropertyChangedEvent.class);
final PropertySetterFacet setterFacet = holder.getFacet(PropertySetterFacet.class);
if(setterFacet != null) {
// the current setter facet will end up as the underlying facet
final PropertySetterFacetForInteractionAbstract replacementFacet;
if(propertyInteraction != null) {
replacementFacet = new PropertySetterFacetForPropertyInteractionAnnotation(
propertyInteractionEventType, getterFacet, setterFacet, propertyInteractionFacet, holder, servicesInjector);
} else if(postsPropertyChangedEvent != null) {
replacementFacet = new PropertySetterFacetForPostsPropertyChangedEventAnnotation(
postsPropertyChangedEvent.value(), getterFacet, setterFacet, propertyInteractionFacet, holder, servicesInjector);
} else {
replacementFacet = new PropertySetterFacetForPropertyInteractionDefault(
PropertyInteractionEvent.Default.class, getterFacet, setterFacet, propertyInteractionFacet, holder, servicesInjector);
}
FacetUtil.addFacet(replacementFacet);
}
final PropertyClearFacet clearFacet = holder.getFacet(PropertyClearFacet.class);
if(clearFacet != null) {
// the current clear facet will end up as the underlying facet
final PropertyClearFacetForInteractionAbstract replacementFacet;
if(propertyInteraction != null) {
replacementFacet = new PropertyClearFacetForPropertyInteractionAnnotation(
propertyInteractionEventType, getterFacet, clearFacet, propertyInteractionFacet, holder, servicesInjector);
} else if(postsPropertyChangedEvent != null) {
replacementFacet = new PropertyClearFacetForPostsPropertyChangedEventAnnotation(
postsPropertyChangedEvent.value(), getterFacet, clearFacet, propertyInteractionFacet, holder, servicesInjector);
} else {
replacementFacet = new PropertyClearFacetForPropertyInteractionDefault(
PropertyInteractionEvent.Default.class, getterFacet, clearFacet, propertyInteractionFacet, holder, servicesInjector);
}
FacetUtil.addFacet(replacementFacet);