diff --git a/models/resources/resource.go b/models/resources/resource.go index ecdafb8..f2cc617 100644 --- a/models/resources/resource.go +++ b/models/resources/resource.go @@ -11,10 +11,19 @@ import ( // http://www.inanzzz.com/index.php/post/wqbs/a-basic-usage-of-int-and-string-enum-types-in-golang type AbstractResource struct { utils.AbstractObject - ShortDescription string `json:"short_description,omitempty" bson:"short_description,omitempty" validate:"required"` - Description string `json:"description,omitempty" bson:"description,omitempty"` - Logo string `json:"logo,omitempty" bson:"logo,omitempty" validate:"required"` - Owner string `json:"owner,omitempty" bson:"owner,omitempty" validate:"required"` - OwnerLogo string `json:"owner_logo,omitempty" bson:"owner_logo,omitempty"` - SourceUrl string `json:"source_url,omitempty" bson:"source_url,omitempty" validate:"required"` + ShortDescription string `json:"short_description,omitempty" bson:"short_description,omitempty" validate:"required"` + Description string `json:"description,omitempty" bson:"description,omitempty"` + Logo string `json:"logo,omitempty" bson:"logo,omitempty" validate:"required"` + Owner string `json:"owner,omitempty" bson:"owner,omitempty" validate:"required"` + OwnerLogo string `json:"owner_logo,omitempty" bson:"owner_logo,omitempty"` + SourceUrl string `json:"source_url,omitempty" bson:"source_url,omitempty" validate:"required"` + Proxy *ResourceProxy `json:"proxy,omitempty" bson:"proxy,omitempty"` +} + +type ResourceProxy struct { + Host string `json:"host,omitempty" bson:"host,omitempty"` + Port int `json:"port,omitempty" bson:"port,omitempty"` + Command string `json:"command,omitempty" bson:"command,omitempty"` + Args []string `json:"args,omitempty" bson:"args,omitempty"` + EnvArgs map[string]interface{} `json:"env_args,omitempty" bson:"env_args,omitempty"` }