• ■ ■ ■ ■
    server-core/src/main/java/io/onedev/server/rest/annotation/Api.java
    skipped 8 lines
    9 9  @Target({ElementType.TYPE, ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER})
    10 10  public @interface Api {
    11 11   
    12  - boolean exclude() default false;
     12 + boolean internal() default false;
    13 13  
    14 14   String exampleProvider() default "";
    15 15  
    skipped 8 lines
  • ■ ■ ■ ■ ■
    server-core/src/main/java/io/onedev/server/rest/jersey/AnonymousCheckFilter.java
    skipped 5 lines
    6 6  import javax.servlet.http.HttpServletRequest;
    7 7  import javax.ws.rs.container.ContainerRequestContext;
    8 8  import javax.ws.rs.container.ContainerRequestFilter;
     9 +import javax.ws.rs.container.ResourceInfo;
    9 10  import javax.ws.rs.core.Context;
    10 11  import javax.ws.rs.ext.Provider;
    11 12   
    12 13  import org.apache.shiro.authz.UnauthenticatedException;
    13 14   
    14 15  import io.onedev.server.entitymanager.SettingManager;
     16 +import io.onedev.server.rest.annotation.Api;
    15 17  import io.onedev.server.security.SecurityUtils;
    16 18   
    17 19  @Provider
    skipped 2 lines
    20 22   private final SettingManager settingManager;
    21 23  
    22 24   @Context
     25 + private ResourceInfo resourceInfo;
     26 +
     27 + @Context
    23 28   private HttpServletRequest request;
    24 29  
    25 30   @Inject
    skipped 3 lines
    29 34  
    30 35   @Override
    31 36   public void filter(ContainerRequestContext requestContext) throws IOException {
    32  - if (SecurityUtils.getUser() == null) {
     37 + Api api = resourceInfo.getResourceClass().getAnnotation(Api.class);
     38 + if ((api == null || !api.internal()) && SecurityUtils.getUser() == null) {
    33 39   String method = request.getMethod();
    34 40   if (method.equals("POST") || method.equals("DELETE") || method.equals("PUT")
    35 41   || !settingManager.getSecuritySetting().isEnableAnonymousAccess()) {
    skipped 7 lines
  • ■ ■ ■ ■
    server-core/src/main/java/io/onedev/server/web/page/help/ExampleValuePanel.java
    skipped 69 lines
    70 70   for (Class<?> clazz: config.getClasses()) {
    71 71   if (clazz.getAnnotation(Path.class) != null) {
    72 72   Api api = clazz.getAnnotation(Api.class);
    73  - if (api == null || !api.exclude()) {
     73 + if (api == null || !api.internal()) {
    74 74   for (Method method: clazz.getMethods()) {
    75 75   if (AbstractEntity.class.isAssignableFrom(method.getReturnType())
    76 76   && method.getAnnotation(GET.class) != null
    skipped 496 lines
  • ■ ■ ■ ■
    server-core/src/main/java/io/onedev/server/web/page/help/ResourceListPage.java
    skipped 38 lines
    39 39   for (Class<?> clazz: config.getClasses()) {
    40 40   if (clazz.getAnnotation(Path.class) != null) {
    41 41   Api api = clazz.getAnnotation(Api.class);
    42  - if (api == null || !api.exclude())
     42 + if (api == null || !api.internal())
    43 43   clazzes.add(clazz);
    44 44   }
    45 45   }
    skipped 29 lines
  • ■ ■ ■ ■
    server-plugin/server-plugin-executor-kubernetes/src/main/java/io/onedev/server/plugin/executor/kubernetes/KubernetesResource.java
    skipped 48 lines
    49 49  import io.onedev.server.util.ExceptionUtils;
    50 50  import io.onedev.server.util.SimpleLogger;
    51 51   
    52  -@Api(exclude=true)
     52 +@Api(internal=true)
    53 53  @Path("/k8s")
    54 54  @Consumes(MediaType.WILDCARD)
    55 55  @Singleton
    skipped 132 lines
Please wait...
Page is in error, reload to recover