github.com/cobalt77/jfrog-client-go@v0.14.5/bintray/services/versions/utils.go (about)

     1  package versions
     2  
     3  import (
     4  	"errors"
     5  	"github.com/cobalt77/jfrog-client-go/utils/errorutils"
     6  	"strings"
     7  )
     8  
     9  func CreatePath(versionStr string) (*Path, error) {
    10  	parts := strings.Split(versionStr, "/")
    11  	size := len(parts)
    12  	if size < 1 || size > 4 {
    13  		err := errorutils.CheckError(errors.New("Unexpected format for argument: " + versionStr))
    14  		if err != nil {
    15  			return nil, err
    16  		}
    17  	}
    18  	var subject, repo, pkg, version string
    19  	if size >= 2 {
    20  		subject = parts[0]
    21  		repo = parts[1]
    22  	}
    23  	if size >= 3 {
    24  		pkg = parts[2]
    25  	}
    26  	if size == 4 {
    27  		version = parts[3]
    28  	}
    29  	return &Path{
    30  		Subject: subject,
    31  		Repo:    repo,
    32  		Package: pkg,
    33  		Version: version}, nil
    34  }