github.com/gofunct/common@v0.0.0-20190131174352-fd058c7fbf22/pkg/strings/strings.go (about)

     1  package strings
     2  
     3  import (
     4  	"path"
     5  	"strings"
     6  )
     7  
     8  // SplitQualifiedName Splits a fully qualified name and returns its namespace and name.
     9  // Assumes that the input 'str' has been validated.
    10  func SplitQualifiedName(str string) (string, string) {
    11  	parts := strings.Split(str, "/")
    12  	if len(parts) < 2 {
    13  		return "", str
    14  	}
    15  	return parts[0], parts[1]
    16  }
    17  
    18  // JoinQualifiedName joins 'namespace' and 'name' and returns a fully qualified name
    19  // Assumes that the input is valid.
    20  func JoinQualifiedName(namespace, name string) string {
    21  	return path.Join(namespace, name)
    22  }
    23  
    24  // ShortenString returns the first N slice of a string.
    25  func ShortenString(str string, n int) string {
    26  	if len(str) <= n {
    27  		return str
    28  	}
    29  	return str[:n]
    30  }