Class FunctionInitializer

  • All Implemented Interfaces:
    io.micronaut.context.ApplicationContextProvider, java.io.Closeable, java.lang.AutoCloseable

    public class FunctionInitializer
    extends AbstractExecutor
    A super class that can be used to initialize a function.
    Since:
    1.0
    • Field Detail

      • closeContext

        protected final boolean closeContext
    • Constructor Detail

      • FunctionInitializer

        public FunctionInitializer()
        Constructor.
      • FunctionInitializer

        protected FunctionInitializer​(io.micronaut.context.ApplicationContext applicationContext)
        Start a function for an existing ApplicationContext.
        Parameters:
        applicationContext - The application context
      • FunctionInitializer

        protected FunctionInitializer​(io.micronaut.context.ApplicationContext applicationContext,
                                      boolean inject)
        Start a function for an existing ApplicationContext.
        Parameters:
        applicationContext - The application context
        inject - inject this into the application flag
    • Method Detail

      • close

        @Internal
        public void close()
                   throws java.io.IOException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class AbstractExecutor
        Throws:
        java.io.IOException
      • run

        public void run​(java.lang.String[] args,
                        java.util.function.Function<FunctionInitializer.ParseContext,​?> supplier)
                 throws java.io.IOException
        This method is designed to be called when using the FunctionInitializer from a static Application main method.
        Parameters:
        args - The arguments passed to main
        supplier - The function that executes this function
        Throws:
        java.io.IOException - If an error occurs
      • startThis

        protected void startThis​(io.micronaut.context.ApplicationContext applicationContext)
        Start this environment.
        Parameters:
        applicationContext - The application context
      • injectThis

        protected void injectThis​(io.micronaut.context.ApplicationContext applicationContext)
        Injects this instance.
        Parameters:
        applicationContext - The ApplicationContext