github.com/wallyworld/juju@v0.0.0-20161013125918-6cf1bc9d917a/apiserver/charms/state.go (about)

     1  // Copyright 2015 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package charms
     5  
     6  import (
     7  	"gopkg.in/juju/charm.v6-unstable"
     8  	names "gopkg.in/juju/names.v2"
     9  
    10  	"github.com/juju/juju/state"
    11  )
    12  
    13  type charmsAccess interface {
    14  	Charm(curl *charm.URL) (*state.Charm, error)
    15  	AllCharms() ([]*state.Charm, error)
    16  	ModelTag() names.ModelTag
    17  }
    18  
    19  type stateShim struct {
    20  	state *state.State
    21  }
    22  
    23  func (s stateShim) Charm(curl *charm.URL) (*state.Charm, error) {
    24  	return s.state.Charm(curl)
    25  }
    26  
    27  func (s stateShim) AllCharms() ([]*state.Charm, error) {
    28  	return s.state.AllCharms()
    29  }
    30  
    31  func (s stateShim) ModelTag() names.ModelTag {
    32  	return s.state.ModelTag()
    33  }