github.com/axw/juju@v0.0.0-20161005053422-4bd6544d08d4/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 }