test_class.file: core/src/test/java/org/microbule/core/DefaultJaxrsServiceNamingStrategyTest.java
test_class.identifier: DefaultJaxrsServiceNamingStrategyTest
test_class.superclass: extends MockObjectTestCase
test_case.body: @Test
      public void testWithSpecifiedName() {
          final DefaultJaxrsServiceNamingStrategy namingStrategy = new DefaultJaxrsServiceNamingStrategy();
          assertEquals("coolService", namingStrategy.serviceName(MyCoolService.class));
      }
test_case.class_method_signature: DefaultJaxrsServiceNamingStrategyTest.testWithSpecifiedName()
test_case.full_signature: @Test public void testWithSpecifiedName()
test_case.identifier: testWithSpecifiedName
test_case.invocations: assertEquals serviceName
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testWithSpecifiedName()
focal_class.file: core/src/main/java/org/microbule/core/DefaultJaxrsServiceNamingStrategy.java
focal_class.identifier: DefaultJaxrsServiceNamingStrategy
focal_class.interfaces: implements JaxrsServiceNamingStrategy
focal_class.class_method_signature: DefaultJaxrsServiceNamingStrategy.serverAddress(Class<?> serviceInterface)
focal_class.full_signature: @Override public String serverAddress(Class<?> serviceInterface)
focal_class.identifier: serverAddress
focal_class.modifiers: @Override public
focal_class.parameters: (Class<?> serviceInterface)
focal_class.return: String
focal_class.signature: String serverAddress(Class<?> serviceInterface)
focal_class.class_method_signature: DefaultJaxrsServiceNamingStrategy.serviceName(Class<?> serviceInterface)
focal_class.full_signature: @Override public String serviceName(Class<?> serviceInterface)
focal_class.identifier: serviceName
focal_class.modifiers: @Override public
focal_class.parameters: (Class<?> serviceInterface)
focal_class.return: String
focal_class.signature: String serviceName(Class<?> serviceInterface)
focal_class.class_method_signature: DefaultJaxrsServiceNamingStrategy.annotationProperty(Class<?> serviceInterface, T fallback, Function<JaxrsService, T> fn)
focal_class.full_signature: private T annotationProperty(Class<?> serviceInterface, T fallback, Function<JaxrsService, T> fn)
focal_class.identifier: annotationProperty
focal_class.modifiers: private
focal_class.parameters: (Class<?> serviceInterface, T fallback, Function<JaxrsService, T> fn)
focal_class.return: T
focal_class.signature: T annotationProperty(Class<?> serviceInterface, T fallback, Function<JaxrsService, T> fn)
focal_method.body: @Override
      public String serviceName(Class<?> serviceInterface) {
          final String fallback = serviceInterface.getSimpleName();
          return annotationProperty(serviceInterface, fallback, annotation -> StringUtils.defaultIfBlank(annotation.name(), fallback));
      }
focal_method.class_method_signature: DefaultJaxrsServiceNamingStrategy.serviceName(Class<?> serviceInterface)
focal_method.full_signature: @Override public String serviceName(Class<?> serviceInterface)
focal_method.identifier: serviceName
focal_method.invocations: getSimpleName annotationProperty defaultIfBlank name
focal_method.modifiers: @Override public
focal_method.parameters: (Class<?> serviceInterface)
focal_method.return: String
focal_method.signature: String serviceName(Class<?> serviceInterface)