Skip to content

Commit

Permalink
Base if-condition
Browse files Browse the repository at this point in the history
  • Loading branch information
MaartendeKruijf committed May 1, 2024
1 parent 41d5a6d commit db99c7e
Showing 1 changed file with 42 additions and 0 deletions.
42 changes: 42 additions & 0 deletions internal/executors/if_condition/if_condition.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
package ifcondition

import (
"errors"
"reflect"
"soarca/internal/capability"
"soarca/logger"
"soarca/models/cacao"
"soarca/models/execution"
)

var component = reflect.TypeOf(Executor{}).PkgPath()
var log *logger.Log

func init() {
log = logger.Logger(component, logger.Info, "", logger.Json)
}

func New(capabilities map[string]capability.ICapability) *Executor {
var instance = Executor{}
instance.capabilities = capabilities
return &instance
}

type IExecuter interface {
Execute(metadata execution.Metadata,
step cacao.Step) (string, error)
}

type Executor struct {
capabilities map[string]capability.ICapability
}

func (executor *Executor) Execute(meta execution.Metadata, step cacao.Step) (string, error) {

if step.Type != cacao.StepTypeIfCondition {
err := errors.New("the provided step type is not compatible with this executor")
log.Error(err)
return step.OnFailure, err
}
return "", nil
}

0 comments on commit db99c7e

Please sign in to comment.