test_class.declarator: headers
test_class.modifier: private
test_class.original_string: private MultivaluedMap<String, String> headers;
test_class.type: MultivaluedMap<String, String>
test_class.var_name: headers
test_class.declarator: applicationContext
test_class.modifier: private
test_class.original_string: private ApplicationContext             applicationContext;
test_class.type: ApplicationContext
test_class.var_name: applicationContext
test_class.declarator: parameter
test_class.modifier: private
test_class.original_string: private Parameter                      parameter;
test_class.type: Parameter
test_class.var_name: parameter
test_class.declarator: typeProducer
test_class.modifier: private
test_class.original_string: private TypeProducer                   typeProducer;
test_class.type: TypeProducer
test_class.var_name: typeProducer
test_class.declarator: headerParameterResolver
test_class.modifier: private
test_class.original_string: private HeaderParameterResolver headerParameterResolver;
test_class.type: HeaderParameterResolver
test_class.var_name: headerParameterResolver
test_class.file: everrest-core/src/test/java/org/everrest/core/impl/method/HeaderParameterResolverTest.java
test_class.identifier: HeaderParameterResolverTest
test_case.body: @Test
      public void retrievesHeaderFromRequest() throws Exception {
          when(typeProducer.createValue("foo", headers, null)).thenReturn(headers.getFirst("foo"));
  
          Object resolvedHeader = headerParameterResolver.resolve(parameter, applicationContext);
  
          assertEquals(headers.getFirst("foo"), resolvedHeader);
      }
test_case.class_method_signature: HeaderParameterResolverTest.retrievesHeaderFromRequest()
test_case.full_signature: @Test public void retrievesHeaderFromRequest()
test_case.identifier: retrievesHeaderFromRequest
test_case.invocations: thenReturn when createValue getFirst resolve assertEquals getFirst
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void retrievesHeaderFromRequest()
focal_class.declarator: headerParam
focal_class.modifier: private final
focal_class.original_string: private final HeaderParam         headerParam;
focal_class.type: HeaderParam
focal_class.var_name: headerParam
focal_class.declarator: typeProducerFactory
focal_class.modifier: private final
focal_class.original_string: private final TypeProducerFactory typeProducerFactory;
focal_class.type: TypeProducerFactory
focal_class.var_name: typeProducerFactory
focal_class.file: everrest-core/src/main/java/org/everrest/core/impl/method/HeaderParameterResolver.java
focal_class.identifier: HeaderParameterResolver
focal_class.interfaces: implements ParameterResolver<HeaderParam>
focal_class.class_method_signature: HeaderParameterResolver.HeaderParameterResolver(HeaderParam headerParam, TypeProducerFactory typeProducerFactory)
focal_class.full_signature:   HeaderParameterResolver(HeaderParam headerParam, TypeProducerFactory typeProducerFactory)
focal_class.identifier: HeaderParameterResolver
focal_class.parameters: (HeaderParam headerParam, TypeProducerFactory typeProducerFactory)
focal_class.signature:  HeaderParameterResolver(HeaderParam headerParam, TypeProducerFactory typeProducerFactory)
focal_class.class_method_signature: HeaderParameterResolver.resolve(Parameter parameter, ApplicationContext context)
focal_class.full_signature: @Override public Object resolve(Parameter parameter, ApplicationContext context)
focal_class.identifier: resolve
focal_class.modifiers: @Override public
focal_class.parameters: (Parameter parameter, ApplicationContext context)
focal_class.return: Object
focal_class.signature: Object resolve(Parameter parameter, ApplicationContext context)
focal_method.body: @Override
      public Object resolve(Parameter parameter, ApplicationContext context) throws Exception {
          String param = this.headerParam.value();
          TypeProducer typeProducer = typeProducerFactory.createTypeProducer(parameter.getParameterClass(), parameter.getGenericType());
          return typeProducer.createValue(param, context.getHttpHeaders().getRequestHeaders(), parameter.getDefaultValue());
      }
focal_method.class_method_signature: HeaderParameterResolver.resolve(Parameter parameter, ApplicationContext context)
focal_method.full_signature: @Override public Object resolve(Parameter parameter, ApplicationContext context)
focal_method.identifier: resolve
focal_method.invocations: value createTypeProducer getParameterClass getGenericType createValue getRequestHeaders getHttpHeaders getDefaultValue
focal_method.modifiers: @Override public
focal_method.parameters: (Parameter parameter, ApplicationContext context)
focal_method.return: Object
focal_method.signature: Object resolve(Parameter parameter, ApplicationContext context)