mongo

package
v1.28.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 30, 2021 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Mongo

type Mongo struct {
	CodeListURL string
	Collection  string
	Database    string
	DatasetURL  string
	Session     *mgo.Session
	URI         string
	// contains filtered or unexported fields
}

Mongo represents a simplistic MongoDB configuration.

func (*Mongo) AddDimensionToInstance

func (m *Mongo) AddDimensionToInstance(opt *models.CachedDimensionOption) error

AddDimensionToInstance to the dimension collection

func (*Mongo) AddEventToInstance

func (m *Mongo) AddEventToInstance(instanceID string, event *models.Event) error

AddEventToInstance to the instance collection

func (*Mongo) AddInstance

func (m *Mongo) AddInstance(instance *models.Instance) (*models.Instance, error)

AddInstance to the instance collection

func (*Mongo) CheckDatasetExists

func (m *Mongo) CheckDatasetExists(id, state string) error

CheckDatasetExists checks that the dataset exists

func (*Mongo) CheckEditionExists

func (m *Mongo) CheckEditionExists(id, editionID, state string) error

CheckEditionExists checks that the edition of a dataset exists

func (*Mongo) Checker added in v1.22.0

func (m *Mongo) Checker(ctx context.Context, state *healthcheck.CheckState) error

Checker is called by the healthcheck library to check the health state of this mongoDB instance

func (*Mongo) Close added in v1.22.0

func (m *Mongo) Close(ctx context.Context) error

Close represents mongo session closing within the context deadline

func (*Mongo) DeleteDataset

func (m *Mongo) DeleteDataset(id string) (err error)

DeleteDataset deletes an existing dataset document

func (*Mongo) DeleteEdition

func (m *Mongo) DeleteEdition(id string) (err error)

DeleteEdition deletes an existing edition document

func (*Mongo) GetDataset

func (m *Mongo) GetDataset(id string) (*models.DatasetUpdate, error)

GetDataset retrieves a dataset document

func (*Mongo) GetDatasets

func (m *Mongo) GetDatasets(ctx context.Context, offset, limit int, authorised bool) ([]*models.DatasetUpdate, int, error)

GetDatasets retrieves all dataset documents

func (*Mongo) GetDimensionOptions

func (m *Mongo) GetDimensionOptions(version *models.Version, dimension string, offset, limit int) (*models.DimensionOptionResults, error)

GetDimensionOptions returns dimension options for a dimensions within a dataset, according to the provided limit and offest. Offset and limit need to be positive or zero. Zero limit is equivalent to no limit (all items starting at offset will be returned)

func (*Mongo) GetDimensionOptionsFromIDs added in v1.25.0

func (m *Mongo) GetDimensionOptionsFromIDs(version *models.Version, dimension string, IDs []string) (*models.DimensionOptionResults, error)

GetDimensionOptionsFromIDs returns dimension options for a dimension within a dataset, whose IDs match the provided list of IDs

func (*Mongo) GetDimensions

func (m *Mongo) GetDimensions(datasetID, versionID string) ([]bson.M, error)

GetDimensions returns a list of all dimensions from a dataset

func (*Mongo) GetDimensionsFromInstance

func (m *Mongo) GetDimensionsFromInstance(id string) (*models.DimensionNodeResults, error)

GetDimensionsFromInstance returns a list of dimensions and their options for an instance resource

func (*Mongo) GetEdition

func (m *Mongo) GetEdition(id, editionID, state string) (*models.EditionUpdate, error)

GetEdition retrieves an edition document for a dataset

func (*Mongo) GetEditions

func (m *Mongo) GetEditions(ctx context.Context, id, state string, offset, limit int, authorised bool) ([]*models.EditionUpdate, int, error)

GetEditions retrieves all edition documents for a dataset

func (*Mongo) GetInstance

func (m *Mongo) GetInstance(ID string) (*models.Instance, error)

GetInstance returns a single instance from an ID

func (*Mongo) GetInstances

