github.com/torresashjian/cli@v0.10.1-0.20210916231452-89080fe7069c/util/flogo.go (about)

     1  package util
     2  
     3  import (
     4  	"encoding/json"
     5  )
     6  
     7  // ParseAppDescriptor parse the application descriptor
     8  func ParseAppDescriptor(appJson string) (*FlogoAppDescriptor, error) {
     9  	descriptor := &FlogoAppDescriptor{}
    10  
    11  	err := json.Unmarshal([]byte(appJson), descriptor)
    12  
    13  	if err != nil {
    14  		return nil, err
    15  	}
    16  
    17  	return descriptor, nil
    18  }
    19  
    20  // FlogoAppDescriptor is the descriptor for a Flogo application
    21  type FlogoAppDescriptor struct {
    22  	Name        string   `json:"name"`
    23  	Type        string   `json:"type"`
    24  	Version     string   `json:"version"`
    25  	Description string   `json:"description"`
    26  	AppModel    string   `json:"appModel,omitempty"`
    27  	Imports     []string `json:"imports"`
    28  
    29  	Triggers []*FlogoTriggerConfig `json:"triggers"`
    30  }
    31  
    32  type FlogoTriggerConfig struct {
    33  	Id   string `json:"id"`
    34  	Ref  string `json:"ref"`
    35  	Type string `json:"type"`
    36  }