Class NoneProvider

java.lang.Object
org.machanism.machai.ai.provider.impl.NoneProvider
All Implemented Interfaces:
Genai

public class NoneProvider extends Object implements Genai
No-op implementation of Genai that performs no AI processing.

Every method is a deliberate no-op: prompts, instructions, tools, prompts/resources registration, project directory, error handling, and enabled-tool configuration are all accepted and silently ignored, and perform() always returns null.

This provider is typically used as a placeholder or "disabled" AI provider — for example, to run Ghostwriter without configuring a real GenAI provider/model, to skip AI calls during testing, or as a safe default when no provider has been selected.

Every method logs an INFO-level message identifying the call, so callers can verify (e.g., in logs) that this no-op provider is active.

Since:
1.3.0
  • Field Details

    • logger

      private static final org.slf4j.Logger logger
      Logger used when diagnostic logging is enabled with the log model.
    • loggingOn

      private boolean loggingOn
      Whether provider calls should be logged at INFO level.
  • Constructor Details

    • NoneProvider

      public NoneProvider()
  • Method Details

    • init

      public void init(String model, Configurator conf)
      Does nothing; the given model and configurator are discarded.
      Specified by:
      init in interface Genai
      Parameters:
      model - model/provider identifier; ignored
      conf - configuration source; ignored
    • prompt

      public void prompt(String text)
      Does nothing; the given prompt text is discarded.
      Specified by:
      prompt in interface Genai
      Parameters:
      text - prompt text; ignored
    • clear

      public void clear()
      Clears the accumulated prompt buffer.
      Specified by:
      clear in interface Genai
    • instructions

      public void instructions(String instructions)
      Does nothing; the given instructions are discarded.
      Specified by:
      instructions in interface Genai
      Parameters:
      instructions - system-level instructions; ignored
    • perform

      public String perform()
      Performs no AI processing.
      Specified by:
      perform in interface Genai
      Returns:
      always null
    • addTools

      public void addTools(FunctionTools tools)
      Does nothing; no function tools are registered.
      Specified by:
      addTools in interface Genai
      Parameters:
      tools - function tools to register; ignored
    • addPrompts

      public void addPrompts(FunctionTools tools)
      Does nothing; no prompt tools are registered.
      Specified by:
      addPrompts in interface Genai
      Parameters:
      tools - function tools to register; ignored
    • addResources

      public void addResources(FunctionTools tools)
      Does nothing; no resource tools are registered.
      Specified by:
      addResources in interface Genai
      Parameters:
      tools - function tools to register; ignored
    • setProjectDir

      public void setProjectDir(File projectDir)
      Does nothing; the given project directory is discarded.
      Specified by:
      setProjectDir in interface Genai
      Parameters:
      projectDir - project root directory; ignored
    • setErrorHandling

      public void setErrorHandling(boolean errorHandling)
      Does nothing; the given error-handling flag is discarded.
      Specified by:
      setErrorHandling in interface Genai
      Parameters:
      errorHandling - whether error handling should be enabled; ignored
    • setEnabledTools

      public void setEnabledTools(String[] tools)
      Does nothing; the given enabled-tools list is discarded.
      Specified by:
      setEnabledTools in interface Genai
      Parameters:
      tools - names of tools to enable; ignored