Versions in this module Expand all Collapse all v1 v1.0.0 Jan 30, 2018 Changes in this version + var ErrNotFound = mgo.ErrNotFound + type Account struct + func NewAccount(session Session) Account + func (a Account) Collection() Collection + func (a Account) ConfigureCollection() error + func (a Account) Create(account auth.Account) error + func (a Account) Fetch(id bson.ObjectId) (*auth.Account, error) + func (a Account) FindByEmail(email string) (*auth.Account, error) + func (a Account) FindByUsername(name string) (*auth.Account, error) + type Collection interface + Count func() (n int, err error) + EnsureIndex func(index mgo.Index) error + Find func(query interface{}) *mgo.Query + FindId func(id interface{}) *mgo.Query + Insert func(docs ...interface{}) error + Remove func(selector interface{}) error + RemoveAll func(selector interface{}) (info *mgo.ChangeInfo, err error) + Update func(selector interface{}, update interface{}) error + Upsert func(selector interface{}, update interface{}) (info *mgo.ChangeInfo, err error) + type DAO interface + Collection func() Collection + ConfigureCollection func() error + type Database interface + C func(name string) Collection + type Project struct + func NewProject(session Session) Project + func (p Project) Collection() Collection + func (p Project) ConfigureCollection() error + func (p Project) Create(project project.Project) error + func (p Project) CreateVersionFrom(existingVersionID VersionID) (project.Version, error) + func (p Project) CreateVersionFromLatest(projectID ProjectID) (project.Version, error) + func (p Project) Delete(projectID ProjectID) error + func (p Project) EnsureSingleEditableVersion(projectID ProjectID) error + func (p Project) Fetch(projectID ProjectID) (project.Project, error) + func (p Project) FetchVersion(versionID VersionID) (project.Version, error) + func (p Project) FetchVersionStatus(versionID VersionID) (project.VersionStatus, error) + func (p Project) FindAllByAccountID(accountID bson.ObjectId) (project.List, error) + func (p Project) SetVersionStatus(versionID VersionID, newStatus project.VersionStatus) error + func (p Project) Update(project project.Project) error + func (p Project) UpdateVersion(versionID VersionID, newSettings project.Settings) error + func (p Project) UpdateVersionTimestamp(versionID VersionID) error + type ProjectID struct + Account bson.ObjectId + Project bson.ObjectId + type Result struct + func NewResult(session Session) Result + func (s Result) Collection() Collection + func (s Result) ConfigureCollection() error + func (s Result) Create(result result.Result) (bson.ObjectId, error) + func (s Result) Delete(versionID VersionID) error + func (s Result) Fetch(versionID VersionID) (result.Result, error) + func (s Result) Update(versionID VersionID, result result.Result) error + type Session interface + Account func() Account + Close func() + Configure func() error + Copy func() Session + DB func() Database + Project func() Project + Result func() Result + Setup func() Setup + type Setup struct + func NewSetup(session Session) Setup + func (s Setup) Collection() Collection + func (s Setup) ConfigureCollection() error + func (s Setup) Create(setup setup.Setup) (bson.ObjectId, error) + func (s Setup) Delete(versionID VersionID) error + func (s Setup) Fetch(versionID VersionID) (setup.Setup, error) + func (s Setup) Update(versionID VersionID, setup setup.Setup) error + type VersionID struct + Account bson.ObjectId + Project bson.ObjectId + Version project.VersionID