~rogpeppe/juju-core/438-local-instance-Addresses

« back to all changes in this revision

Viewing changes to charm/charm.go

  • Committer: Gustavo Niemeyer
  • Date: 2011-09-24 15:21:23 UTC
  • Revision ID: gustavo@niemeyer.net-20110924152123-aytdvquwlbmnv3tj
Applied the juju/charm renaming to the Go code base.

Dropped need for the silly "header" field in metadata.yaml.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
package formula
 
1
package charm
2
2
 
3
3
import (
4
4
        "fmt"
7
7
        "strings"
8
8
)
9
9
 
10
 
// The Formula interface is implemented by any type that
11
 
// may be handled as a formula.
12
 
type Formula interface {
 
10
// The Charm interface is implemented by any type that
 
11
// may be handled as a charm.
 
12
type Charm interface {
13
13
        Meta() *Meta
14
14
        Config() *Config
15
15
}
16
16
 
17
 
// ParseId splits a formula identifier into its constituting parts.
 
17
// ParseId splits a charm identifier into its constituting parts.
18
18
func ParseId(id string) (namespace string, name string, rev int, err os.Error) {
19
19
        colon := strings.Index(id, ":")
20
20
        if colon == -1 {
21
 
                err = errorf("Missing formula namespace: %q", id)
 
21
                err = errorf("Missing charm namespace: %q", id)
22
22
                return
23
23
        }
24
24
        dash := strings.LastIndex(id, "-")
26
26
                rev, err = strconv.Atoi(id[dash+1:])
27
27
        }
28
28
        if dash == -1 || err != nil {
29
 
                err = errorf("Missing formula revision: %q", id)
 
29
                err = errorf("Missing charm revision: %q", id)
30
30
                return
31
31
        }
32
32
        namespace = id[:colon]