vorteil/direktiv

View on GitHub
pkg/model/state-error.go

Summary

Maintainability
A
0 mins
Test Coverage
package model

import (
    "errors"
)

type ErrorState struct {
    StateCommon `yaml:",inline"`
    Error       string      `yaml:"error"`
    Message     string      `yaml:"message"`
    Args        []string    `yaml:"args,omitempty"`
    Transform   interface{} `yaml:"transform,omitempty"`
    Transition  string      `yaml:"transition,omitempty"`
}

func (o *ErrorState) GetID() string {
    return o.ID
}

func (o *ErrorState) getTransitions() map[string]string {
    transitions := make(map[string]string)
    if o.Transition != "" {
        transitions["transition"] = o.Transition
    }

    return transitions
}

func (o *ErrorState) GetTransitions() []string {
    transitions := make([]string, 0)
    if o.Transition != "" {
        transitions = append(transitions, o.Transition)
    }

    return transitions
}

func (o *ErrorState) GetArgs() []string {
    if o.Args == nil {
        return make([]string, 0)
    }

    return o.Args
}

func (o *ErrorState) Validate() error {
    if err := o.commonValidate(); err != nil {
        return err
    }

    if o.Error == "" {
        return errors.New("error required")
    }

    if o.Message == "" {
        return errors.New("message required")
    }

    return nil
}