github.com/axw/juju@v0.0.0-20161005053422-4bd6544d08d4/state/bakerystorage.go (about)

     1  // Copyright 2016 Canonical Ltd.
     2  // Licensed under the AGPLv3, see LICENCE file for details.
     3  
     4  package state
     5  
     6  import (
     7  	"github.com/juju/juju/mongo"
     8  	"github.com/juju/juju/state/bakerystorage"
     9  )
    10  
    11  // NewBakeryStorage returns a new bakery.Storage. By default, items
    12  // added to the store are retained until deleted explicitly. The
    13  // store's ExpireAt method can be called to derive a new store that
    14  // will expire items at the specified time.
    15  func (st *State) NewBakeryStorage() (bakerystorage.ExpirableStorage, error) {
    16  	return bakerystorage.New(bakerystorage.Config{
    17  		GetCollection: func() (mongo.Collection, func()) {
    18  			return st.getCollection(bakeryStorageItemsC)
    19  		},
    20  	})
    21  }