Class FunctionsApiV3Resource

  • All Implemented Interfaces:
    java.util.function.Supplier<WorkerService>

    @Path("/functions")
    @Produces("application/json")
    @Consumes("application/json")
    public class FunctionsApiV3Resource
    extends FunctionApiResource
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      void deregisterFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName)  
      javax.ws.rs.core.StreamingOutput downloadFunction​(java.lang.String path)  
      javax.ws.rs.core.StreamingOutput downloadFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName)  
      java.util.List<org.apache.pulsar.common.io.ConnectorDefinition> getConnectorsList()
      Deprecated.
      org.apache.pulsar.common.functions.FunctionConfig getFunctionInfo​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName)  
      org.apache.pulsar.common.policies.data.FunctionInstanceStatsDataImpl getFunctionInstanceStats​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.lang.String instanceId)  
      org.apache.pulsar.common.policies.data.FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData getFunctionInstanceStatus​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.lang.String instanceId)  
      org.apache.pulsar.common.functions.FunctionState getFunctionState​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.lang.String key)  
      org.apache.pulsar.common.policies.data.FunctionStatsImpl getFunctionStats​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName)  
      org.apache.pulsar.common.policies.data.FunctionStatus getFunctionStatus​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName)  
      java.util.List<java.lang.String> listFunctions​(java.lang.String tenant, java.lang.String namespace)  
      void putFunctionState​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.lang.String key, org.apache.pulsar.common.functions.FunctionState stateJson)  
      void registerFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.io.InputStream uploadedInputStream, org.glassfish.jersey.media.multipart.FormDataContentDisposition fileDetail, java.lang.String functionPkgUrl, org.apache.pulsar.common.functions.FunctionConfig functionConfig)  
      void restartFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName)  
      void restartFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.lang.String instanceId)  
      void startFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName)  
      void startFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.lang.String instanceId)  
      void stopFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName)  
      void stopFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.lang.String instanceId)  
      java.lang.String triggerFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.lang.String input, java.io.InputStream uploadedInputStream, java.lang.String topic)  
      void updateFunction​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.io.InputStream uploadedInputStream, org.glassfish.jersey.media.multipart.FormDataContentDisposition fileDetail, java.lang.String functionPkgUrl, org.apache.pulsar.common.functions.FunctionConfig functionConfig, org.apache.pulsar.common.functions.UpdateOptionsImpl updateOptions)  
      void updateFunctionOnWorkerLeader​(java.lang.String tenant, java.lang.String namespace, java.lang.String functionName, java.io.InputStream uploadedInputStream, boolean delete)  
      void uploadFunction​(java.io.InputStream uploadedInputStream, java.lang.String path)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • FunctionsApiV3Resource

        public FunctionsApiV3Resource()
    • Method Detail

      • registerFunction

        @POST
        @Path("/{tenant}/{namespace}/{functionName}")
        @Consumes("multipart/form-data")
        public void registerFunction​(@PathParam("tenant")
                                     java.lang.String tenant,
                                     @PathParam("namespace")
                                     java.lang.String namespace,
                                     @PathParam("functionName")
                                     java.lang.String functionName,
                                     java.io.InputStream uploadedInputStream,
                                     org.glassfish.jersey.media.multipart.FormDataContentDisposition fileDetail,
                                     java.lang.String functionPkgUrl,
                                     org.apache.pulsar.common.functions.FunctionConfig functionConfig)
      • updateFunction

        @PUT
        @Path("/{tenant}/{namespace}/{functionName}")
        @Consumes("multipart/form-data")
        public void updateFunction​(@PathParam("tenant")
                                   java.lang.String tenant,
                                   @PathParam("namespace")
                                   java.lang.String namespace,
                                   @PathParam("functionName")
                                   java.lang.String functionName,
                                   java.io.InputStream uploadedInputStream,
                                   org.glassfish.jersey.media.multipart.FormDataContentDisposition fileDetail,
                                   java.lang.String functionPkgUrl,
                                   org.apache.pulsar.common.functions.FunctionConfig functionConfig,
                                   org.apache.pulsar.common.functions.UpdateOptionsImpl updateOptions)
      • deregisterFunction

        @DELETE
        @Path("/{tenant}/{namespace}/{functionName}")
        public void deregisterFunction​(@PathParam("tenant")
                                       java.lang.String tenant,
                                       @PathParam("namespace")
                                       java.lang.String namespace,
                                       @PathParam("functionName")
                                       java.lang.String functionName)
      • getFunctionInfo

        @GET
        @Path("/{tenant}/{namespace}/{functionName}")
        public org.apache.pulsar.common.functions.FunctionConfig getFunctionInfo​(@PathParam("tenant")
                                                                                 java.lang.String tenant,
                                                                                 @PathParam("namespace")
                                                                                 java.lang.String namespace,
                                                                                 @PathParam("functionName")
                                                                                 java.lang.String functionName)
      • listFunctions

        @GET
        @Produces("application/json")
        @Path("/{tenant}/{namespace}")
        public java.util.List<java.lang.String> listFunctions​(@PathParam("tenant")
                                                              java.lang.String tenant,
                                                              @PathParam("namespace")
                                                              java.lang.String namespace)
      • getFunctionInstanceStatus

        @GET
        @Produces("application/json")
        @Path("/{tenant}/{namespace}/{functionName}/{instanceId}/status")
        public org.apache.pulsar.common.policies.data.FunctionStatus.FunctionInstanceStatus.FunctionInstanceStatusData getFunctionInstanceStatus​(@PathParam("tenant")
                                                                                                                                                 java.lang.String tenant,
                                                                                                                                                 @PathParam("namespace")
                                                                                                                                                 java.lang.String namespace,
                                                                                                                                                 @PathParam("functionName")
                                                                                                                                                 java.lang.String functionName,
                                                                                                                                                 @PathParam("instanceId")
                                                                                                                                                 java.lang.String instanceId)
                                                                                                                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • getFunctionStatus

        @GET
        @Produces("application/json")
        @Path("/{tenant}/{namespace}/{functionName}/status")
        public org.apache.pulsar.common.policies.data.FunctionStatus getFunctionStatus​(@PathParam("tenant")
                                                                                       java.lang.String tenant,
                                                                                       @PathParam("namespace")
                                                                                       java.lang.String namespace,
                                                                                       @PathParam("functionName")
                                                                                       java.lang.String functionName)
                                                                                throws java.io.IOException
        Throws:
        java.io.IOException
      • getFunctionStats

        @GET
        @Produces("application/json")
        @Path("/{tenant}/{namespace}/{functionName}/stats")
        public org.apache.pulsar.common.policies.data.FunctionStatsImpl getFunctionStats​(@PathParam("tenant")
                                                                                         java.lang.String tenant,
                                                                                         @PathParam("namespace")
                                                                                         java.lang.String namespace,
                                                                                         @PathParam("functionName")
                                                                                         java.lang.String functionName)
                                                                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • getFunctionInstanceStats

        @GET
        @Produces("application/json")
        @Path("/{tenant}/{namespace}/{functionName}/{instanceId}/stats")
        public org.apache.pulsar.common.policies.data.FunctionInstanceStatsDataImpl getFunctionInstanceStats​(@PathParam("tenant")
                                                                                                             java.lang.String tenant,
                                                                                                             @PathParam("namespace")
                                                                                                             java.lang.String namespace,
                                                                                                             @PathParam("functionName")
                                                                                                             java.lang.String functionName,
                                                                                                             @PathParam("instanceId")
                                                                                                             java.lang.String instanceId)
                                                                                                      throws java.io.IOException
        Throws:
        java.io.IOException
      • triggerFunction

        @POST
        @Path("/{tenant}/{namespace}/{functionName}/trigger")
        @Consumes("multipart/form-data")
        public java.lang.String triggerFunction​(@PathParam("tenant")
                                                java.lang.String tenant,
                                                @PathParam("namespace")
                                                java.lang.String namespace,
                                                @PathParam("functionName")
                                                java.lang.String functionName,
                                                java.lang.String input,
                                                java.io.InputStream uploadedInputStream,
                                                java.lang.String topic)
      • restartFunction

        @POST
        @Path("/{tenant}/{namespace}/{functionName}/{instanceId}/restart")
        @Consumes("application/json")
        public void restartFunction​(@PathParam("tenant")
                                    java.lang.String tenant,
                                    @PathParam("namespace")
                                    java.lang.String namespace,
                                    @PathParam("functionName")
                                    java.lang.String functionName,
                                    @PathParam("instanceId")
                                    java.lang.String instanceId)
      • restartFunction

        @POST
        @Path("/{tenant}/{namespace}/{functionName}/restart")
        @Consumes("application/json")
        public void restartFunction​(@PathParam("tenant")
                                    java.lang.String tenant,
                                    @PathParam("namespace")
                                    java.lang.String namespace,
                                    @PathParam("functionName")
                                    java.lang.String functionName)
      • stopFunction

        @POST
        @Path("/{tenant}/{namespace}/{functionName}/{instanceId}/stop")
        @Consumes("application/json")
        public void stopFunction​(@PathParam("tenant")
                                 java.lang.String tenant,
                                 @PathParam("namespace")
                                 java.lang.String namespace,
                                 @PathParam("functionName")
                                 java.lang.String functionName,
                                 @PathParam("instanceId")
                                 java.lang.String instanceId)
      • stopFunction

        @POST
        @Path("/{tenant}/{namespace}/{functionName}/stop")
        @Consumes("application/json")
        public void stopFunction​(@PathParam("tenant")
                                 java.lang.String tenant,
                                 @PathParam("namespace")
                                 java.lang.String namespace,
                                 @PathParam("functionName")
                                 java.lang.String functionName)
      • startFunction

        @POST
        @Path("/{tenant}/{namespace}/{functionName}/{instanceId}/start")
        @Consumes("application/json")
        public void startFunction​(@PathParam("tenant")
                                  java.lang.String tenant,
                                  @PathParam("namespace")
                                  java.lang.String namespace,
                                  @PathParam("functionName")
                                  java.lang.String functionName,
                                  @PathParam("instanceId")
                                  java.lang.String instanceId)
      • startFunction

        @POST
        @Path("/{tenant}/{namespace}/{functionName}/start")
        @Consumes("application/json")
        public void startFunction​(@PathParam("tenant")
                                  java.lang.String tenant,
                                  @PathParam("namespace")
                                  java.lang.String namespace,
                                  @PathParam("functionName")
                                  java.lang.String functionName)
      • uploadFunction

        @POST
        @Path("/upload")
        @Consumes("multipart/form-data")
        public void uploadFunction​(java.io.InputStream uploadedInputStream,
                                   java.lang.String path)
      • downloadFunction

        @GET
        @Path("/download")
        public javax.ws.rs.core.StreamingOutput downloadFunction​(@QueryParam("path")
                                                                 java.lang.String path)
      • downloadFunction

        @GET
        @Path("/{tenant}/{namespace}/{functionName}/download")
        public javax.ws.rs.core.StreamingOutput downloadFunction​(@PathParam("tenant")
                                                                 java.lang.String tenant,
                                                                 @PathParam("namespace")
                                                                 java.lang.String namespace,
                                                                 @PathParam("functionName")
                                                                 java.lang.String functionName)
      • getConnectorsList

        @GET
        @Path("/connectors")
        @Deprecated
        public java.util.List<org.apache.pulsar.common.io.ConnectorDefinition> getConnectorsList()
                                                                                          throws java.io.IOException
        Deprecated.
        Throws:
        java.io.IOException
      • getFunctionState

        @GET
        @Path("/{tenant}/{namespace}/{functionName}/state/{key}")
        public org.apache.pulsar.common.functions.FunctionState getFunctionState​(@PathParam("tenant")
                                                                                 java.lang.String tenant,
                                                                                 @PathParam("namespace")
                                                                                 java.lang.String namespace,
                                                                                 @PathParam("functionName")
                                                                                 java.lang.String functionName,
                                                                                 @PathParam("key")
                                                                                 java.lang.String key)
                                                                          throws java.io.IOException
        Throws:
        java.io.IOException
      • putFunctionState

        @POST
        @Path("/{tenant}/{namespace}/{functionName}/state/{key}")
        @Consumes("multipart/form-data")
        public void putFunctionState​(@PathParam("tenant")
                                     java.lang.String tenant,
                                     @PathParam("namespace")
                                     java.lang.String namespace,
                                     @PathParam("functionName")
                                     java.lang.String functionName,
                                     @PathParam("key")
                                     java.lang.String key,
                                     org.apache.pulsar.common.functions.FunctionState stateJson)
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • updateFunctionOnWorkerLeader

        @PUT
        @Path("/leader/{tenant}/{namespace}/{functionName}")
        @Consumes("multipart/form-data")
        public void updateFunctionOnWorkerLeader​(@PathParam("tenant")
                                                 java.lang.String tenant,
                                                 @PathParam("namespace")
                                                 java.lang.String namespace,
                                                 @PathParam("functionName")
                                                 java.lang.String functionName,
                                                 java.io.InputStream uploadedInputStream,
                                                 boolean delete)