Class EventObjectTypeResolverBuilder


  • public class EventObjectTypeResolverBuilder
    extends Object
    Builds a special TypeResolver capable of resolving type variables by using a combination of two type hierarchies. The special resolver is only necessary for situations where the type of the event object contains an unresolved type variable which cannot be resolved using the selected event type because the selected event type is a subtype of the event object. For example: private Event> event; event.fire(new ArrayList()); The event object type is ArrayList (raw type due to type erasure) The selected type is List We cannot simply infer the correct type (ArrayList) from the runtime type nor from the selected type. What this special resolver does is that it combines the following type variable assignments: L -> E L -> String and resolves E to String. The resolver is capable of doing it recursively for parameterized types.
    Author:
    Jozef Hartinger
    • Method Detail

      • resolveTypeVariables

        protected void resolveTypeVariables()
      • resolveTypeVariables

        protected void resolveTypeVariables​(Type type1,
                                            Type type2)
      • resolveTypeVariables

        protected void resolveTypeVariables​(TypeVariable<?> type1,
                                            Type type2)