Class VariableService

java.lang.Object
ai.nervemind.app.service.VariableService
All Implemented Interfaces:
ai.nervemind.common.service.VariableServiceInterface

@Service @Transactional public class VariableService extends Object implements ai.nervemind.common.service.VariableServiceInterface
Service for managing workflow variables.
  • Constructor Details

    • VariableService

      public VariableService(VariableRepository variableRepository)
      Creates a new variable service.
      Parameters:
      variableRepository - the repository for variable persistence
  • Method Details

    • findAll

      public List<ai.nervemind.common.dto.VariableDTO> findAll()
      Specified by:
      findAll in interface ai.nervemind.common.service.VariableServiceInterface
    • findGlobalVariables

      public List<ai.nervemind.common.dto.VariableDTO> findGlobalVariables()
      Specified by:
      findGlobalVariables in interface ai.nervemind.common.service.VariableServiceInterface
    • findByWorkflowId

      public List<ai.nervemind.common.dto.VariableDTO> findByWorkflowId(Long workflowId)
      Specified by:
      findByWorkflowId in interface ai.nervemind.common.service.VariableServiceInterface
    • findById

      public Optional<ai.nervemind.common.dto.VariableDTO> findById(Long id)
      Specified by:
      findById in interface ai.nervemind.common.service.VariableServiceInterface
    • findByNameAndScope

      public Optional<ai.nervemind.common.dto.VariableDTO> findByNameAndScope(String name, ai.nervemind.common.dto.VariableDTO.VariableScope scope, Long workflowId)
      Specified by:
      findByNameAndScope in interface ai.nervemind.common.service.VariableServiceInterface
    • create

      public ai.nervemind.common.dto.VariableDTO create(ai.nervemind.common.dto.VariableDTO variable)
      Specified by:
      create in interface ai.nervemind.common.service.VariableServiceInterface
    • update

      public ai.nervemind.common.dto.VariableDTO update(Long id, ai.nervemind.common.dto.VariableDTO variable)
      Specified by:
      update in interface ai.nervemind.common.service.VariableServiceInterface
    • delete

      public void delete(Long id)
      Specified by:
      delete in interface ai.nervemind.common.service.VariableServiceInterface
    • getResolvedValue

      public String getResolvedValue(Long id)
      Specified by:
      getResolvedValue in interface ai.nervemind.common.service.VariableServiceInterface
    • getVariablesForWorkflow

      public Map<String,Object> getVariablesForWorkflow(Long workflowId)
      Specified by:
      getVariablesForWorkflow in interface ai.nervemind.common.service.VariableServiceInterface
    • resolveVariables

      public String resolveVariables(String input, Long workflowId)
      Specified by:
      resolveVariables in interface ai.nervemind.common.service.VariableServiceInterface
    • isValidVariableName

      public boolean isValidVariableName(String name)
      Specified by:
      isValidVariableName in interface ai.nervemind.common.service.VariableServiceInterface