github.com/makyo/juju@v0.0.0-20160425123129-2608902037e9/resource/resourceadapters/cmd.go (about)

     1  // Copyright 2016 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package resourceadapters
     5  
     6  import (
     7  	"io"
     8  
     9  	jujucmd "github.com/juju/cmd"
    10  	"github.com/juju/errors"
    11  
    12  	"github.com/juju/juju/charmstore"
    13  	"github.com/juju/juju/cmd/juju/charmcmd"
    14  	"github.com/juju/juju/resource/cmd"
    15  )
    16  
    17  // CharmCmdBase is an adapter for charmcmd.CommandBase.
    18  type CharmCmdBase struct {
    19  	*charmcmd.CommandBase
    20  }
    21  
    22  // Connect implements cmd.CommandBase.
    23  func (c *CharmCmdBase) Connect(ctx *jujucmd.Context) (cmd.CharmResourceLister, error) {
    24  	client, closer, err := c.CommandBase.Connect(ctx)
    25  	if err != nil {
    26  		return nil, errors.Trace(err)
    27  	}
    28  	return struct {
    29  		charmstore.Client
    30  		io.Closer
    31  	}{client, closer}, nil
    32  }