func (m *Mongo) GetInstances(ctx context.Context, states []string, datasets []string, offset, limit int) (*models.InstanceResults, error)

GetInstances from a mongo collection

func (*Mongo) GetNextVersion

func (m *Mongo) GetNextVersion(datasetID, edition string) (int, error)

GetNextVersion retrieves the latest version for an edition of a dataset

func (*Mongo) GetUniqueDimensionAndOptions

func (m *Mongo) GetUniqueDimensionAndOptions(id, dimension string) (*models.DimensionValues, error)

GetUniqueDimensionAndOptions returns a list of dimension options for an instance resource

func (*Mongo) GetVersion

func (m *Mongo) GetVersion(id, editionID, versionID, state string) (*models.Version, error)

GetVersion retrieves a version document for a dataset edition

func (*Mongo) GetVersions

func (m *Mongo) GetVersions(ctx context.Context, datasetID, editionID, state string, offset, limit int) (*models.VersionResults, error)

GetVersions retrieves all version documents for a dataset edition

func (*Mongo) Init

func (m *Mongo) Init() (err error)

Init creates a new mgo.Session with a strong consistency and a write mode of "majortiy"; and initialises the mongo health client.

func (*Mongo) Ping

func (m *Mongo) Ping(ctx context.Context) (time.Time, error)

Ping the mongodb database

func (*Mongo) UpdateBuildHierarchyTaskState

func (m *Mongo) UpdateBuildHierarchyTaskState(id, dimension, state string) (err error)

UpdateBuildHierarchyTaskState updates the state of a build hierarchy task.

func (*Mongo) UpdateBuildSearchTaskState

func (m *Mongo) UpdateBuildSearchTaskState(id, dimension, state string) (err error)

UpdateBuildSearchTaskState updates the state of a build search task.

func (*Mongo) UpdateDataset

func (m *Mongo) UpdateDataset(ctx context.Context, id string, dataset *models.Dataset, currentState string) (err error)

UpdateDataset updates an existing dataset document

func (*Mongo) UpdateDatasetWithAssociation

func (m *Mongo) UpdateDatasetWithAssociation(id, state string, version *models.Version) (err error)

UpdateDatasetWithAssociation updates an existing dataset document with collection data

func (*Mongo) UpdateDimensionNodeIDAndOrder added in v1.28.0

func (m *Mongo) UpdateDimensionNodeIDAndOrder(dimension *models.DimensionOption) error

UpdateDimensionNodeIDAndOrder to cache the id and order (optional) for other import processes

func (*Mongo) UpdateImportObservationsTaskState

func (m *Mongo) UpdateImportObservationsTaskState(id string, state string) error

UpdateImportObservationsTaskState to the given state.

func (*Mongo) UpdateInstance

func (m *Mongo) UpdateInstance(ctx context.Context, instanceID string, instance *models.Instance) error

UpdateInstance with new properties

func (*Mongo) UpdateObservationInserted

func (m *Mongo) UpdateObservationInserted(id string, observationInserted int64) error

UpdateObservationInserted by incrementing the stored value

func (*Mongo) UpdateVersion

func (m *Mongo) UpdateVersion(id string, version *models.Version) (err error)

UpdateVersion updates an existing version document

func (*Mongo) UpsertContact

func (m *Mongo) UpsertContact(id string, update interface{}) (err error)

UpsertContact adds or overides an existing contact document

func (*Mongo) UpsertDataset

func (m *Mongo) UpsertDataset(id string, datasetDoc *models.DatasetUpdate) (err error)

UpsertDataset adds or overides an existing dataset document

func (*Mongo) UpsertEdition

func (m *Mongo) UpsertEdition(datasetID, edition string, editionDoc *models.EditionUpdate) (err error)

UpsertEdition adds or overides an existing edition document

func (*Mongo) UpsertVersion

func (m *Mongo) UpsertVersion(id string, version *models.Version) (err error)

UpsertVersion adds or overrides an existing version document

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL