Exemplo n.º 1
0
  private void logEndpoints() {
    final StringBuilder stringBuilder = new StringBuilder(1024).append("\n\n");

    final ImmutableList.Builder<Class<?>> builder = ImmutableList.builder();
    for (Object o : config.getSingletons()) {
      if (o.getClass().isAnnotationPresent(Path.class)) {
        builder.add(o.getClass());
      }
    }
    for (Class<?> klass : config.getClasses()) {
      if (klass.isAnnotationPresent(Path.class)) {
        builder.add(klass);
      }
    }

    for (Class<?> klass : builder.build()) {
      final String path = klass.getAnnotation(Path.class).value();
      final ImmutableList.Builder<String> endpoints = ImmutableList.builder();
      for (AnnotatedMethod method : annotatedMethods(klass)) {
        for (HttpMethod verb : method.getMetaMethodAnnotations(HttpMethod.class)) {
          endpoints.add(
              String.format("    %-7s %s (%s)", verb.value(), path, klass.getCanonicalName()));
        }
      }

      for (String line : Ordering.natural().sortedCopy(endpoints.build())) {
        stringBuilder.append(line).append('\n');
      }
    }

    LOG.info(stringBuilder.toString());
  }
Exemplo n.º 2
0
  private void logProviders() {
    final ImmutableSet.Builder<String> builder = ImmutableSet.builder();

    for (Class<?> klass : config.getClasses()) {
      if (klass.isAnnotationPresent(Provider.class)) {
        builder.add(klass.getCanonicalName());
      }
    }

    for (Object o : config.getSingletons()) {
      if (o.getClass().isAnnotationPresent(Provider.class)) {
        builder.add(o.getClass().getCanonicalName());
      }
    }

    LOG.debug("providers = {}", builder.build());
  }
Exemplo n.º 3
0
 /**
  * Adds the given class as a Jersey provider.
  *
  * <p><b>N.B.:</b> This class must either have a no-args constructor or use Jersey's built-in
  * dependency injection.
  *
  * @param klass a Jersey provider class
  */
 public void addProvider(Class<?> klass) {
   config.getClasses().add(checkNotNull(klass));
 }
Exemplo n.º 4
0
 /**
  * Adds the given class as a Jersey resource.
  *
  * <p><b>N.B.:</b> This class must either have a no-args constructor or use Jersey's built-in
  * dependency injection.
  *
  * @param klass a Jersey resource class
  */
 public void addResource(Class<?> klass) {
   config.getClasses().add(checkNotNull(klass));
 }