@Test public void handleInterfaceAnnotationShouldDelegateToInnerHandlerForEachAnnotations() throws Exception { when(mockAnnotation.value()).thenReturn(mockAnnotations); toTest.handleInterfaceAnnotation(mockAnnotation, mockInterfaceConfigBuilder); verify(mockCookieParamAnnotationHandler).handleInterfaceAnnotation(mockAnnotations[0], mockInterfaceConfigBuilder); verify(mockCookieParamAnnotationHandler).handleInterfaceAnnotation(mockAnnotations[1], mockInterfaceConfigBuilder); verify(mockAnnotation).value(); }
@Override public void handleInterfaceAnnotation(CookieParams annotation, InterfaceConfigBuilder builder) { for(CookieParam paramAnnotation : annotation.value()){ handler.handleInterfaceAnnotation(paramAnnotation, builder); } }
CookieParamsAnnotationHandler extends NoOpAnnotationHandler<CookieParams> { @Override public void handleInterfaceAnnotation(CookieParams annotation, InterfaceConfigBuilder builder) { for(CookieParam paramAnnotation : annotation.value()){ handler.handleInterfaceAnnotation(paramAnnotation, builder); } } }
CookieParamsAnnotationHandler extends NoOpAnnotationHandler<CookieParams> { @Override public void handleInterfaceAnnotation(CookieParams annotation, InterfaceConfigBuilder builder) { for(CookieParam paramAnnotation : annotation.value()){ handler.handleInterfaceAnnotation(paramAnnotation, builder); } } CookieParamsAnnotationHandler(CookieParamAnnotationHandler handler);  CookieParamsAnnotationHandler(CRestConfig crestConfig); }
CookieParamsAnnotationHandler extends NoOpAnnotationHandler<CookieParams> { @Override public void handleInterfaceAnnotation(CookieParams annotation, InterfaceConfigBuilder builder) { for(CookieParam paramAnnotation : annotation.value()){ handler.handleInterfaceAnnotation(paramAnnotation, builder); } } CookieParamsAnnotationHandler(CookieParamAnnotationHandler handler);  CookieParamsAnnotationHandler(CRestConfig crestConfig); @Override void handleInterfaceAnnotation(CookieParams annotation, InterfaceConfigBuilder builder); @Override void handleMethodAnnotation(CookieParams annotation, MethodConfigBuilder builder); }
CookieParamsAnnotationHandler extends NoOpAnnotationHandler<CookieParams> { @Override public void handleInterfaceAnnotation(CookieParams annotation, InterfaceConfigBuilder builder) { for(CookieParam paramAnnotation : annotation.value()){ handler.handleInterfaceAnnotation(paramAnnotation, builder); } } CookieParamsAnnotationHandler(CookieParamAnnotationHandler handler);  CookieParamsAnnotationHandler(CRestConfig crestConfig); @Override void handleInterfaceAnnotation(CookieParams annotation, InterfaceConfigBuilder builder); @Override void handleMethodAnnotation(CookieParams annotation, MethodConfigBuilder builder);  }